在可执行文件(Visual Studio)中嵌入编译器选项的字符串
Embed a string of compiler options in an executable (Visual Studio)
使用gcc和Makefiles,我能够将一些编译器选项嵌入到字符串中,供可执行文件访问,如下所示:
Makefile:
CXX=/usr/bin/g++
CXXFLAGS=-ansi -Wall -c
CXXDEFINES='-DCXXCOMMAND="$(CXX) $(CXXFLAGS)"'
C++文件:
#ifdef CXXCOMMAND
std::cout << "C++ Command: " << CXXCOMMAND << std::endl;
#endif
然后我可以从可执行文件中将它打印到控制台。
在Visual Studio中可以做到这一点吗?具体来说,我希望放入优化标志(/O2,/Od等(,但我访问的越多,对我来说效果就越好。
Microsoft Visual Studio Professional 2012
英特尔C++Composer XE 2013 SP1
是的,有点像。可以在包含字符串的项目特性中定义宏,并在其中嵌入所需的任何项目特性值。但是,这些属性在用于构造命令行时,本身并不是实际的命令行标志。
例如,在C/C++预处理器项目属性中添加以下内容作为预处理器定义:
CXXCOMMAND="%(Optimization)"
则CXXCOMMAND
是要使用/O1编译的构建集的"MinSpace"
。
只是要注意在预处理器定义中只有偶数个引号。。。
相关文章:
- Win32编译器选项和内存分配
- C/C++预处理器是否可以检测一些编译器选项
- 是否有C++编译器选项允许激进地删除所有函数调用,并将参数传递给具有空体的函数
- 基于编译器选项的编译二进制路径
- Qt5 用户界面编译器:-i 选项不可用
- 将"-01"替换为"-02" 英特尔编译器选项会导致 FPE 在较小的 for 循环行程计数中抛出
- 用于捕获未赋值的 r 值的编译器选项
- 暂时将C++项目(VS2015)移至Android操作系统.编译器选项?
- VS2017 C++编译器选项会影响矩阵乘法?
- Gradle with C++:如何更改编译器选项?
- qmake中添加了编译器选项的附加makefile目标
- 在编译器选项上定义字符串
- Clang编译器选项将异常规格LAX错误视为警告
- "-D__STDC_FORMAT_MACROS" GNU 编译器选项
- 不同的输出调用clang上的malloc应用编译器选项-00和-03
- 包括查找编译器选项的外部标头
- 从已编译的可执行文件中获取编译器选项
- Protogen vs. Protoc 编译器选项
- 是否有一组标准编译器选项
- 如何在 eclipse makefile 项目中的编译器选项中设置 -std=c++0x