草庐IT

cmake-custom-command

全部标签

windows - cmake add_subdirectory 错误仅适用于 cmake 命令行,但不适用于 Windows 上的 cmake-gui(在驱动器号的根目录下 check out 源)

我正在研究使用CMake构建的3dtk。您可以在此处找到其CMakeLists.txt:https://sourceforge.net/p/slam6d/code/HEAD/tree/trunk/CMakeLists.txt它在几个地方使用了add_subdirectory指令并且从不提供第二个参数(binary_dir)。在linux上调用ccmakeout-of-tree或在windows上使用cmake-gui时这似乎没有问题,因为在这两种情况下,项目配置成功.但是当我在命令提示符下在Windows上运行纯cmake时,我会遇到如下几个错误:CMakeErroratZ:/CMak

node.js - 使用 PowerShell Invoke-Command and Process 让标准输出出现在控制台上

我有一个使用Invoke-Command的Powershell脚本。这是被调用的代码:$scriptblock={$process=New-Objectsystem.Diagnostics.Process$si=New-ObjectSystem.Diagnostics.ProcessStartInfo$si.FileName=$cmd$si.Arguments=$cmd_args$si.UseShellExecute=false$si.RedirectStandardOutput=true$process.StartInfo=$si$process.Start()$processId=

windows - 如何从 cmake 执行当前的 MSbuild?

我想使用ExternalProject_add构建一个应用程序。它没有CMake,我必须使用MSbuild。如何获取任何给定MSVC项目生成器的MSbuild位置? 最佳答案 如果您使用VS生成器,它会设置一个包含所用MSBuild(https://cmake.org/cmake/help/v3.0/variable/CMAKE_VS_MSBUILD_COMMAND.html)的变量。 关于windows-如何从cmake执行当前的MSbuild?,我们在StackOverflow上找到

windows - CMake 找不到自定义命令 "ls"

我尝试为我的CLion项目运行一些基本命令,但它就是行不通。这是我的CMake设置。cmake_minimum_required(VERSION3.6)project(hello)set(CMAKE_CXX_FLAGS"${CMAKE_CXX_FLAGS}-std=c++11")set(SOURCE_FILESmain.cpp)add_executable(hello${SOURCE_FILES})add_custom_command(OUTPUThello.outCOMMANDls-lhelloDEPENDShello)add_custom_target(run_hello_outD

c++ - 如何最好地告诉 CMake 在哪里可以找到 dll

我有一个简单的项目结构,源自令人惊叹的教程https://rix0r.nl/blog/2015/08/13/cmake-guide/看起来如下:-src-CMakeLists.txt-mylib-include/mylib/mylibclass.h-src/mylibclass.cpp-CMakeLists.txt-myapp-src/myapp.cpp-CMakeLists.txt顶级CMakeLists.txt包含:cmake_minimum_required(VERSION3.6)project(sample_projectVERSION0.1LANGUAGESCXX)set(B

windows - 为什么在 Windows 上的 CMake 中构建时会出现重复的符号链接(symbolic link)器错误?

我有一个CMake设置,可以将4个静态库和1个共享库链接到一个顶级共享库(我们称之为Top.dll)。除了一件事,这将工作正常。我有一个模块定义文件,表示哪些符号应该公开。Top.dll构建,到目前为止一切顺利。现在,当我尝试通过CMake将可执行文件与Top.dll链接时,我得到每个公共(public)符号的链接器错误,声称它在两个地方定义(Top.dll和实际定义它的静态库),即使Top.dll不包含自己的原始定义。如果我删除静态库,那么我会按预期得到未解析的符号错误。如果我删除模块定义文件,我会得到相同的结果。似乎它是零次或两次。我在这里缺少一些设置吗?我不认为我以非基本方式使用

windows - Windows 10 上的 "/bin/sh: C:Perl64binperl.exe: command not found"

我正在尝试使用Code::blocks和Mingw在Windows1064位机器上构建OpenSSL。我已经安装了ActivePerl和MSYS。我能够执行perlConfiguremingw没有错误。问题在于执行MAKE命令。无论我使用的是windows命令提示符还是MSYS,我总是得到以下错误C:\DiscoD\openssl>makeCC=i586-mingw32msvc-gccRANLIB=i586-mingw32msvc-ranlibC:\Perl64\bin\perl.exe"-I."-Mconfigdata"util\dofile.pl"\"-oMakefile"cryp

windows - Apache prunsrv : error parsing command line

我正在尝试将Java程序作为Windows服务启动。谷歌搜索我找到了一个install.bat来安装和启动我的服务。正如我在Internet上找到的那样,我已将prunsrv.exe重命名为IdentificationService.exe。D:\IdentificationService\bin\IdentificationService.exe//IS//IdentificationServiceD:\IdentificationService\bin\IdentificationService.exe//US//IdentificationService--Install=D:\

windows - 批处理脚本错误 "The syntax of the command is incorrect"

我有一个批处理文件在特定行抛出语法错误。@ECHOONCD%~dp0SETXDA_HOME_DIR=%CD:~0,-4%SET"JAVAHOME=%JAVA_HOME%"SETXDA_CONFIG_PROPERTIES=%XDA_HOME_DIR%\config\xda-config.propertiesIF"%JAVAHOME%"==""(ECHOJAVA_HOMEnotsetGOTOEND)注意:这不是完整的脚本。我只发布了其中的一部分。下面是抛出的错误:是什么导致了语法错误消息? 最佳答案 错误来自这里:IF"%JAVAHOM

Windows 批处理 :Count the number of files deleted using forfiles command

我编写了一个简单的批处理作业,使用forfiles将文件从一个文件夹复制到另一个文件夹,这些文件早于x天。但是我需要计算已复制的文件数。我尝试了多种方法来做到这一点,但没有成功。任何人都可以帮助我度过难关吗?@EchooffEchoStartingthescriptforcopyingfilestootherfolder.setdt=%date:~10,4%-%date:~4,2%-%date:~7,2%_%time:~0,2%%time:~3,2%%time:~6,2%setfilesMovedCount=0forfiles/pC:\symphonybackup\symphonyba