草庐IT

cmake-custom-command

全部标签

c++ - 如何使用 cmake 设置 GDB 调试标志?

我尝试使用设置调试标志setcmake中的命令,但我不确定要添加什么。我被告知像DEBUG=true这样的事情,但到目前为止我无法找到要设置的正确标志。 最佳答案 如果你想在编译时进行调试(包括源信息,即-g),请使用cmake-DCMAKE_BUILD_TYPE=Debug如果你想构建一个发布版本,你可以使用cmake-DCMAKE_BUILD_TYPE=RelWithDebInfo 关于c++-如何使用cmake设置GDB调试标志?,我们在StackOverflow上找到一个类似的问

c++ - 如何使用 cmake 设置 GDB 调试标志?

我尝试使用设置调试标志setcmake中的命令,但我不确定要添加什么。我被告知像DEBUG=true这样的事情,但到目前为止我无法找到要设置的正确标志。 最佳答案 如果你想在编译时进行调试(包括源信息,即-g),请使用cmake-DCMAKE_BUILD_TYPE=Debug如果你想构建一个发布版本,你可以使用cmake-DCMAKE_BUILD_TYPE=RelWithDebInfo 关于c++-如何使用cmake设置GDB调试标志?,我们在StackOverflow上找到一个类似的问

c++ - 如何让 CMake 基于 GCC 版本通过 std=c++14/c++1y 或 c++17/c++1z?

GCC4.x不接受C++14代码的--std=c++14开关-它需要--std=c++1y代替。更高版本采用--std=c++1z但(可能)不是--std=c++17尚未设置(在2016年编写).也许C++11也有类似的问题。CMake是否有一些工具(可能作为一个模块)来根据GCC版本传递正确的开关? 最佳答案 当想要指定特定的C++版本时,推荐使用CMake3.1及更高版本执行此操作的方法是使用CXX_STANDARD、CXX_STANDARD_REQUIRED和CXX_EXTENSIONS目标属性,或它们的变量等效项以指定目标默

c++ - 如何让 CMake 基于 GCC 版本通过 std=c++14/c++1y 或 c++17/c++1z?

GCC4.x不接受C++14代码的--std=c++14开关-它需要--std=c++1y代替。更高版本采用--std=c++1z但(可能)不是--std=c++17尚未设置(在2016年编写).也许C++11也有类似的问题。CMake是否有一些工具(可能作为一个模块)来根据GCC版本传递正确的开关? 最佳答案 当想要指定特定的C++版本时,推荐使用CMake3.1及更高版本执行此操作的方法是使用CXX_STANDARD、CXX_STANDARD_REQUIRED和CXX_EXTENSIONS目标属性,或它们的变量等效项以指定目标默

c++ - 通过 CMake 实现 Qt 项目

我正在尝试通过Cmake构建和运行非常简单和基本的Qt示例,删除.pro文件。下面是Qt项目的代码(自动生成的Qt项目的目录结构是Cmake(myprojectname)├──headers│  └──mainwindow.h├──sources│  ├──main.cpp│  └──mainwindow.cpp└──forms└──mainwindow.ui主窗口.h#ifndefMAINWINDOW_H#defineMAINWINDOW_H#includenamespaceUi{classMainWindow;}classMainWindow:publicQMainWindow{Q

c++ - 通过 CMake 实现 Qt 项目

我正在尝试通过Cmake构建和运行非常简单和基本的Qt示例,删除.pro文件。下面是Qt项目的代码(自动生成的Qt项目的目录结构是Cmake(myprojectname)├──headers│  └──mainwindow.h├──sources│  ├──main.cpp│  └──mainwindow.cpp└──forms└──mainwindow.ui主窗口.h#ifndefMAINWINDOW_H#defineMAINWINDOW_H#includenamespaceUi{classMainWindow;}classMainWindow:publicQMainWindow{Q

c++ - Cmake 找不到使用 "link_directories"的库

我是Ubuntu,我正在学习cmake和make,只是尝试一个简单的例子。我有两个目录:src和build.在src,我有两个文件:main.cpp,和CMakeLists.txt,其中有(仅)以下文本:add_executable(testmain.cpp)link_directories(/usr/lib/x86_64-linux-gnu)target_link_libraries(testprotobuf)在/usr/lib/x86_64-linux-gnu,有一个名为libprotobuf.so的共享库,我想链接。我的main.cpp通过包含相关的头文件#include使用此库

c++ - Cmake 找不到使用 "link_directories"的库

我是Ubuntu,我正在学习cmake和make,只是尝试一个简单的例子。我有两个目录:src和build.在src,我有两个文件:main.cpp,和CMakeLists.txt,其中有(仅)以下文本:add_executable(testmain.cpp)link_directories(/usr/lib/x86_64-linux-gnu)target_link_libraries(testprotobuf)在/usr/lib/x86_64-linux-gnu,有一个名为libprotobuf.so的共享库,我想链接。我的main.cpp通过包含相关的头文件#include使用此库

c++ - 带有包含和源路径的 CMake - 基本设置

我正在尝试设置一个看起来像我自己的项目的测试项目,只是为了让事情首先工作,它看起来像这样:/MainProject/inc/main.h/MainProject/src/main.cpp/LibProject/inc/test.h/LibProject/src/test.cpp我找到了一些教程,但是当我有inc和src文件夹时,我不知道如何设置它?CMakeLists.txt文件的外观如何?我会在/每个项目文件夹中有一个吗?好像我不需要在inc和src文件夹中有一个? 最佳答案 每个源子目录都需要一个CMakeLists.txt。您

c++ - 带有包含和源路径的 CMake - 基本设置

我正在尝试设置一个看起来像我自己的项目的测试项目,只是为了让事情首先工作,它看起来像这样:/MainProject/inc/main.h/MainProject/src/main.cpp/LibProject/inc/test.h/LibProject/src/test.cpp我找到了一些教程,但是当我有inc和src文件夹时,我不知道如何设置它?CMakeLists.txt文件的外观如何?我会在/每个项目文件夹中有一个吗?好像我不需要在inc和src文件夹中有一个? 最佳答案 每个源子目录都需要一个CMakeLists.txt。您