编译包含QtSerialPort的项目时链接器错误(g ++,kubuntu)

时间:2017-07-26 18:26:44

标签: c++ gcc linker qtserialport

我正在尝试编译一个使用QtSerialPort的项目,我收到链接错误

g ++ -m64 -Wl,-O1 -o eTerm main.o eterm.o tcpclient.o tcpserver.o udpserver.o serialserver.o qrc_eterm.o moc_eterm.o moc_tcpclient.o moc_tcpserver.o moc_udpserver.o moc_serialserver.o -L / usr / X11R6 / lib64 -lQt5Widgets -L / usr / lib / x86_64-linux-gnu -lQt5SerialPort -ludev -lQt5Network -lQt5Gui -lQt5Core -lGL -lpthread / usr / bin / ld:找不到-ludev collect2:错误:ld返回1退出状态 make:*** [eTerm]错误1

我在Kubuntu 14.04下使用QtCreator 5.2.1

安装udev并且是最后一个版本。 我只在包含/使用QtSerialPort时出现此错误,其他项目一切正常。

#if QT_VERSION >= QT_VERSION_CHECK(5, 1, 0)
    #include <QtSerialPort/QtSerialPort>
#else
    #include <QSerialPort>
    #include <QSerialPortInfo>
#endif

串口是从libqt5serialport5-dev和libqt5serialport5软件包安装的(我有一些不成功的试验,首先从源代码安装它。)

有谁知道可能导致此问题的原因是什么? 谢谢!

1 个答案:

答案 0 :(得分:0)

尝试安装包libudev-dev。对于编译,通常需要一个以-dev结尾的包,其中包含特殊的编译文件。没有-dev的软件包通常只用于运行动态链接到库的程序。