【发布时间】:2018-10-01 18:19:04
【问题描述】:
我的CMake 脚本在我的 C++ 代码中生成了一些我想要的信息。这些信息是我希望用户能够看到的一些文本。
我知道我可以在我的 C++ 代码中定义变量,例如:@mySpecialVariable@。如果这些变量是由 CMake 定义的,那么在使用 configure_file 时,源文件会被 CMake 定义的 mySpecialVariable 的值修改。
我的问题是我从不使用configure_file。我的构建目录与我的源目录是分开的,但源文件永远不会从源目录复制(即configure_file)到构建目录中。
在不使用configure_file 的情况下有没有办法做到这一点?
【问题讨论】:
-
我不清楚为什么需要避免使用
configure_file。如果这是问题所在,它不必将其结果放在构建目录中(看起来可能是这样?) -
我不能使用
configure_file,因为构建系统相当复杂,我不能搞乱它目前的工作方式。 -
在此处查看接受的答案。如果不出意外,它会给你一些谷歌的东西。你想设置一个预处理器宏。我从来没有将它用于字符串,但看起来这是可行的:stackoverflow.com/questions/9639449/…
-
真的很难理解,你想从我们这里得到什么。您说您有一些 文本生成问题,但对这个问题的唯一描述是
configure_file可以工作……但由于未知原因 而不能工作。有了这么少的信息,您要求我们提出一些建议。 (你没有描述为什么configure_file不适合你并不是责备。你的问题本身并不清楚。) -
@zzxyz 感谢您的尝试。我也在尝试各种事情,但没有运气。我想我会尝试调整我们的构建系统,看看我是否能让它以这种方式工作。