【发布时间】:2012-12-26 11:36:09
【问题描述】:
我目前正在尝试编译一个使用 openssl 头文件的 C++ 源文件,但编译器使用位于 /usr/include/openssl 的系统 openssl 头文件,我希望它使用 /usr/local/openssl/1.0。 1c/include/openssl 包含路径。我可能必须给出指向最后一条路径的“-I”标志,但它会使系统保持不变。
g++ -o src/base64.o -c -O3 -arch x86_64 -Iinclude/cryptoplus -I/usr/local/openssl/1.0.1c/include/openssl src/base64.cpp
我的环境变量似乎没有强制使用 /usr/include/openssl 包含目录,并且我正在使用 OSX 10.8,抱歉,如果这是新手问题,但它有点令人不安。
提前,谢谢!
【问题讨论】:
-
可能是因为默认情况下编译器使用标志在 /usr/include/ 和子目录中查找头文件 - 我您只是说它可能也使用了其他路径。尝试在 C++ 源文件中指向您需要的标头的直接路径,例如 #include /local/openssl/1.0.1c/include/openssl/name_of_file.h> - 这也不是好方法
-
我认为
-I指定的路径应该优先于系统包含路径。
标签: c++ osx-mountain-lion