Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/142.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 在CMake中读取文件的命令_C++_Linux_Cmake - Fatal编程技术网

C++ 在CMake中读取文件的命令

C++ 在CMake中读取文件的命令,c++,linux,cmake,C++,Linux,Cmake,有人知道在VisualStudio中使用CMake读取文件的方法吗?我有一个跨平台的应用程序。在Visual Studio 2017中,使用Linux中的工具链进行编译,在Hyper-V中运行 我在我的一个H文件中有一个简单定义的版本号,我希望读取、解析该文件,并将版本号附加到已编译程序的名称中(例如,company_app_1.2.3) 我似乎无法使file(READ)命令正常工作。Visual Studio正在使用CMake版本3.11。我假设无论使用的是什么g++工具链,CMake都可以做

有人知道在VisualStudio中使用CMake读取文件的方法吗?我有一个跨平台的应用程序。在Visual Studio 2017中,使用Linux中的工具链进行编译,在Hyper-V中运行

我在我的一个H文件中有一个简单定义的版本号,我希望读取、解析该文件,并将版本号附加到已编译程序的名称中(例如,company_app_1.2.3)

我似乎无法使file(READ)命令正常工作。Visual Studio正在使用CMake版本3.11。我假设无论使用的是什么g++工具链,CMake都可以做到这一点

我试过的命令:

#Read version
-file(READ FileNameHere $sValue)
我得到的Visual Studio错误:

1>/bin/sh: -c: line 0: syntax error near unexpected token `READ'
MakeFile没有一个.txt扩展名,遵循VisualStudio的命名约定,但是如果有优势(intellisense可用,或者关于错误的更多信息),我愿意重命名它


提前感谢您的回复。

您收到的错误表明您正在尝试使用带有shell的CMake命令解释文件。这行不通。如果要使用CMake解释文件,请使用:
CMake-P
。谢谢。我将制作一个脚本并从那里运行命令。