电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

如何让qmake生成的Makefie不链接Qt库

如何让qmake生成的Makefie不链接Qt库_第1页
1/11
如何让qmake生成的Makefie不链接Qt库_第2页
2/11
如何让qmake生成的Makefie不链接Qt库_第3页
3/11
如何让qmake 生成的Makefie 不链接Qt库 在CSDN 上搜索了一下,大部分关于qmake 的实例都是链接到Qt 库,包括QtCore 和QtGui。如果只是想写一个普通的C++命令行程序,链接Qt 库显然是使得最终生成的程序尺寸变得臃肿,而且必须要安装庞大的Qt 包。 那么如何让qmake 不链接到Qt 库呢? 默认情况下,qmake 是要链接QtCore 和QtGui 两个库的。即使你什么也不做,因为这是默认行为。 通过以下配置可以解除这种配置。 1. #不需要 QT 2. CONFIG -= qt 简单吧,这下清净了,我们明确告知 qmake 这不是qt 程序,只需要 qmake 为我们生成普通 Makefile,其他什么也不要多做。 以下是我为 boost asio 中一个简单 tcp 服务器程序写的qmake 工程文件:TcpServer.pro。 1. #qmake 命令行 2. #qmake -makefile -spec linux-g++ TcpServer.pro TARGET = TcpServer.bin TEMPLATE = app 3. #不需要 QT 4. CONFIG -= qt 5. #编译 debug 模式 6. CONFIG += debug 7. #指定中间文件目录 8. OBJECTS_DIR = ./debug 9. #BOOST 头文件路径 INCLUDEPATH += $$(BOOST_INCLUDE) INCLUDEPATH += $$(BOOST_INCLUDE) 10. #依赖的boost 库 #技巧:通过 $$(ENV_VAR) 访问环境变量 11. #LIBS += -L$$(BOOST_LIB) -lboost_system -lboost_thread -lboost_date_time -pthread LIBS += -L$$(BOOST_LIB) -lboost_system -lboost_thread -lboost_date_time -lpthread 12. #头文件 13. HEADERS += connection.hpp 14. HEADERS += io_service_pool.hpp 15. HEADERS += server.hpp 16. #源文件 17. SOURCES += connection.cpp 18. SOURCES += io_service_pool.cpp 19. SOURCES += server.cpp 20. SOURCES += main.cpp 正如注释中提到的,运行 qmake -makefile -spec linux-g++ TcpServer.pro 生成可用linux g++编译器进行编译的Makefile。 如果我们将 “CONFIG –= qt” 这一行注释掉,及使用qmake 的默认配置,那么来比较一下两者的差别。 下面一栏是qmake 默认配置下生成的Makefile。可以清晰的看出,默认生成的Makefile增加了Qt 宏定义、头文件路径、QtGui 和 QtCore 链接库。而上面一栏是 增加了 ”CONFIG –= qt “配置的生成的Makefile,显然清爽了很多。只有我们指定的库文件。 顺带提一下,qmake 中访问环境变...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

如何让qmake生成的Makefie不链接Qt库

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部