问题描述
一个使用CMake构建的Qt项目,包含主项目文件夹和测试子项目文件夹,其中主项目的CMakeLists.txt包含了测试子项目的文件夹,并且测试子项目文件夹内包含一个单独的CMakeLists.txt。在主项目的CMakeLists.txt中,引入了network模块,并且在主项目中使用了该模块。能够正常#include 和#include 。项目从测试子项目启动,编译不通过,提示:QTcpSocket:no such file or directory。
解决方法
测试子项目中的CMakeLists.txt中也需要将主项目中的所有库引入,包括network模块;例如:
上图为主项目中的CMakeLists.txt文件,其中包含了network模块
上图是测试子项目的CMakeLists.txt文件,其中同样包含了network模块。不然会报以上错误。
有问题欢迎指正。