QT를 크로스 컴파일러 gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi
을 사용하여 교차 컴파일하고 make
동안 다음 오류가 발생합니다.교차 컴파일 QT
누구와 관련이 있는지 알고 있습니까?
일부 컴파일러가 다른 컴파일러로 컴파일 된 것처럼 보이는데 이제는 일치하지 않는 것 같습니다. 나는이 시점에서 글을 쓸 수 있는가?
이 문제는 어떻게 해결해야합니까?
/opt/freescale/usr/local/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/arm-fsl-linux-gnueabi-g++ -Wl,-rpath-link,/mnt/freescale/ltib_10.04_gtt/ltib/rootfs/usr/lib -Wl,-O1 -Wl,-rpath,/opt/qt5/lib -o ../../bin/qmlbundle .obj/main.o -L/mnt/freescale/ltib_10.04_gtt/ltib/rootfs/usr/lib -L/home/user/Downloads/qt5/qtdeclarative/lib -lQt5Qml -L/home/user/Downloads/qt5/qtbase/lib -lQt5Network -lQt5Core -lpthread
.obj/main.o: In function `showHelp()':
main.cpp:(.text+0x2e0): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, int)'
main.cpp:(.text+0x310): undefined reference to `std::ctype<char>::_M_widen_init() const'
main.cpp:(.text+0x368): undefined reference to `std::ctype<char>::_M_widen_init() const'
main.cpp:(.text+0x3a0): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, int)'
main.cpp:(.text+0x3d0): undefined reference to `std::ctype<char>::_M_widen_init() const'
main.cpp:(.text+0x408): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, int)'
main.cpp:(.text+0x438): undefined reference to `std::ctype<char>::_M_widen_init() const'
main.cpp:(.text+0x470): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, int)'
main.cpp:(.text+0x4a0): undefined reference to `std::ctype<char>::_M_widen_init() const'
main.cpp:(.text+0x4d8): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, int)'
main.cpp:(.text+0x508): undefined reference to `std::ctype<char>::_M_widen_init() const'
main.cpp:(.text+0x540): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, int)'
main.cpp:(.text+0x570): undefined reference to `std::ctype<char>::_M_widen_init() const'
main.cpp:(.text+0x5a8): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, int)'
main.cpp:(.text+0x5d8): undefined reference to `std::ctype<char>::_M_widen_init() const'
main.cpp:(.text+0x610): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, int)'
main.cpp:(.text+0x640): undefined reference to `std::ctype<char>::_M_widen_init() const'
main.cpp:(.text+0x678): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, int)'
main.cpp:(.text+0x6a8): undefined reference to `std::ctype<char>::_M_widen_init() const'
main.cpp:(.text+0x700): undefined reference to `std::ctype<char>::_M_widen_init() const'
main.cpp:(.text+0x738): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, int)'
main.cpp:(.text+0x768): undefined reference to `std::ctype<char>::_M_widen_init() const'
.obj/main.o: In function `usage(QString const&, QString const&)':
main.cpp:(.text+0x834): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, int)'
main.cpp:(.text+0x868): undefined reference to `std::ctype<char>::_M_widen_init() const'
main.cpp:(.text+0x8c0): undefined reference to `std::ctype<char>::_M_widen_init() const'
main.cpp:(.text+0xa78): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, int)'
main.cpp:(.text+0xaa8): undefined reference to `std::ctype<char>::_M_widen_init() const'
.obj/main.o: In function `main':
main.cpp:(.text+0x1ebc): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, int)'
main.cpp:(.text+0x1ef4): undefined reference to `std::ctype<char>::_M_widen_init() const'
collect2: ld returned 1 exit status
make[3]: *** [../../bin/qmlbundle] Error 1
나는 그것이 중요하지만, 사람이 내가 프리 스케일 iMX51 (코어 텍스 A8)에 대한 QT 5.2.0을 구축하고 궁금하면 생각하지 않습니다.
./configure -v -opensource -confirm-license -opengl es2 -make libs -device imx5 \
-nomake examples -nomake tests \
-skip qtsvg -skip qtdeclarative -skip qtwebkit -skip qtconnectivity -skip qtmultimedia -skip qtlocation -skip qtactiveqt -qt-freetype -no-openssl -no-nis -no-pch -no-dbus \
-skip qtmacextras -skip qtsensors -skip qtserialport \
-device-option CROSS_COMPILE=/opt/freescale/usr/local/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/arm-fsl-linux-gnueabi- \
-sysroot /mnt/freescale/ltib_10.04_gtt/ltib/rootfs -no-gcc-sysroot \
-prefix /opt/qt5
imx5의 qmake.conf 실제로 다운로드되고 이런 식으로 내용 외모 :
include(../common/linux_device_pre.conf)
EGLFS_PLATFORM_HOOKS_SOURCES = $$PWD/qeglfshooks_imx5.cpp
QMAKE_INCDIR += $$[QT_SYSROOT]/usr/include
QMAKE_LIBDIR += $$[QT_SYSROOT]/usr/lib
QMAKE_LIBS_EGL += -lEGL
QMAKE_LIBS_OPENGL_ES2 += -lGLESv2 -lEGL
QMAKE_LIBS_OPENVG += -lOpenVG -lEGL
QMAKE_LFLAGS += -Wl,-rpath-link,$$[QT_SYSROOT]/usr/lib
IMX5_CFLAGS = -march=armv7-a -mfpu=neon -D_LINUX
IMX5_CFLAGS_RELEASE = -O2 $$IMX5_CFLAGS
QMAKE_CFLAGS_RELEASE += $$IMX5_CFLAGS_RELEASE
QMAKE_CXXFLAGS_RELEASE += $$IMX5_CFLAGS_RELEASE
QMAKE_CFLAGS_DEBUG += $$IMX5_CFLAGS
QMAKE_CXXFLAGS_DEBUG += $$IMX5_CFLAGS
include(../common/linux_device_post.conf)
load(qt_config)
어떤 보드, 플랫폼 및 아키텍처를 크로스 컴파일 할 수 있는지 설명 할 수 있습니까? –
@vinayhunachyal, 나는이 것들이 중요하다고 생각하지 않지만 귀하의 질문에 대한 답변을 볼 수 있습니다! – theAlse
-uvice를 구성 할 때 구성이 중요합니다. < > 예 : linux-rasp-pi-g ++ 또는 -xplatform linux-g ++ - mx5x -release는 장치의 mkspeck입니다. Qt를 컴파일하는 방법을 공유 하시겠습니까? –