我非常不习惯编译和构建项目,所以如果我的编译和构建方法看起来有点奇怪,请原谅我。任何小费都欢迎。
我目前正在从事一个三维几何C++项目(这是一个动态链接库)。此项目使用外部dll,例如BOOST。因此,在构建项目时,我必须定义.dll、.lib和.h/..hpp文件所在的目录.
目前,我正在使用scon构建项目,并在SConstruct文件中直接定义这些路径。
然而,这些路径后来被重用用于其他构建操作。(在目前的情况下,用matlab编译C++代码,但这并不是重点)。
因此,,因此,我目前必须在不同的地方定义相同的路径,效率很低。此外,该项目必须很容易为其他用户设置。因此,必须在许多不同的文件中更改和更新路径是我想避免的事情。
从我的立场来看,我看到了两种选择:
因此,我的问题如下:是否有更好的方法或良好做法让用户输入编译所需的路径,满足以下条件:
possible
这样的东西很满意。
发布于 2020-01-30 15:57:51
SCons的变量可能是您在这里的最佳选择。
请参阅:https://scons.org/doc/production/HTML/scons-user.html#sect-command-line-variables
它允许从文件中读取默认值:
vars = Variables('custom.py')您必须创建一些逻辑来保存命令行中指定的任何变量。
https://stackoverflow.com/questions/59983552
复制相似问题