在原生的Qt Creator中使用udp,直接在.pro中添加 QT += network,加载网络模块。
但是在插件版的Qt Creator中创建的ros workspace项目没有.pro文件,是通过cmakelists编译的,所以需要在cmakelists.txt中添加网络模块,注意是功能包下的cmakelists.txt,不是工作空间/src下的
需要添加的语句如下:
find_package(Qt5 REQUIRED Core Widgets Network)
target_link_libraries(wrzg ${QT_LIBRARIES} ${catkin_LIBRARIES} Qt5::Network)
其中的Network和Qt5::Network是添加的模块,(wrzg ${QT_LIBRARIES} ${catkin_LIBRARIES}是我自己需要的东西,主要是加入了Qt5::Network)。头文件包含如下:
#include <QtNetwork/QUdpSocket>
Qt5::Network是避免编译器无法找到 QUdpSocket
类的构造函数的定义,导致链接错误。确保你在 target_link_libraries
中包含了正确的Qt模块。