Rei*_*ica 3 qmake environment-variables
我正在使用分布式编译器,我需要添加-m64到CFLAGS,CXXFLAGS和LDFLAGS.通常,我在.bashrc中的定义很好,但qmake由于某种原因忽略了它们.这样做的标准方法似乎是编辑.pro文件,但我显然不想对架构进行硬编码.所以,我可以编辑.pro文件,但我无法对其中的任何内容进行硬编码.
我尝试像这样设置CXXFLAGS:
QMAKE_CXXFLAGS += $(CFLAGS)
Run Code Online (Sandbox Code Playgroud)
但它说:
Makefile:17:*递归变量`CXXFLAGS'引用自身(最终).停止.
我在发布这个问题之前就已经知道了,但是由于没有其他人对此有好的答案,我想我还是会发布它.
我需要的不是$(ENV_VAR),但是$$(ENV_VAR),所以我将这些添加到我的.pro文件中:
QMAKE_CXXFLAGS += $$(CXXFLAGS)
QMAKE_CFLAGS += $$(CFLAGS)
QMAKE_LFLAGS += $$(LDFLAGS)
Run Code Online (Sandbox Code Playgroud)
这使得qmake尊重那些环境变量.请注意,qmake使用LFLAGS而不是LDFLAGS.
这仍然不理想,因为您可能需要重新运行qmake才能更改环境变量,而不是make处理它们,但它绝对比每次都要编辑.pro文件更好.