我正在尝试使用pyqtdeploy部署PyQt4应用程序。我可以构建pyqtdeploy项目,它生成qt源文件和一个主文件。Pro qmake模板文件。我可以运行qmake
/usr/lib64/qt4/bin/qmake /home/andrea/build/main.pro -r -spec linux-g++ -Wall
,它工作得很好,但当我运行时,它抱怨:
/usr/bin/ld: cannot find -lQtCore_s
/usr/bin/ld: cannot find -lQtSql_s
/usr/bin/ld: cannot find -lQt_s
/usr/bin/ld: cannot find -lQtNetwork_s
/usr/bin/ld: cannot find -lQtGui_s
collect2: error: ld returned 1 exit status
主要。Pro包含一行
LIBS += [...] -lQtCore_s -lQtSql_s -lQt_s -lQtNetwork_s -lQtGui_s
这些链接器标志也存在于生成的Makefile中,我在系统中找不到任何这些,我可以找到这些没有后面的_s(即libQtNetwork)。等等,但是链接器被告知寻找libQtNetwork_s.so)
我想我遗漏了一些东西。还有一个链接器标志
-lsip
,但是唯一看起来像sip共享库的文件叫做sip。所以(它在python2.7 virtualenv的site-packages目录中)而不是libsip。这就是ld(链接器)要找的,我能重命名sip吗。所以对利西普来说,怎么样?
谢谢。
在pyqt邮件列表中找到了答案(谢谢Phil),我没有找到库(qt和sip),因为我需要将它们编译为静态库,如这里所述。