草庐IT

cmake-custom-command

全部标签

c++ - 加速 C++ : Can I write a program that sorts either a list or a vector using the same command?

我意识到std::sort函数需要使用随机访问迭代器,而列表具有双向迭代器。有一个关于此的问题:SortlistusingSTLsortfunction我正在努力回答AcceleratedC++书中的问题5-4以供家庭学习。5-4.Lookagainatthedriverfunctionsyouwroteinthepreviousexercise.Notethatitispossibletowriteadriverthatonlydiffersinthedeclarationofthetypeforthedatastructurethatholdstheinputfile.Ifyour

C++ 与 git 和 CMake : How to build submodules with specific parameters?

考虑一个在git存储库中组织的C++项目。假设git存储库有一个子模块,(super)项目依赖于该子模块构建了一个库。如果(super)项目不仅依赖于库,还依赖于使用特定(CMake)参数构建的库,那么如何确保在构建(super)项目时使用这些参数构建子模块? 最佳答案 必须将构建选项(如MYLIB_WITH_SQLITE)添加到库的接口(interface)中,即在老式配置的情况下添加到MYLIB_DEFINITIONS变量中-模块,或者到INTERFACE_COMPILE_DEFINITIONS属性,如果库使用install(E

【VScode和Leecode的爱恨情仇】command ‘leetcode.signin‘ not found

文章目录一、关于command‘leetcode.signin‘notfound的问题二、解决方案第一,没有下载Nodejs;第二,有没有在VScode中配置Nodejs第三,力扣的默认在VScode请求地址中请求头错误首先搞定配置其次搞定登入登入方法一:登入方法二解决一下已经登入但是无法再侧边栏展示的问题:解决方案就是降级nodejs版本第四、讨论区一、关于command‘leetcode.signin‘notfound的问题二、解决方案会进入到LeeCode设置中:@ext:LeetCode.vscode-leetcode凡是连接Leecode连接不上的检查一下原因:第一,没有下载Node

c++ - 使用 GoogleTest 和 CMake 对 C 库进行单元测试

我似乎无法获得正在构建的库以正确链接到我的GoogleTest单元测试二进制文件。它在构建的链接阶段失败:LinkingCXXexecutable../../target/unit_testscd/Users/ebenoist/development/mylib/build/test&&/usr/local/Cellar/cmake/2.8.12.2/bin/cmake-Ecmake_link_scriptCMakeFiles/unit_tests.dir/link.txt--verbose=0Undefinedsymbolsforarchitecturex86_64:"a_funct

c++ - CMake:外部项目的依赖

我想知道如何管理外部项目的依赖关系。假设我有三个项目,每个项目都在不同的存储库中:核心:导出大量有用内容的库。Lib1:包含一些特定类的库(取决于Core)。可执行:使用来自Core和Lib1的内容。每个项目及其CMakeLists.txt。使用find_package并在CMake上定义路径,我可以毫无问题地构建每个项目并安装它(我按照thistuto为库构建.cmake文件)现在我正在努力使这个过程尽可能简单,我正在引入ExternalProject_Add宏,这样人们只需克隆Executable存储库并借助CMake文件Lib1和Core也被下载、编译和链接。问题是Executa

使用 CMake 和 Ryppl 的 C++ 库生态系统

我有兴趣构建一个跨平台的C++库并以源代码形式分发它。我希望这个库的使用者能够在他们正在使用的任何平台上以及他们针对的任何平台上非常容易地获取它、构建它并在他们的软件中使用它。同时在构建我的库的同时,我也希望能够通过类似的机制使用其他流行的OSS库。我看到了CMake和Ryppl是出于这些意图而创建的,并且在某种程度上它们确实解决了其中的一些问题,尤其是构建问题。但我不太清楚如何才能实现上述目标。可以选择CMake作为构建解决方案吗?如何解决库的获取和分发问题?简单地将源代码托管在某个地方,让人们发现、下载和构建它们?或者有更好的方法吗? 最佳答案

c++ - 为什么 "cc1plus: warning: unrecognized command line option"选项的 "no-"仅在出现另一个警告时由 g++ 标记?

>catwarning.cpp#pragmafoobar>catno_warning.cpp#pragmamessage"foobar">g++-Wall-Wno-foobar-cwarning.cppwarning.cpp:1:0:warning:ignoring#pragmafoobar[-Wunknown-pragmas]cc1plus:warning:unrecognizedcommandlineoption"-Wno-foobar"[enabledbydefault]>g++-Wall-Wno-foobar-cno_warning.cppno_warning.cpp:1:17

c++ - 使用 CMake 为不同的构建类型创建构建树

我知道如何根据构建类型(发布、调试等)让CMake输出库和容器,但是,为了减少(重新)编译时间,我想让CMake在不同的子文件夹中构建它们。说我有这种树|-CMakeLists.txt|-build/|-src/如果我有调试、发布和relwithdebinfo构建,我希望CMake自动为我创建一棵像这样的树|-CMakeLists.txt|-build/|---Debug/|---Release/|---RelWithDebInfo/|-src/等等。这可能吗,如果可以,我怎样才能实现我的目标?我不想要像“你应该从不同的文件夹运行CMake”这样的答案,因为对于visualstudio

c++ - 带有 Visual Studio 和 cmake 的 CUDA

我正在使用CUDA8.0和VisualStudio2013。到目前为止,我一直在使用CMake构建我的VS-Solutions,并且运行良好。通常使用以下代码片段构建cuda项目:FIND_PACKAGE(CUDAREQUIRED)INCLUDE_DIRECTORIES(${CUDA_INCLUDE_DIRS})link_directories(${CUDA_INCLUDE_DIRS}/../lib/x64)CUDA项目正在运行,编译和运行没有任何问题。但是我在项目属性中缺少CUDAC/C++字段。当我直接在VS中创建一个VS-Solution时,我可以选择NVIDIA/CUDA8.0

c++ - 执行 cmake 目标的输出作为另一个依赖项

我有以下目录结构:.├──CMakeLists.txt├──generator│  ├──CMakeLists.txt│  └──main.cpp├──include└──src├──CMakeLists.txt└──mylib.cpp我想构建generator,然后使用generator生成将用于构建mylib的源文件。我试过这个:生成器/CMakeLists.txt:add_executable(genmain.cpp)add_custom_command(OUTPUT${CMAKE_BINARY_DIR}/generated.cppDEPENDSgenCOMMAND${CMAKE