Страница 1 из 1

сборка qutim 0.3 под freebsd

Добавлено: 2012-05-21 11:23:52
Himik
Пытаюсь собрать кутим из гита по вики http://wiki.qutim.org/ru/building_from_git.
На этапе make появляется ошибка:

Код: Выделить всё

Linking CXX shared library libjabber.so
cd /home/vic/src/qutim-build/protocols/jabber && /usr/local/bin/cmake -E cmake_link_script CMakeFiles/jabber.dir/link.txt --verbose=1
/usr/bin/c++  -fPIC    -shared -Wl,-soname,libjabber.so -o libjabber.so CMakeFiles/jabber.dir/src/jabber_global.cpp.o CMakeFiles/jabber.dir/src/jplugin.cpp.o CMakeFiles/jabber.dir/src/protocol/account/connection/jcertinfo.cpp.o CMakeFiles/jabber.dir/src/protocol/account/connection/jconnection.cpp.o CMakeFiles/jabber.dir/src/protocol/account/connection/jconnectionbase.cpp.o CMakeFiles/jabber.dir/src/protocol/account/connection/jconnectionlistener.cpp.o CMakeFiles/jabber.dir/src/protocol/account/connection/jconnectiontcpbase.cpp.o CMakeFiles/jabber.dir/src/protocol/account/connection/jconnectiontcpserver.cpp.o CMakeFiles/jabber.dir/src/protocol/account/connection/jserverdiscoinfo.cpp.o CMakeFiles/jabber.dir/src/protocol/account/dataform/jdataform.cpp.o CMakeFiles/jabber.dir/src/protocol/account/jaccount.cpp.o CMakeFiles/jabber.dir/src/protocol/account/jpgpkeydialog.cpp.o CMakeFiles/jabber.dir/src/protocol/account/jpgpsupport.cpp.o CMakeFiles/jabber.dir/src/protocol/account/muc/jbookmarkmanager.cpp.o CMakeFiles/jabber.dir/src/protocol/account/muc/jconferenceconfig.cpp.o CMakeFiles/jabber.dir/src/protocol/account/muc/jinvitemanager.cpp.o CMakeFiles/jabber.dir/src/protocol/account/muc/jmucmanager.cpp.o CMakeFiles/jabber.dir/src/protocol/account/muc/jmucsession.cpp.o CMakeFiles/jabber.dir/src/protocol/account/muc/jmucuser.cpp.o CMakeFiles/jabber.dir/src/protocol/account/muc/jsessionconvertor.cpp.o CMakeFiles/jabber.dir/src/protocol/account/roster/jaccountresource.cpp.o CMakeFiles/jabber.dir/src/protocol/account/roster/jcontact.cpp.o CMakeFiles/jabber.dir/src/protocol/account/roster/jcontactresource.cpp.o CMakeFiles/jabber.dir/src/protocol/account/roster/jmessagehandler.cpp.o CMakeFiles/jabber.dir/src/protocol/account/roster/jmessagesession.cpp.o CMakeFiles/jabber.dir/src/protocol/account/roster/jmessagesessionowner.cpp.o CMakeFiles/jabber.dir/src/protocol/account/roster/jresourceactiongenerator.cpp.o CMakeFiles/jabber.dir/src/protocol/account/roster/jroster.cpp.o CMakeFiles/jabber.dir/src/protocol/account/roster/jsoftwaredetection.cpp.o CMakeFiles/jabber.dir/src/protocol/account/roster/metacontacts.cpp.o CMakeFiles/jabber.dir/src/protocol/jaccountfinishpage.cpp.o CMakeFiles/jabber.dir/src/protocol/jaccountregistrationpage.cpp.o CMakeFiles/jabber.dir/src/protocol/jaccountwizard.cpp.o CMakeFiles/jabber.dir/src/protocol/jaccountwizardpage.cpp.o CMakeFiles/jabber.dir/src/protocol/jjidvalidator.cpp.o CMakeFiles/jabber.dir/src/protocol/jmainsettings.cpp.o CMakeFiles/jabber.dir/src/protocol/jprotocol.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/activitypep/jactivitychooser.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/activitypep/jpersonactivityconverter.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/adhoc/jadhocmodule.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/adhoc/jadhocwidget.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/attention/jattention.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/filetransfer/jfiletransfer.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/jinglesupport/jinglesupport.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/moodpep/jmoodchooser.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/moodpep/jpersonmoodconverter.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/pep/jpersoneventsupport.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/proxy/jproxymanager.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/remotecontrol/remotecontrol.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/servicediscovery/jservicebrowser.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/tunepep/jpersontuneconverter.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/vcard/jinforequest.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/vcard/jvcardmanager.cpp.o CMakeFiles/jabber.dir/src/protocol/modules/xmlconsole/xmlconsole.cpp.o CMakeFiles/jabber.dir/src/moc_jplugin.cxx.o CMakeFiles/jabber.dir/src/protocol/account/connection/moc_jcertinfo.cxx.o CMakeFiles/jabber.dir/src/protocol/account/connection/moc_jconnection.cxx.o CMakeFiles/jabber.dir/src/protocol/account/connection/moc_jconnectionbase.cxx.o CMakeFiles/jabber.dir/src/protocol/account/connection/moc_jconnectionlistener.cxx.o CMakeFiles/jabber.dir/src/protocol/account/connection/moc_jconnectiontcpbase.cxx.o CMakeFiles/jabber.dir/src/protocol/account/connection/moc_jconnectiontcpserver.cxx.o CMakeFiles/jabber.dir/src/protocol/account/connection/moc_jserverdiscoinfo.cxx.o CMakeFiles/jabber.dir/src/protocol/account/dataform/moc_jdataform.cxx.o CMakeFiles/jabber.dir/src/protocol/account/moc_jpgpkeydialog.cxx.o CMakeFiles/jabber.dir/src/protocol/account/moc_jpgpsupport.cxx.o CMakeFiles/jabber.dir/src/protocol/account/muc/moc_jbookmarkmanager.cxx.o CMakeFiles/jabber.dir/src/protocol/account/muc/moc_jconferenceconfig.cxx.o CMakeFiles/jabber.dir/src/protocol/account/muc/moc_jinvitemanager.cxx.o CMakeFiles/jabber.dir/src/protocol/account/muc/moc_jmucsession.cxx.o CMakeFiles/jabber.dir/src/protocol/account/muc/moc_jmucuser.cxx.o CMakeFiles/jabber.dir/src/protocol/account/muc/moc_jsessionconvertor.cxx.o CMakeFiles/jabber.dir/src/protocol/account/roster/moc_jaccountresource.cxx.o CMakeFiles/jabber.dir/src/protocol/account/roster/moc_jcontact.cxx.o CMakeFiles/jabber.dir/src/protocol/account/roster/moc_jcontactresource.cxx.o CMakeFiles/jabber.dir/src/protocol/account/roster/moc_jmessagehandler.cxx.o CMakeFiles/jabber.dir/src/protocol/account/roster/moc_jmessagesession.cxx.o CMakeFiles/jabber.dir/src/protocol/account/roster/moc_jroster.cxx.o CMakeFiles/jabber.dir/src/protocol/account/roster/moc_jsoftwaredetection.cxx.o CMakeFiles/jabber.dir/src/protocol/moc_jaccountfinishpage.cxx.o CMakeFiles/jabber.dir/src/protocol/moc_jaccountregistrationpage.cxx.o CMakeFiles/jabber.dir/src/protocol/moc_jaccountwizard.cxx.o CMakeFiles/jabber.dir/src/protocol/moc_jaccountwizardpage.cxx.o CMakeFiles/jabber.dir/src/protocol/moc_jjidvalidator.cxx.o CMakeFiles/jabber.dir/src/protocol/moc_jmainsettings.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/activitypep/moc_jactivitychooser.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/activitypep/moc_jpersonactivityconverter.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/adhoc/moc_jadhocmodule.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/adhoc/moc_jadhocwidget.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/attention/moc_jattention.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/filetransfer/moc_jfiletransfer.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/jinglesupport/moc_jinglesupport.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/moodpep/moc_jmoodchooser.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/moodpep/moc_jpersonmoodconverter.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/pep/moc_jpersoneventsupport.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/proxy/moc_jproxymanager.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/remotecontrol/moc_remotecontrol.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/servicediscovery/moc_jservicebrowser.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/tunepep/moc_jpersontuneconverter.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/vcard/moc_jinforequest.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/vcard/moc_jvcardmanager.cxx.o CMakeFiles/jabber.dir/src/protocol/modules/xmlconsole/moc_xmlconsole.cxx.o ../../core/libqutim/libqutim.so.0.3.1.0 jreen/libjreen.so.1.1.0 /usr/local/lib/libqca.so /usr/local/lib/qt4/libQtCore.so /usr/local/lib/qt4/libQtGui.so /usr/local/lib/libSM.so /usr/local/lib/libICE.so /usr/local/lib/libX11.so /usr/local/lib/libXext.so /usr/local/lib/qt4/libQtScript.so /usr/local/lib/qt4/libQtGui.so /usr/local/lib/qt4/libQtXml.so /usr/local/lib/qt4/libQtNetwork.so /usr/local/lib/qt4/libQtCore.so -lz -lspeex -Wl,-rpath,/home/vic/src/qutim-build/core/libqutim:/home/vic/src/qutim-build/protocols/jabber/jreen:/usr/local/lib:/usr/local/lib/qt4: 
/usr/bin/ld: cannot find -lspeex
*** Error code 1

