Я хочу добавить модуль QSerialPort в CMake. По моему мнению, мне нужно добавить QT + = serialport в * .pro. Я только хочу использовать CMake. Поэтому я пытаюсь выполнить простой файл CMake для компиляции, но у него есть ошибка. QtCore работает, поскольку qDebug может отображаться без каких-либо проблем.Как добавить модуль QSerialPort в CMake?
Ошибка я получаю:
undefined reference to `QSerialPort::QSerialPort(QObject*)'
undefined reference to `QSerialPort::~QSerialPort()'
undefined reference to `QSerialPort::~QSerialPort()'
Это простой файл main.cpp.
#include <iostream>
#include <QObject>
#include <QDebug>
#include <QCoreApplication>
#include <QtSerialPort/QSerialPort>
using namespace std;
int main() {
QSerialPort serialPort; //this line gives error
qDebug()<<"Hello Qt"; //this line is working as normal
cout << "Hello, World!" << endl;
return 0;
}
Это простой файл CMake.
cmake_minimum_required(VERSION 3.3)
project(untitled1)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
find_package(Qt5Core COMPONENTS Qt5SerialPort REQUIRED)
set(SOURCE_FILES main.cpp)
add_executable(untitled1 ${SOURCE_FILES})
qt5_use_modules(untitled1 Core)
Команда 'qt5_use_modules (Untitled1 ядро)' связать свой исполняемый файл с библиотекой QT 'Core', но вы используете Библиотека SerivalPort. Вместо этого используйте команду 'qt5_use_modules (untitled1 Core SerialPort)'. – Tsyvarev