草庐IT

language-cmake

全部标签

c++ - 带有 boost 的 CMake(在 Windows 上):Could not find libraries?

我正在尝试使用CMake构建我的项目。我也在使用boost。我的CMakeLists.txt文件中的查找包语句是:find_package(Boost1.42所需组件python系统文件系统序列化线程程序选项正则表达式test_exec_monitor)构建失败,我收到的错误消息是:找不到以下Boost库:boost_systemboost_filesystemboost_serializationboost_threadboost_program_options当我检查我的lib目录时,我发现这些库的名称是:libboost-vc100-mt.lib而不是boost_事实上,当我根据

c++ - 将 header 添加到 CMake 中的库

我有很多看起来像这样的库:libs\lib1--src\-include\lib2--src\-include其中lib2需要lib1。我这样做的方法是做这样的事情:lib2/CMakeLists.txt:include../lib1/includetarget_link_libraries(lib2lib1)如何在lib2库中包含lib1头文件/包含文件?我目前正在尝试执行此操作,但在编译过程中出现lib2找不到lib1头文件的错误。libs/CMakeLists.txt:file(GLOBlib1_src"lib1/src/*.cc")#headerfilesfile(GLOBli

c++ - qt creator opencv windows cmake错误

我想配置然后生成opencv库供qtcreator链接它们。我打开cmake3.1.0并输入源代码和构建路径。来源:C:/Users/Philipp_Laptop/Downloads/opencv/sourcesbuild:C:/opencv-mingw然后我用路径配置了mingw-compiler:C:/Qt/Tools/mingw482_32/bin/gcc.exeC:/Qt/Tools/mingw482_32/bin/g++.exe成功配置后,我设置了with_Qt选项。我配置了两次,它显示了以下错误:DetectedversionofGNUGCC:48(408)CMakeWar

c++ - Cmake 和 QT5 - Include 只接受一个参数

来自这个主题:UbuntuCMakewhatpathtoaddtoCMAKE_MODULE_PATH我尝试在我的项目中运行QT5,因为QT4不允许我包含QWebView。按照上述主题的指南,我现在有一个CMakeList.txt:cmake_minimum_required(VERSION2.6FATAL_ERROR)project(simpleTree)find_package(Qt5REQUIREDCOMPONENTSWidgetsCore)find_package(VTKREQUIRED)find_package(PCL1.8.0REQUIRED)include_director

c++ - 导出 cmake-gui 选项

我有一个包含大量不同配置选项的库。我们通常使用cmake-gui配置构建并勾选几个复选框。我想仅使用cmake将其自动生成一个.sh脚本。例如在GUI->选择一堆不同的选项等效的cmake命令->cmake-DCMAKE_XXX=X-DCMAKE_XXY=XXY[这里有一堆选项]..如何找到与我从GUI选择的任意配置“等效”的cmake命令行命令? 最佳答案 解释了缓存变量的等效cmake命令here(-D选项)。注意previousdocumentationwasambiguous,因此请注意始终检查最新版本。基本上:-D:=您还

c++ - qt 将数据库 sql 添加到从 cmake 导入的项目中

通常情况下,要给qt添加数据库,我们会去.pro文件中添加sql,但是我正在做的项目是从cmake导入的,所以它没有.pro文件。相反,它有一个CMakeLists.txt文件,我想将它连接到一个sqlite数据库。谁能帮我吗。谢谢 最佳答案 将Sql组件添加到find_package()命令和将Qt5::Sql添加到target_link_libraries()命令。搜索类似的东西:find_package(Qt5REQUIREDCOMPONENTSCoreQuickSql)或者像那样:find_package(Qt5SqlREQ

c++ - 如何在没有外部脚本的情况下链接 CMake 和 SQLite?

我有以下CMakeLists:cmake_minimum_required(VERSION2.8.12.2)project(Tutorial)find_package(sqlite3)if(SQLITE3_FOUND)include_directories(${SQLITE3_INCLUDE_DIRS})target_link_libraries(new${SQLITE3_LIBRARIES})endif(SQLITE3_FOUND)add_executable(Tutorialnew.cpp)但是,当我cmake时,我收到以下消息:CMakeWarningatCMakeLists.t

Pythonlibs3 CMake 和 macOS

[更新2]以下两行,当添加到我的CMake文件中时,成功找到了python3及其库。这仅在终端中起作用的原因是因为CLion使用其捆绑版本的CMake(3.6.3),而我的终端使用的更新版本(3.7.2)正确找到了python。FIND_PACKAGE(PythonInterp3)FIND_PACKAGE(PythonLibs3)[更新]我让cmake文件可以工作,但是,当我从终端运行时它只找到python3库。从CLion运行时,出现以下错误:CMakeError:Thefollowingvariablesareusedinthisproject,buttheyaresettoNOT

CMake 中的 C++ 链接器标志

我正在编译C++程序并收到以下错误消息:undefinedreferenceto'pthread_mutexattr_init'undefinedreferenceto'dlopen'undefinedreferenceto'dlerror'undefinedreferenceto'dlsym'undefinedreferenceto'dlclose'为了解决pthread的错误,我将以下链接器标志添加到我的CMakeLists.txt。if(UNIX)set(CMAKE_CXX_FLAGS"-pthread")endif(UNIX)这解决了pthread错误。为了解决libdl错误,

c++ - cmake 引用了以下导入的目标,但丢失了

我有一个包含两个库(liba和libb)的存储库,而liba取决于libb。它们是单个存储库的一部分,并且是使用单个cmake“上下文”构建的。文件结构如下所示:├──CMakeLists.txt├──liba│├──CMakeLists.txt│├──internal││└──private.hh│├──module.cc│├──module.hh└──libb├──CMakeLists.txt├──other.cc└──other.hh一切都编译和安装没有任何问题。虽然,如果我尝试创建一个依赖于liba的新项目。像这样:cmake_minimum_required(VERSION3