草庐IT

cmake-custom-command

全部标签

c++ - CMake:在 Windows 上找不到编译器

当我运行它时:cmake-G"VisualStudio152017Win64"我有这个输出:--TheCcompileridentificationisunknown--TheCXXcompileridentificationisunknownCMakeErroratCMakeLists.txt:2(project):NoCMAKE_C_COMPILERcouldbefound.CMakeErroratCMakeLists.txt:2(project):NoCMAKE_CXX_COMPILERcouldbefound.--Configuringincomplete,errorsoccu

c++ - 尽管设置了前缀路径,但 cmake find_packages(QT5) 不使用正确版本的 QT 二进制文件

我正在寻找如何使用clionIDE在cmake中编译QT动态链接项目。我遇到了以下项目设置的问题。我关注了this教程、编译并使用mingw32位和一个工具包运行它,该工具包链接到使用mingw-w64编译的Qt(其qmake文件位于C:/msys64/mingw64/bin中)我的项目设置如下所示:CMakeLists.txtmain.cppnotepad.cppnotepad.hnotepad.ui在clion中,我使用了以下cmake文件来构建这个项目。cmake_minimum_required(VERSION3.7)set(CMAKE_PREFIX_PATHC:/msys64

python - 在 Windows 上使用 CMake 编译 Tensorflow 失败,文件 version_info.cc 未找到

类似于this问题和相关that问题,我想从源代码在Windows上构建Tensorflow以启用deactivatedbydesigntosupportasmanymachinesaspossible的CPU优化.从建议BazelisnotsupportedonWindows的官方文档,我得出结论,CMake构建是可行的方法。我找到了CMake说明here,我假设通过查看Tagv1.1.0,我可以构建它。但是按照说明操作后,我收到以下错误消息:BuildFAILED."C:\Users\Alex\Repositories\tensorflow\tensorflow\contrib\c

windows - 在 Windows 上使用 CMake 和相对路径创建交叉编译的存档(静态库)

使用CMake,我能够交叉编译并创建一个依赖于其他静态库的静态库。但是,生成的静态库不包含其他静态库的“内容”。因此,我想创建一个存档,即静态库,它实际上包含所有内容(所有目标文件)。为此,我尝试在CMakeLists.txt中使用以下指令:add_custom_target(combinedALLCOMMAND${CMAKE_AR}rclibcombined.a$$$)CMAKE_AR设置为我的交叉编译器(存档器?)所在的绝对路径;它的值类似于:c:/arm/arm-none-eabi-ar.exe但是,当我尝试构建项目(make&&makeinstall)时,我收到以下错误:'..

windows - 在 x64 Windows 上使用 CMake、Ninja 和 Clang 构建 x86 应用程序

我想在我的x64Windows机器上构建一个x86Windows应用程序。我将CMake、Ninja、clang-cl、lld-link和VSBuildTools2017与以下CMakeLists一起使用cmake_minimum_required(VERSION3.9)project(TestCXX)add_library(TestLibSTATIC"")target_include_directories(TestLibPUBLICTestLib/inc)target_sources(TestLibPRIVATETestLib/src/Flop.cppTestLib/src/tes

c++ - 我如何告诉 cmake 找到 Windows Media Foundation?

要让cmake链接到(例如)boost::thread我可以这样写:find_package(BoostREQUIREDCOMPONENTSthread)然后:target_link_librarie(${target}PRIVATEBoost::thread)如何使用WindowsMediaFoundation库执行此操作? 最佳答案 有CMake处理依赖关系的三种基本方法:CMake附带一个bunchoffindmodulesforfindingexternallibraries.您对find_package(Boost...)

windows - 在 cmake 中强制构建 x64 位

我有一个不应在x86上以32位模式构建的CMake项目,而且我终其一生都想不出如何防止这种情况发生。现在,它出现cmake,默认情况下在Windows上采用32位构建。如何让我的CMake项目始终构建64位变体,无需将命令行参数传递给CMake?或者,如果CMake试图构建为32位,我该如何让CMake中止? 最佳答案 您可以将以下代码添加到我们的CMakeLists.txt以确保只允许x64构建:if(NOTCMAKE_SIZEOF_VOID_PEQUAL8)message("Pleaseswitchtox64build.")re

c++ - CMake 生成的程序无法在 Windows 上链接 : tries to link to non-existent file

我正在尝试在Windows上编译一个非常简单的测试程序,但不断收到链接器错误。要链接的程序如下:#includeintmain(){boost::asio::io_contextcontext;}虽然CMakeLists.txt看起来像这样:cmake_minimum_required(VERSION3.10FATAL_ERROR)project(windows-test)SET(CMAKE_CXX_STANDARD17)find_package(Boost1.6.7COMPONENTSsystem)include_directories("${Boost_INCLUDE_DIRS}"

windows - Windows批处理标签是(:label) used with call and goto commands case-sensitive?

标题中的问题不需要更多细节。 最佳答案 没有。答案也不需要更多细节。 关于windows-Windows批处理标签是(:label)usedwithcallandgotocommandscase-sensitive?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/2610353/

c++ - 如何使用 CMake 将 NMake 从 VS9 切换到 VS10

在我的电脑上,我有VS9和VS10用于测试目的。当我使用VS9或VS10配置我的项目时,CMake没有问题。现在我想用NMake生成一个项目,但是在配置过程中它采用VS9作为默认的C编译器和CXX编译器,而我想要VS10。有谁知道我如何执行这样的操作吗?即我想从Projects>cmake..-G"NMakeMakefiles"-DCMAKE_BUILD_TYPE=Debug...--CheckforworkingCcompiler:C:/ProgramFiles(x86)/MicrosoftVisualStudio9.0/VC/bin/cl.exe--CheckforworkingC