# [solved] Проблема со сборкой qt-3.3.8-r4

## ITT_rus

В системе уже собрана четвертая версия, но при обновлении KDE требует однозначно поставить именно этот билд.

В конце сборки пишет такой текст (см ниже). Полный лог весит 433кб. постить его сюда наверное было бы не совсем правильно...

```

i686-pc-linux-gnu-g++ -fno-exceptions -o ../../../bin/uic .obj/release-shared-mt/main.o .obj/release-shared-mt/uic.o .obj/release-shared-mt/form.o .obj/release-shared-mt/object.o .obj/release-shared-mt/subclassing.o .obj/release-shared-mt/embed.o .obj/release-shared-mt/widgetdatabase.o .obj/release-shared-mt/domtool.o .obj/release-shared-mt/parser.o    -L/usr/lib/mysql -L/var/tmp/portage/x11-libs/qt-3.3.8-r4/work/qt-x11-free-3.3.8/lib -L/usr/X11R6/lib -lqt-mt -lmng -ljpeg -lpng -lz -lXi -lXrender -lXrandr -lXcursor -lXft -lfreetype -lfontconfig -lXext -lX11 -lm -lSM -lICE -ldl -lpthread

/usr/lib/gcc/i686-pc-linux-gnu/4.1.2/../../../../i686-pc-linux-gnu/bin/ld: warning: libexpat.so.0, needed by /usr/X11R6/lib/libfontconfig.so, not found (try using -rpath or -rpath-link)

/usr/X11R6/lib/libfontconfig.so: undefined reference to `XML_ErrorString'

/usr/X11R6/lib/libfontconfig.so: undefined reference to `XML_SetUserData'

/usr/X11R6/lib/libfontconfig.so: undefined reference to `XML_GetCurrentLineNumber'

/usr/X11R6/lib/libfontconfig.so: undefined reference to `XML_ParserFree'

/usr/X11R6/lib/libfontconfig.so: undefined reference to `XML_SetElementHandler'

/usr/X11R6/lib/libfontconfig.so: undefined reference to `XML_SetDoctypeDeclHandler'

/usr/X11R6/lib/libfontconfig.so: undefined reference to `XML_SetCharacterDataHandler'

/usr/X11R6/lib/libfontconfig.so: undefined reference to `XML_GetErrorCode'

/usr/X11R6/lib/libfontconfig.so: undefined reference to `XML_GetBuffer'

/usr/X11R6/lib/libfontconfig.so: undefined reference to `XML_ParserCreate'

/usr/X11R6/lib/libfontconfig.so: undefined reference to `XML_ParseBuffer'

collect2: выполнение ld завершилось с кодом возврата 1

make[3]: *** [../../../bin/uic] Ошибка 1

make[3]: Leaving directory `/var/tmp/portage/x11-libs/qt-3.3.8-r4/work/qt-x11-free-3.3.8/tools/designer/uic'

make[2]: *** [sub-uic] Ошибка 2

make[2]: Leaving directory `/var/tmp/portage/x11-libs/qt-3.3.8-r4/work/qt-x11-free-3.3.8/tools/designer'

make[1]: *** [sub-designer] Ошибка 2

make[1]: Leaving directory `/var/tmp/portage/x11-libs/qt-3.3.8-r4/work/qt-x11-free-3.3.8/tools'

make: *** [sub-tools] Ошибка 2

 [31;01m*[0m 

 [31;01m*[0m ERROR: x11-libs/qt-3.3.8-r4 failed.

 [31;01m*[0m Call stack:

 [31;01m*[0m   ebuild.sh, line 1654:   Called dyn_compile

 [31;01m*[0m   ebuild.sh, line 990:   Called qa_call 'src_compile'

 [31;01m*[0m   ebuild.sh, line 44:   Called src_compile

 [31;01m*[0m   qt-3.3.8-r4.ebuild, line 219:   Called die

 [31;01m*[0m 

 [31;01m*[0m (no error message)

 [31;01m*[0m If you need support, post the topmost build error, and the call stack if relevant.

 [31;01m*[0m A complete build log is located at '/var/tmp/portage/x11-libs/qt-3.3.8-r4/temp/build.log'.

 [31;01m*[0m 

```

Last edited by ITT_rus on Thu Oct 18, 2007 10:26 am; edited 2 times in total

----------

## smk

Гм. Вроде как по человечески пишет 

```
libexpat.so.0, needed
```

, которого у тебя нет видимо. 

Попробуй либо пересобрать либо символьную ссылку сделать.

----------

## ITT_rus

smk, пардон, но я в этом деле нуб нубом. поясните плз, запрошенный файл должен идти вместе с сорцами пакета либо я его должен сам где-то искать? если должен идти с сорцами, а его нет - это повод для багзилы?

----------

## ITT_rus

и к слову совершенно не въехал, какого лешего она пытается собрать третью версию QT когда в системе уже установлена четвертая...

----------

## smk

Нет, ӕта библиотека входит в другой пакет. Действуем так:

```
# equery belongs libexpat.so

[ Searching for file(s) libexpat.so in *... ]

dev-libs/expat-2.0.1 (/usr/lib/libexpat.so -> libexpat.so.1.5.2)
```

Соответственнопробуем его пересобрать. Если не помогает то делаем 

```
ln -s /usr/lib/libexpat.so /usr/lib/libexpat.so.0
```

Все должно работать  :Smile: 

Насчет qt: видимо какой то пакет имеет в зависимостях жесткую привязку именно к ӕтой версии qt. Если интересно кто, то делаем equery depends x11-libs/qt-3.3.8-r4 .

ЗЫ: Учись медитировать над логами, решает много проблем  :Smile: 

----------

## fank

to smk

 *Quote:*   

> ln -s /usr/lib/libexpat.so /usr/lib/libexpat.so.0

 

пожалуйста, не надо учить человека плохому...

надо учить хорошему

Здесь ответы на многие вопросы

----------

## ITT_rus

Все было сделано пдругому. был снесен и заново поставлен экспат. при установке была выдана рекомендация запустить какую-то хрень для ревизии состояния всех библиотек, хрень была запущена, что-то там пересобрала. после этого все заработало.

сложность была одна - понять, где что искать в логах.

----------

## smk

 *fank wrote:*   

> to smk
> 
>  *Quote:*   ln -s /usr/lib/libexpat.so /usr/lib/libexpat.so.0 
> 
> пожалуйста, не надо учить человека плохому...
> ...

 

А я исправлюсь,

И всем понравлюсь... (с) Саддам Хусейн, Саус парк   :Very Happy: 

----------

## Laitr Keiows

Решение сюда переехало:

https://forums.gentoo.org/viewtopic-t-601799.html

----------

