gpt4 book ai didi

c++ - Qt QextSerialPort 静态库

转载 作者:可可西里 更新时间:2023-11-01 09:33:37 27 4
gpt4 key购买 nike

如何为 Windows 平台制作 QextSerialPort 静态库以与 Qt 4.8.5 一起使用

我不明白如何修改 .pro 或 .pri 文件来执行此操作。 (.prf 文件不断重新生成)。

所以我尝试修改生成的 .vcproj 文件以进行静态构建,并删除了一些定义,但我仍然收到如下警告:

qextserialport.lib(qextserialport.obj) : warning LNK4006: "public: __thiscall QextSerialPort::QextSerialPort(class QString const &,enum QextSerialPort::QueryMode,class QObject *)" (??0QextSerialPort@@QAE@ABVQString@@W4QueryMode@0@PAVQObject@@@Z) already defined in qextserialportd1.lib(qextserialportd1.dll); second definition ignored

并且在运行时出现“系统错误:程序无法启动,因为您的计算机缺少 qextserailportd1.dll”。这当然是正确的,因为我正在尝试使用 .lib 进行静态构建

那么我该如何正确地进行静态构建呢?

最佳答案

无需构建QextSerialPort的静态库。您可以简单地在您的应用程序中使用源代码。只需将它的 .pri 文件包含在您的 .pro 文件中即可:

include(Path/To/qextserialport.pri)

或者将 QextSerialPort 源代码从 src 目录复制到您的应用程序目录,并将以下行添加到您的项目文件中:

include(qextserialport.pri)

现在你可以包含头文件了:

#include "qextserialport.h"

并使用库:

QextSerialPort * port = new QextSerialPort("COM1");
connect(port, SIGNAL(readyRead()), this, SLOT(onDataAvailable()));
port->open();

无需链接库或放置 dll 进行部署。

关于c++ - Qt QextSerialPort 静态库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27785161/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com