找回密码
 立即注册
收起左侧

移植qt5.6到imx6,配置通过,make的时候,提示:SONAME must not ...

2
回复
7075
查看
[复制链接]

尚未签到

来源: 2016-7-14 11:39:29 显示全部楼层 |阅读模式
1Qter豆
移植qt5.6到imx6,配置通过,make的时候,提示:SONAME must not be empty string; keeping previous one。
具体信息如下:

rm -f libQt5Network.so.5.6.1 libQt5Network.so libQt5Network.so.5 libQt5Network.so.5.6
/opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/i686-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-g++ --sysroot=/opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi -Wl,-rpath-link,/opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi/usr/lib -Wl,-rpath-link,/opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi/usr/lib/arm-poky-linux-gnueabi -mfloat-abi=hard -Wl,--no-undefined -Wl,--no-undefined -Wl,--version-script,QtNetwork.version -Wl,-O1 -Wl,-O1 -Wl,-z,origin -Wl,-rpath,\$ORIGIN -shared -shared -Wl,-soname,libQt5Network.so.5 -Wl,-soname, -o libQt5Network.so.5.6.1 .obj/qftp.o .obj/qhttpnetworkheader.o .obj/qhttpnetworkrequest.o .obj/qhttpnetworkreply.o .obj/qhttpnetworkconnection.o .obj/qhttpnetworkconnectionchannel.o .obj/qabstractprotocolhandler.o .obj/qhttpprotocolhandler.o .obj/qspdyprotocolhandler.o .obj/qnetworkaccessauthenticationmanager.o .obj/qnetworkaccessmanager.o .obj/qnetworkaccesscache.o .obj/qnetworkaccessbackend.o .obj/qnetworkaccessdebugpipebackend.o .obj/qnetworkaccessfilebackend.o .obj/qnetworkaccesscachebackend.o .obj/qnetworkaccessftpbackend.o .obj/qnetworkcookie.o .obj/qnetworkcookiejar.o .obj/qnetworkrequest.o .obj/qnetworkreply.o .obj/qnetworkreplyimpl.o .obj/qnetworkreplydataimpl.o .obj/qnetworkreplyhttpimpl.o .obj/qnetworkreplyfileimpl.o .obj/qabstractnetworkcache.o .obj/qnetworkdiskcache.o .obj/qhttpthreaddelegate.o .obj/qhttpmultipart.o .obj/qnetworksession.o .obj/qnetworkconfigmanager.o .obj/qnetworkconfiguration.o .obj/qnetworkconfigmanager_p.o .obj/qbearerengine.o .obj/qbearerplugin.o .obj/qsharednetworksession.o .obj/qauthenticator.o .obj/qdnslookup.o .obj/qhostaddress.o .obj/qhostinfo.o .obj/qurlinfo.o .obj/qnetworkproxy.o .obj/qnetworkinterface.o .obj/qdnslookup_unix.o .obj/qhostinfo_unix.o .obj/qnetworkinterface_unix.o .obj/qnetworkproxy_generic.o .obj/qabstractsocketengine.o .obj/qhttpsocketengine.o .obj/qsocks5socketengine.o .obj/qabstractsocket.o .obj/qtcpsocket.o .obj/qudpsocket.o .obj/qtcpserver.o .obj/qlocalsocket.o .obj/qlocalserver.o .obj/qnativesocketengine.o .obj/qnativesocketengine_unix.o .obj/qlocalsocket_unix.o .obj/qlocalserver_unix.o .obj/moc_qhttpnetworkreply_p.o .obj/moc_qspdyprotocolhandler_p.o .obj/moc_qnetworkaccesscache_p.o .obj/moc_qnetworkaccessbackend_p.o .obj/moc_qnetworkaccessdebugpipebackend_p.o .obj/moc_qnetworkaccessfilebackend_p.o .obj/moc_qnetworkaccessftpbackend_p.o .obj/moc_qnetworkcookiejar.o .obj/moc_qnetworkreply.o .obj/moc_qnetworkreplyhttpimpl_p.o .obj/moc_qabstractnetworkcache.o .obj/moc_qnetworkdiskcache.o .obj/moc_qhttpthreaddelegate_p.o .obj/moc_qhttpmultipart.o .obj/moc_qnetworkconfigmanager_p.o .obj/moc_qnetworksession_p.o .obj/moc_qbearerplugin_p.o .obj/moc_qdnslookup_p.o .obj/moc_qhostinfo_p.o .obj/moc_qabstractsocketengine_p.o .obj/moc_qhttpsocketengine_p.o .obj/moc_qsocks5socketengine_p.o .obj/moc_qtcpsocket.o .obj/moc_qudpsocket.o .obj/moc_qnativesocketengine_p.o  -L/opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi/usr/lib -L/opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi/lib -ljpeg -ldbus-1 -lrt -L/home/yocto/manualQtBuild/qt-everywhere-opensource-src-5.6.1/qtbase/lib -lQt5Core -lpthread -lQt5Core -lpthread
/opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/i686-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/5.2.0/real-ld: SONAME must not be empty string; keeping previous one
.obj/qftp.o: In function `QFtpPI::startNextCmd()':
/home/yocto/manualQtBuild/qt-everywhere-opensource-src-5.6.1/qtbase/src/network/access/qftp.cpp:1210: undefined reference to `QString:perator=(QLatin1String)'
/home/yocto/manualQtBuild/qt-everywhere-opensource-src-5.6.1/qtbase/src/network/access/qftp.cpp:1184: undefined reference to `QString:perator=(QLatin1String)'
/home/yocto/manualQtBuild/qt-everywhere-opensource-src-5.6.1/qtbase/src/network/access/qftp.cpp:1199: undefined reference to `QString:perator=(QLatin1String)'
.obj/qftp.o: In function `QFtpPrivate::_q_startNextCommand()':
/home/yocto/manualQtBuild/qt-everywhere-opensource-src-5.6.1/qtbase/src/network/access/qftp.cpp:2241: undefined reference to `QString:perator=(QLatin1String)'
.obj/qftp.o: In function `QFtpPI::readyRead()':
/home/yocto/manualQtBuild/qt-everywhere-opensource-src-5.6.1/qtbase/src/network/access/qftp.cpp:975: undefined reference to `QString:perator=(QLatin1String)'
.obj/qftp.o:/home/yocto/manualQtBuild/qt-everywhere-opensource-src-5.6.1/qtbase/src/network/access/qftp.cpp:1229: more undefined references to `QString:perator=(QLatin1String)' follow
.obj/qhostinfo.o: In function `QHostInfo::localHostName()':
/home/yocto/manualQtBuild/qt-everywhere-opensource-src-5.6.1/qtbase/src/network/kernel/qhostinfo.cpp:432: undefined reference to `QSysInfo::machineHostName()'

哪位大神手动编译过qt5.6,支持opengl,帮忙看一下,感激不尽!

回复

使用道具 举报

尚未签到

2016-7-14 11:40:15 显示全部楼层
配置如下:
./configure \
-release \
-opensource -confirm-license \
-shared \
-dbus \
-mtdev \
-evdev \
-qt-zlib \
-qt-sql-sqlite \
-qt-libpng -qt-libjpeg -qt-freetype -qt-harfbuzz \
-no-xcb -no-xcb-xlib -no-iconv -no-openssl -no-sse2 \
-qml-debug \
-examplesdir $PWD/qt_install/examples -make libs \
-importdir $PWD/qt_install/imports \
-qmldir $PWD/qt_install/qmls \
-make tools \
-make examples \
-make tests \
-gui -widgets \
-optimized-qmake \
-force-asserts \
-eglfs \
-opengl es2 \
-device-option CROSS_COMPILE=/opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/i686-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi- \
-device linux-imx6-g++ \
-sysroot /opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi \
-no-gcc-sysroot \
-prefix $PWD/qt_install -v
回复

使用道具 举报

尚未签到

2016-7-14 11:41:11 显示全部楼层
qmake.com配置如下:

#
# qmake configuration for building with arm-linux-gnueabi-g++
#

MAKEFILE_GENERATOR      = UNIX
CONFIG                 += incremental
QMAKE_INCREMENTAL_STYLE = sublib


QT_QPA_DEFAULT_PLATFORM = eglfs
#QMAKE_CFLAGS_RELEASE   += -O2 -march=armv7-a     #cortex-A8
#QMAKE_CXXFLAGS_RELEASE += -O2 -march=armv7-a

IMX6_CFLAGS= -march=armv7-a -mfpu=neon -mtune=cortex-a9 -DLINUX=1 -DEGL_API_FB=1 -pipe -g -feliminate-unused-debug-types
IMX6_CFLAGS_RELEASE     = -O2 $$IMX6_CFLAGS  
QMAKE_CFLAGS_RELEASE   += $$IMX6_CFLAGS_RELEASE  
QMAKE_CXXFLAGS_RELEASE += $$IMX6_CFLAGS_RELEASE  
QMAKE_CFLAGS           += $$IMX6_CFLAGS  
QMAKE_CXXFLAGS         += $$IMX6_CFLAGS
QMAKE_LFLAGS           += -Wl,-rpath-link,/opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi/usr/lib -Wl,-rpath-link,/opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi/usr/lib/arm-poky-linux-gnueabi

include(../common/linux_device_pre.conf)
include(../../common/linux.conf)
include(../../common/gcc-base-unix.conf)
include(../../common/g++-unix.conf)

# modifications to g++.conf
QMAKE_CC                = /opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/i686-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc --sysroot=/opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi

QMAKE_CXX               = /opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/i686-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-g++ --sysroot=/opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi

QMAKE_LINK              = /opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/i686-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-g++ --sysroot=/opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi

QMAKE_LINK_SHLIB        = /opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/i686-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-g++ --sysroot=/opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi

# modifications to linux.conf
QMAKE_AR                = /opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/i686-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-ar cqs
QMAKE_OBJCOPY           = /opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/i686-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-objcopy
QMAKE_NM                = /opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/i686-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-nm -P
QMAKE_STRIP             = /opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/i686-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-strip

QMAKE_INCDIR            += /opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi/usr/include  
QMAKE_LIBDIR            += /opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi/usr/lib
QMAKE_LIBDIR            += /opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi/lib
  
QMAKE_INCDIR            += /opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi/usr/include/dbus-1.0  
QMAKE_INCDIR            += /opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi/usr/lib/dbus-1.0/include  
#QMAKE_LIBDIR            += /opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi/usr/lib  
   
QMAKE_INCDIR_OPENGL_ES2 = /opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi/usr/include  
QMAKE_LIBDIR_OPENGL_ES2 = /opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi/usr/lib  
      
QMAKE_INCDIR_EGL = /opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi/usr/include  
QMAKE_LIBDIR_EGL = /opt/fsl-imx-fb/4.1.15-1.1.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi/usr/lib  
        
QMAKE_LIBS_OPENGL_ES1       += -lGLESv1_CM -lEGL -lGAL  
QMAKE_LIBS_OPENGL_ES1CL     += -lGLES_CL -lEGL -lGAL  
QMAKE_LIBS_EGL         += -lEGL  
QMAKE_LIBS_OPENGL_ES2  += -lGLESv2 -lEGL -lGAL  
QMAKE_LIBS_OPENVG      += -lOpenVG -lEGL -lGAL  
QMAKE_LIBS             += -ljpeg -ldbus-1 -lrt -lpthread    #编译选项  
DISTRO_OPTS += hard-float          #浮点运算使用软件不使用硬件  
         
            
# Preferred eglfs backend  
EGLFS_DEVICE_INTEGRATION = eglfs_viv  
              
include(../common/linux_arm_device_post.conf)

load(qt_config)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了