草庐IT

language-cmake

全部标签

c++ - 如何使用 CMake 生成面向 Windows XP 的 Visual Studio 2012 项目?

随着VisualStudio2012Update1的发布,我希望构建一个C++项目来支持WindowsXP。有没有办法使用CMake生成针对WindowsXP的项目?基本上CMake需要生成一个使用PlatformToolset=VisualStudio2012-WindowsXP(v110_xp)的项目文件。 最佳答案 根据http://www.cmake.org/Bug/view.php?id=10722现在(很快)答案是肯定的。FixedinVersionCMake2.8.11Anew"generatortoolset"fea

c++ - 如何使用 CMake 生成面向 Windows XP 的 Visual Studio 2012 项目?

随着VisualStudio2012Update1的发布,我希望构建一个C++项目来支持WindowsXP。有没有办法使用CMake生成针对WindowsXP的项目?基本上CMake需要生成一个使用PlatformToolset=VisualStudio2012-WindowsXP(v110_xp)的项目文件。 最佳答案 根据http://www.cmake.org/Bug/view.php?id=10722现在(很快)答案是肯定的。FixedinVersionCMake2.8.11Anew"generatortoolset"fea

c++ - CMake 中的平台检测

我从boost::asio中添加了一些功能,这引发了一些编译器“警告”:Pleasedefine_WIN32_WINNTor_WIN32_WINDOWSappropriately.该问题已解决here.我想让CMake检测我何时在Windows上构建并做出适当的定义或命令行参数。 最佳答案 在CMakeLists.txt文件中你可以这样做:IF(WIN32)#setstuffforwindowsELSE()#setstuffforothersystemsENDIF() 关于c++-CMa

c++ - CMake 中的平台检测

我从boost::asio中添加了一些功能,这引发了一些编译器“警告”:Pleasedefine_WIN32_WINNTor_WIN32_WINDOWSappropriately.该问题已解决here.我想让CMake检测我何时在Windows上构建并做出适当的定义或命令行参数。 最佳答案 在CMakeLists.txt文件中你可以这样做:IF(WIN32)#setstuffforwindowsELSE()#setstuffforothersystemsENDIF() 关于c++-CMa

c++ - 如何将 QT 国际化集成到 CMake?

大家好,我正在尝试将QT国际化与CMake结合使用。我已将我的cmake文件配置如下:#Internalization-thisshouldgeneratecore_jp.ts?SET(rinzo_core_TRANSLATIONSi18n/core_jp.ts)#thesearemysourcefilesintheprojectSET(FILES_TO_TRANSLATE${rinzo_core_srcs}${rinzo_core_moh_srcs})QT4_CREATE_TRANSLATION(QM_FILES${FILES_TO_TRANSLATE}${rinzo_core_TR

c++ - 如何将 QT 国际化集成到 CMake?

大家好,我正在尝试将QT国际化与CMake结合使用。我已将我的cmake文件配置如下:#Internalization-thisshouldgeneratecore_jp.ts?SET(rinzo_core_TRANSLATIONSi18n/core_jp.ts)#thesearemysourcefilesintheprojectSET(FILES_TO_TRANSLATE${rinzo_core_srcs}${rinzo_core_moh_srcs})QT4_CREATE_TRANSLATION(QM_FILES${FILES_TO_TRANSLATE}${rinzo_core_TR

c++ - 使用 CMake 从二进制文件编译和添加目标文件

我正在用C++编写一个Excel文件生成器。我拥有工作所需的一切,但我仍然依赖于一个外部的空.xlsx文件,我根据需要解压缩、迭代并添加数据以创建最终文件。我想通过将.xlsx文件转换为可执行文件的.rodata部分中的二进制blob来消除这种依赖关系,方法是首先将其转换为像这样的目标文件:$ld-r-bbinary-otemplate.otemplate.xlsx$objcopy--rename-section.data=.rodata,alloc,load,readonly,data,contentstemplate.otemplate.o我从博文中获得了这些信息http://ww

c++ - 使用 CMake 从二进制文件编译和添加目标文件

我正在用C++编写一个Excel文件生成器。我拥有工作所需的一切,但我仍然依赖于一个外部的空.xlsx文件,我根据需要解压缩、迭代并添加数据以创建最终文件。我想通过将.xlsx文件转换为可执行文件的.rodata部分中的二进制blob来消除这种依赖关系,方法是首先将其转换为像这样的目标文件:$ld-r-bbinary-otemplate.otemplate.xlsx$objcopy--rename-section.data=.rodata,alloc,load,readonly,data,contentstemplate.otemplate.o我从博文中获得了这些信息http://ww

c++ - 使用 CMake 打开链接器标志

使用CMake生成VS2010目标时,我希望打开/LTCG标志(如果可能,仅适用于release+releasewithdebinfo,但如果它打开用于调试构建也可以)。如何修改链接器标志?add_definitions()不起作用,因为那只会修改编译器标志。是的,我已经将它包装在if(MSVC)中。如何修改链接器标志? 最佳答案 您可以使用#pragmacomment(linker,...)修改MSC中的链接器标志但是,如果您想在构建过程中使用cmake进行此操作,则需要知道以下名称:CMAKE_EXE_LINKER_FLAGSC

c++ - 使用 CMake 打开链接器标志

使用CMake生成VS2010目标时,我希望打开/LTCG标志(如果可能,仅适用于release+releasewithdebinfo,但如果它打开用于调试构建也可以)。如何修改链接器标志?add_definitions()不起作用,因为那只会修改编译器标志。是的,我已经将它包装在if(MSVC)中。如何修改链接器标志? 最佳答案 您可以使用#pragmacomment(linker,...)修改MSC中的链接器标志但是,如果您想在构建过程中使用cmake进行此操作,则需要知道以下名称:CMAKE_EXE_LINKER_FLAGSC