Stop in /home/vic/src/qutim-build.
*** Error code 1

Stop in /home/vic/src/qutim-build.
*** Error code 1

Stop in /home/vic/src/qutim-build.
% 
Порт /usr/ports/audio/speex/ установлен.

Код: Выделить всё

% ls -al /usr/local/lib/ | grep speex
-rw-r--r--    1 root  wheel    205306 May 19 08:03 libspeex.a
-rwxr-xr-x    1 root  wheel       939 May 19 08:03 libspeex.la
lrwxr-xr-x    1 root  wheel        13 May 19 08:03 libspeex.so -> libspeex.so.1
-rwxr-xr-x    1 root  wheel    120550 May 19 08:03 libspeex.so.1
-rw-r--r--    1 root  wheel    108150 May 19 08:03 libspeexdsp.a
-rwxr-xr-x    1 root  wheel       960 May 19 08:03 libspeexdsp.la
lrwxr-xr-x    1 root  wheel        16 May 19 08:03 libspeexdsp.so -> libspeexdsp.so.1
-rwxr-xr-x    1 root  wheel     77868 May 19 08:03 libspeexdsp.so.1
%
Cmake путь к библиотеке прописывает.

Код: Выделить всё

% cat src/qutim-build/CMakeCache.txt | grep speex
jreen_LIB_DEPENDS:STATIC=general;/usr/local/lib/qt4/libQtScript.so;general;/usr/local/lib/qt4/libQtGui.so;general;/usr/local/lib/qt4/libQtXml.so;general;/usr/local/lib/qt4/libQtNetwork.so;general;/usr/local/lib/qt4/libQtCore.so;general;/usr/local/lib/libqca.so;general;/usr/lib/libz.so;general;speex;
SPEEX_CFLAGS:INTERNAL=-I/usr/local/include;-I/usr/local/include/speex
SPEEX_INCLUDE_DIRS:INTERNAL=/usr/local/include;/usr/local/include/speex
SPEEX_LDFLAGS:INTERNAL=-L/usr/local/lib;-lspeex
SPEEX_LIBRARIES:INTERNAL=speex
SPEEX_STATIC_CFLAGS:INTERNAL=-I/usr/local/include;-I/usr/local/include/speex
SPEEX_STATIC_INCLUDE_DIRS:INTERNAL=/usr/local/include;/usr/local/include/speex
SPEEX_STATIC_LDFLAGS:INTERNAL=-L/usr/local/lib;-lspeex;-lm
SPEEX_STATIC_LIBRARIES:INTERNAL=speex;m
SPEEX_speex_INCLUDEDIR:INTERNAL=
SPEEX_speex_LIBDIR:INTERNAL=
SPEEX_speex_PREFIX:INTERNAL=
SPEEX_speex_VERSION:INTERNAL=
% 
Подскажите, почему библиотека не видится?

