草庐IT

cmake-custom-command

全部标签

c++ - 使用 CMake 的 OpenGL + Qt

我有一个使用*.pro文件创建的Qt项目,我需要将其迁移到CMakeLists。该项目使用简单的OpenGL动画来显示一只手的3D模型。我已经将其更改为使用CMake,但我遇到了2个问题。(程序编译通过但运行不正常)程序的内存消耗从使用*.pro文件的20-50MB增加到使用CMake的1.3GB(可能是某些库被完全加载或其他原因??)与使用*.pro文件的速度(大约每秒3帧)相比,该程序运行得非常慢(例如每5-10秒1帧)问题是,我做错了什么,我该如何解决?这是*.pro文件:QT+=coreguiopenglTARGET=RGBD_3D_ViewerTEMPLATE=appSOUR

c++ custom UI ToolKit -- 跨平台抽象层的选项

作为跨平台文本编辑器SublimeText2的粉丝,我一直在研究它的开发方式。开发人员注意到它是99%的c++和一些用于linux的GTK,并且它使用他称之为“SublimeGUI”的自定义UI工具包。这是来自开发者的引述SublimeText2itselfusesacustomUItoolkit.Therearealotofappswherethismaynotmakesense,butit'snotsuchanunreasonablechoiceforSublimeText,whereIalwaysknewthatalotoftheUIcontrolsweregoingtohave

c++ - CMake:将依赖项添加到 IMPORTED 库

我有一个供应商提供的库存档,我已将其导入到我的项目中:add_library(lib_fooSTATICIMPORTEDGLOBAL)set_target_properties(lib_fooPROPERTIESIMPORTED_LOCATION"${CMAKE_CURRENT_LIST_DIR}/vendor/foo.a")set_target_properties(lib_fooPROPERTIESINTERFACE_INCLUDE_DIRECTORIES"${CMAKE_CURRENT_LIST_DIR}/vendor")当我尝试使用此库链接应用程序时,出现undefinedre

c++ - Emscripten - cmake - 在 CMakeList 文件中传递 emscripten 选项

如何使用emcmakecmake并传递emscripten命令行选项?C++/CMake的新手,但在谷歌上找不到任何有用的东西。所以也许这个问题只是愚蠢的,在那种情况下我道歉。我可以使用以下CMakeList.txt文件构建我的项目(非webassembly/普通桌面)cmake_minimum_required(VERSION3.7)project(Engine)set(CMAKE_CXX_STANDARD11)set(CMAKE_MODULE_PATH${CMAKE_MODULE_PATH}"${PROJECT_SOURCE_DIR}/cmake")set(CMAKE_INCLUD

c++ - CMake:包含目录的排序(如何混合基于系统和用户的包含路径?)

我有一个CMake项目,其中包含并链接到两个库,比如A和B(实际上它不止两个,其中一个是boost东西,但这在这里并不重要)。两者都通过FindSomething.cmake脚本定位,这些脚本(正确地)填充标准CMake变量,以便通过添加目录INCLUDE_DIRECTORIES(${A_INCLUDE_DIRS})INCLUDE_DIRECTORIES(${B_INCLUDE_DIRS})然后链接通过完成TARGET_LINK_LIBRARIES(mytarget${A_LIBRARIES}${B_LIBRARIES})现在,问题是这两个库都可以驻留在基于用户的位置或系统目录中(顺便

c++ - 如何在 CMake 中构建具有 2 个不同变量值的程序

我最近将我的Qt项目从qmake移植到了CMake。我的主程序包含一个值,该值取决于#define指令。我想通过CMake在外部指定define指令,并构建同一可执行文件的3个不同名称的版本。我应该怎么做?我看过set_target_properties但这只适用于库而不适用于可执行文件。例如我想要下面的程序,intmain(){cout它基于BUILDTYPE"define"编译成3种不同的风格(3种可执行文件)例如在我的CMakeLists.txt我想指定add_executable(myAppV1-DBUILDTYPE=1)add_executable(myAppV2-DBUIL

c++ - cmake 和 GenerateExportHeader

我正在尝试使用cmake中的GenerateExportHeader模块。我的CmakeLists.txt的一部分:add_compiler_export_flags()add_library(guiSHARED${gui_CPP}${gui_HPP})generate_export_header(gui)它对gui项目本身很有效,但是当我尝试在另一个项目中包含gui的.h文件时,找不到#include"gui_export.h"。这是显而易见的,因为gui_export.h是在gui的构建目录中创建的,它不在其他项目的包含路径中。简单的解决方案是将gui的构建目录添加到其他项目的包含

c++ - Cmake 找不到 Boost 库

我是C++中Cmake和boost库的新手。我正在做一个需要boost和Cmake的项目。我使用的是Cmake2.8.11版、MSVisualStudio2013和Boost1.54.0。当我尝试从Cmake进行配置时,出现以下错误:CMakeErroratC:/ProgramFiles/CMake2.8/share/cmake-2.8/Modules/FindBoost.cmake:1106(message):UnabletofindtherequestedBoostlibraries.Boostversion:1.54.0Boostincludepath:D:/boost_1_54

c++ - 指定 cmake 如何创建 visual studio 项目

我正在为我的项目设置cmake,并且我已经为它设置了一个测试项目。当它生成我的visualstudio2010项目时,我想将其作为我之前的项目。它创建了一个我不想要的ALL_BUILD和ZERO_CHECK项目。它将.h文件放入ExternalDependencies文件夹。我想要一个包含所有.h文件的IncludeFiles文件夹。我还想在不同的过滤器下对一些文件进行分组。就像在我的核心库中一样,我想将所有与数学相关的文件分组到一个文件夹中,并将所有与事件管理相关的文件分组到另一个文件夹中。在文件系统上,它将项目文件放在/Lib/src中。可能是因为我已将其组织在代码文件夹中,但我不

c++ - 如何将 CMake 包含和库添加到 Visual Studio 解决方案?

我使用CMake生成VisualStudio2010项目和解决方案文件。其实我可以设置不同的设置,如警告级别、增量构建标志等。来自CMake。但是我不能设置额外的包含和库,列在VC++目录配置选项卡中。实际上我必须手动设置这些目录。这是愚蠢的无聊...我尝试设置以下CMake变量:CMAKE_INCLUDE_PATH、INCLUDE_DIRECTORY但什么也没发生。如果我打开项目,解决方案的附加包含目录始终为空(仅给出标准MSVE设置)。我也厌倦了在可执行文件创建后设置这个变量,但这也没有效果。这就是我直接在cmake的标题中所做的文件:CMAKE_MINIMUM_REQUIRED(