在这个帖子中
有人说CFLAGS和LDFLAGS不适用于每个配置脚本。为什么?我想对此有更多的解释,而不仅仅是声明;)在哪种情况下工作,哪种情况不适用?原因是什么?他(接受的答案)也提到你应该使用CPATH和LIBRARY_PATH。 CFLAGS和CPATH有什么区别? 同样,LDFLAGS和LIBRARY_PATH之间有什么区别?
最后一个问题:当我使用LDFLAGS =无论如何时,我是否不能覆盖开发者本人可能已经做出的以前的LDFLAGS定义?语法不应该像./configure LDFLAGS + = / myPath?
答案 0 :(得分:2)
CFLAGS
,LDFLAGS
/ ./configure
使用的{p> CPATH
/ LIBRARY_PATH
。如果./configure
写好,它首先从环境中获取CFLAGS
/ LDFLAGS
,然后向其添加任何路径并调用编译器/链接器。在这种情况下,您可以使用
CFLAGS="-I/usr/local/include" LDFLAGS="-L/usr/local/lib" ./configure
现代./configure
可以接受CFLAGS
/ LDFLAGS
作为参数
./configure CFLAGS="-I/usr/local/include" LDFLAGS="-L/usr/local/lib"
但如果./configure
不好或旧,只有CPATH
/ LIBRARY_PATH
可以提供帮助
CPATH=/usr/local/include LIBRARY_PATH=/usr/local/lib ./configure
CPATH=/usr/local/include LIBRARY_PATH=/usr/local/lib make
Microsoft Visual C ++编译器CPATH
/ LIBRARY_PATH
的替代值为INCLUDE
/ LIB
。