草庐IT

cmake_link_libraries

全部标签

c++ - 基于构建配置的链接库[cmake]

这个问题在这里已经有了答案:关闭9年前。PossibleDuplicate:DebugandReleaseLibraryLinkingwithCMAKE(VISUALSTUDIO)这里cmakenewb,我想告诉target_link_libraries在使用debug配置时链接一个debuglib,在release配置下编译时链接一个releaselib。我如何告诉cmake为调试配置链接不同的lib文件?

c++ - 错误 : The following Boost libraries could not be found

我正在使用cmake和boost制作visualstudio解决方案。我的命令是:F:\C++\yapimpl\build>cmake..-G"VisualStudio11"-DBOOST_ROOT=E:\lib\lib\boost_1_54_0-DBOOST_LIBRARYDIR=E:\lib\lib\boost_1_54_0\bin\vc11\lib尽管我设置了BOOST_LIBRARYDIR和BOOST_ROOT,它仍然显示boost_unit_test_framework找不到。目录E:\lib\lib\boost_1_54_0\bin\vc11\lib确实包含这些文件:08/

c++ - 使用 CMake 编译其他外部库(没有 CMakeLists.txt)

简而言之——当二进制文件/库仅提供一个makefile时,是否可以使用CMake从项目中构建外部二进制文件/库?所以你有自己的项目,源文件树中的一堆CMakeLists.txt和这个带有源文件的外部库。你的资源依赖于这个库,一些二进制文件/库想要链接到它。如果这个外部库只有一个makefile或VisualStudio项目文件而没有给定的CMakeLists.txt,将如何编译它?是否有机会从CMake中调用configure/make?或者在Windows下使用VS运行批编译?还是别的?感谢您在这方面的帮助... 最佳答案 听起来

c++ - 我可以在我的 cmake 代码中手动使用 CMake 的 cpp 文件依赖扫描器吗?

我正在尝试使用CMake添加一个自定义目标,它为每个给定的.cpp文件执行一个命令。仅当源文件本身或包含的源文件之一发生更改时,才应重新执行该命令。据我所知,要实现这一点,我需要一个所有包含文件的列表,并将它们添加到属于我的自定义目标的add_custom_command()调用的DEPENDS选项中。那么有没有内置的方法来获取包含文件的列表?我知道add_custom_command()函数的IMPLICIT_DEPENDS选项,但它只适用于Makefile生成器。我想让它适用于所有生成器。谢谢你的时间编辑:根据要求,我将发布一些cmake代码来展示我想要实现的目标。我想添加一个自定

python - OS X : ld: library not found for -lstdc++

我正在尝试将Python库包装在C++库周围,而distutils在OSX上对我来说失败了。以下是我的setup.py中的相关行:ifsys.platform.startswith("darwin"):extra_compile_args_setting=["-std=c++1z","-stdlib=libc++","-O3"]这是相关的输出:clang-Wno-unused-result-Wsign-compare-Wunreachable-code-DNDEBUG-g-fwrapv-O3-Wall-Wstrict-prototypes-I/Users/x/anaconda/incl

c++ - 如何在大约 v2.8.8 的 cmake 中轻松包含来自库依赖项的 header

我正在对C++存储库使用CMake进行一些试验,但我遇到了一些麻烦,试图在不使用大量额外CMake代码的情况下轻松地针对同一源代码树中的库构建应用程序。源码树的布局基本如下:ROOTlibs/lib1/lib2/lib3/apps/app1/app2/app3/库相互独立,应用程序可以链接到一个或多个库。目前我有一个根目录CMakeLists.txt,它将每个应用程序和库列为一个子目录,这样如果库被更改并且应用程序被重建,库也会被重建。这工作正常并且CMake链接它而无需我指定库所在的位置,但我没有看到对包含目录执行类似操作的方法。有没有通用的方法来处理这个问题?我不希望每个应用程序的

c++ - Cmake,在/usr/local/include 中找到头文件,在/usr/local/lib 中找到库

我希望CMake找到add_executable的header并找到target_link_libraries的.so文件。我要找的头文件是lcm-cpp.hpp(在ubunthu上)ls/usr/local/include/lcm/eventlog.hlcm_coretypes.hlcm-cpp.hpplcm-cpp-impl.hpplcm.h我项目根目录下的CMakeLists.txt文件cmake_minimum_required(VERSION2.6)project(libFoo)include_directories(include/usr/local/include/lcm

c++ - MAC 操作系统 : dynamically linked library not found despite correct rpath

我有一个(相对)大的C++项目,它在ubuntu上编译和运行良好(使用cmake/catkin)。它在macos上编译得很好,但是当尝试启动可执行文件时,我收到错误消息:dyld:Librarynotloaded:.dylibReferencedfrom:/Reason:imagenotfound运行命令时:otool-l|grepLC_RPATH-A2我得到输出:cmdLC_RPATHcmdsize64path(offset12)cmdLC_RPATHcmdsize24path/sw/lib(offset12)cmdLC_RPATHcmdsize32path/usr/X11/lib(

c++ - CMake 与多个 gtest 冲突

这是我在StackOverflow上的第一篇文章,如果我的问题有问题,请深表歉意。我是CMake的新手,我在尝试将gtest(GoogleTest)导入C++项目时遇到了问题,该项目在库中使用了现有的gtest目录。我的根CMakeLists.txt文件是这样的(我的更改是在“开始更改”和“结束更改”之间进行的):cmake_minimum_required(VERSION2.6)project(nifi-minifi-cpp)set(PROJECT_NAME"nifi-minifi-cpp")set(PROJECT_VERSION_MAJOR0)set(PROJECT_VERSION

c++ - 使用 Microsoft Visual C++ 构建工具的 CMake

编辑:将此发布到他们的问题跟踪器并与一些CMake开发人员一起完成后,这实际上不是CMake问题。我的MSBuild安装出现问题,导致它返回“操作成功完成”。错误。总体上仍然没有解决问题,但这缩小了潜在原因的范围。我正在尝试使用MSVisualC++构建工具2015在Windows上构建一个CMake项目(注意:不是完整的VisualStudio)。然而,CMake显然无法找到cl.execmake..--Buildingfor:VisualStudio142015--TheCcompileridentificationisunknown--TheCXXcompileridentifi