QT Creator 如何将第三方库加入到环境内

本文介绍如何在QTCreator中将第三方库如Boost加入到项目环境中,包括配置pro文件来适应不同编译器(MSVC和GCC/MinGW),并提供具体的配置示例。

QT Creator 如何将第三方库加入到环境内

  2470人阅读  评论(0)  收藏  举报
供楼主参考.pro文件,需要注意的是,如果你用的编译器是MSVC,则不需要写要链接的boost库名,编译器会自动链接的,如果是GCC/MinGW,则需要手工写要链接的boost库名。

#####################################################################
# CTTransfer服务工程文件
# 编译器:   gcc/msvc
# 依赖库:   boost
#####################################################################
TEMPLATE = app
TARGET = 
DESTDIR = ../../bin
DEPENDPATH += .
INCLUDEPATH += . ../include 
#DEFINES += CHINUXTEAM_DEBUG
LIBS += -L../lib -L../../lib -lCTService
win32-msvc* {
    QMAKE_CXXFLAGS += -wd4100 -wd4503 -wd4819
    DEFINES += _WIN32_WINNT=0x0500 WIN32_LEAN_AND_MEAN _SCL_SECURE_NO_WARNINGS
    INCLUDEPATH += E:/Backup2/Boost/boost_1_40_0
    LIBS += -LE:/Backup2/Boost/boost_1_40_0/stage/lib -lole32 -ladvapi32
}
unix {
    QMAKE_CXXFLAGS += -fpermissive
     INCLUDEPATH += /mnt/hd/backup/boost_1_38_0/ 
    LIBS += -lpthread
     LIBS +=  -L/mnt/hd/backup/boost_1_38_0/stage/lib -lboost_system-gcc43-mt-s -lboost_thread-gcc43-mt-s -lboost_date_time-gcc43-mt-s -lboost_filesystem-gcc43-mt-s -lboost_program_options-gcc43-mt-s
}
CONFIG -= qt
CONFIG += release
win32:CONFIG += console

MOC_DIR = tmp
OBJECTS_DIR = tmp
UI_HEADERS_DIR = tmp

# Input
HEADERS += ViewSession.hpp /
           TransferSession.hpp /
           SaveSession.hpp /
           TransferServer.hpp
SOURCES += ViewSession.cpp /
           TransferSession.cpp /
           SaveSession.cpp /
           TransferServer.cpp / 
           main.cpp

有PHP、Qt、用友相关开发业务相商的朋友请发电子邮件到XChinux@163.com
有技术问题的朋友请在论坛里发贴提问,不要通过私人短信或者QQ/MSN提问讨论,谢谢合作
 
邮件:  XChinux@163.com 
网址: http://www.qtcn.org 
博客: http://hi.baidu.com/xchinux

 

QMake 是 Qt 工具包中带的一个非常方便的工具。可以用于生成 Makefile 以及 各种工程文件,还可以生成 Microsoft Visual Studio 可以使用的项目文件等。 最关键的是它可以自动解决依赖关系,不用手工写 Makefile 了。而且它是跨平 台的。

为我们的工程创建一个 project.pro 的 qmake 工程文件,例如:

SOURCES = main.cpp Dialog.cpp Emitter.cpp

HEADERS = Dialog.hpp Emitter.hpp



CONFIG += qt

LIBS += -lboost_thread

工程文件非常简单,指定源文件、头文件。 CONFIG 可以指定一些编译选项,其 中一些选项如 qt 以及 thread 是 qmake 内部能够识别的。如果要使用 Qt 的网 络以及线程库,可以指定

QT += network

另外,我这里为了尝试一下 Qt 的信号槽机制在别的线程库下是否能正常使用, 决定使用 boost 的线程库。于是我使用 LIBS 参数指定额外需要链接的库。更详 细的选项可以参加 qmake 的文档。

之后我们可以通过 qmake 工程文件生成其他文件 ( 如 Makefile )

qmake -o Makefile project.pro

接下来就可以输入 make 命令使用生成的 Makefile 来进行构建了。非常方便。

在非 Qt 程序中使用 qmake

事实上, qmake 非常好用,我们甚至想在非 Qt 程序中使用它。这也很容易。 只要加入

CONFIG -= qt

那么 qmake 就不会添加任何和 Qt 库相关的头文件以及 lib 之类的进来了。


你编译器用的什么?mingw还是msvc?
如果是msvc
#pragma comment(lib,"Ws2_32.lib")
是没有错的。
如果是mingw就要
在pro文件中加入:
LIBS+= Ws2_32.lib


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值