Re: сборка qutim 0.3 под freebsd

Добавлено: 2012-05-21 12:14:53
Гость
1) не обновлен кеш ldconfig
или
2) кривые пути -L, не смотря на то что они как то там мелькают
или сразу оба варианта

Re: сборка qutim 0.3 под freebsd

Добавлено: 2012-05-21 13:36:19
Himik
1)

Код: Выделить всё

% ldconfig -r | grep speex
        534:-lspeex.1 => /usr/local/lib/libspeex.so.1
        535:-lspeexdsp.1 => /usr/local/lib/libspeexdsp.so.1
2) Как проверить второй вариант?

Re: сборка qutim 0.3 под freebsd

Добавлено: 2012-05-21 14:45:24
Гость
второй вариант это особенности gcc и cmake
обновите их до последней версии,
причем не факт что в портах последняя версия

Re: сборка qutim 0.3 под freebsd

Добавлено: 2012-05-21 16:25:40
Himik
Критично ли различие -lspeex и -lspeex.1?

Re: сборка qutim 0.3 под freebsd

Добавлено: 2012-05-21 23:44:49
Гость
критично
вообщем то ошибка линкера ld он сказал что не может найти -lspeex
значит имя либы -lspeex он ищет
и оно правильно
значит логично что он ее не находит
а значит не правильно передается или -Lпуть или кешпуст

кеш вы проверили по ldconfig
значит линкер не может найти потому что некорректно ему передаются пути,
а пути ему передает cmake,

сам же cmake впринципе вроде теоретически тоже правильно передает,
значит либо
1) cmake передает не правильно
2) либо то что он передает правильно, но не для той версии линкера что сечас в бсд

Re: сборка qutim 0.3 под freebsd

Добавлено: 2012-05-23 8:51:33
Himik
Решилось сборкой при помощи gcc 4.6.