LINUX.ORG.RU

Как собрать Qt x32 на xubuntu 12.04 x64?

 ,


0

2

Делаю так:

./configure -platform linux-g++-32 -opensource -nomake demos -nomake examples

Получаю это:

Creating qmake. Please wait... g++ -o «/home/glaciuse/Programming/Qt/Qtx32/bin/qmake» project.o property.o main.o makefile.o unixmake2.o unixmake.o mingw_make.o option.o winmakefile.o projectgenerator.o meta.o makefiledeps.o metamakefile.o xmloutput.o pbuilder_pbx.o borland_bmake.o msvc_vcproj.o msvc_vcxproj.o msvc_nmake.o msvc_objectmodel.o msbuild_objectmodel.o symmake.o initprojectdeploy_symbian.o symmake_abld.o symmake_sbsv2.o symbiancommon.o registry.o epocroot.o gbuild.o qtextcodec.o qutfcodec.o qstring.o qtextstream.o qiodevice.o qmalloc.o qglobal.o qbytearray.o qbytearraymatcher.o qdatastream.o qbuffer.o qlist.o qfile.o qfilesystementry.o qfilesystemengine_unix.o qfilesystemengine.o qfilesystemiterator_unix.o qfsfileengine_unix.o qfsfileengine.o qfsfileengine_iterator.o qregexp.o qvector.o qbitarray.o qdir.o qdiriterator.o quuid.o qhash.o qfileinfo.o qdatetime.o qstringlist.o qabstractfileengine.o qtemporaryfile.o qmap.o qmetatype.o qsettings.o qsystemerror.o qlibraryinfo.o qvariant.o qvsnprintf.o qlocale.o qlocale_tools.o qlocale_unix.o qlinkedlist.o qurl.o qnumeric.o qcryptographichash.o qxmlstream.o qxmlutils.o -m32

/usr/bin/ld: warning: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.6/libstdc++.so while searching for stdc++

/usr/bin/ld: error: cannot find -lstdc++

project.cpp:89: error: undefined reference to 'operator new(unsigned int)' project.cpp:130: error: undefined reference to 'operator new(unsigned int)'

...........

make: *** [/home/glaciuse/Programming/Qt/Qtx32/bin/qmake] Ошибка 1

Что делать? Заранее спасибо.



Последнее исправление: Glaciuse (всего исправлений: 3)

Очевидно, что не хватает 32-битных библиотек, в частности libstdc++

annulen ★★★★★
()

Не хватает 32-битной библиотеки stdc++.
Наверняка есть в репозиториях. Ищите.

trex6 ★★★★★
()

В выводе четко же написано:

/usr/bin/ld: warning: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.6/libstdc++.so while searching for stdc++
/usr/bin/ld: error: cannot find -lstdc++

Ответ выше написали.

false ★★★★★
()
Ответ на: комментарий от Glaciuse

Стоят библиотеки libstdc++ и lib32stdc++, все равно не работает )

Почему линкер ругается, что libstdc++.so несовместима?

Потому что либа 64, а надо 32?

Если да, почему он не находит х32 либу, она ведь установлена. :/

Glaciuse
() автор топика

а если попробовать вызвать стандартный скрипт linux32? он переведет текущую сессию в консоли на то как будто вся система 32-битная (проверяется при помощи uname -m)

попробуй, может все станет как надо после этого?

s@s-MS-7623:~$ uname -a
Linux s-MS-7623 3.2.0-26-generic #41-Ubuntu SMP Thu Jun 14 17:49:24 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
s@s-MS-7623:~$ linux32
s@s-MS-7623:~$ uname -a
Linux s-MS-7623 3.2.0-26-generic #41-Ubuntu SMP Thu Jun 14 17:49:24 UTC 2012 i686 athlon i386 GNU/Linux
s@s-MS-7623:~$
I-Love-Microsoft ★★★★★
()
Последнее исправление: I-Love-Microsoft (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.