我正在使用g ++(和c ++)中的makefile依赖生成选项,如下所示:
c++ -I/opt/local/include -MM main.cc
在文件上,main.cc:
#include <iostream>
#include <boost/shared_ptr.hpp>
#include "projects/all_projects.h"
int main(int argc, const char * argv[])
{
// ...
}
-MM选项可以防止为iostream生成依赖项,这对于shared_ptr.hpp是好的,但不是。有没有办法可以阻止boost头的依赖关系生成(甚至是尖括号中的任何头文件)?
我读到早期版本的gcc用于将尖括号中的任何标题视为系统标题,但现在不再是这种情况了。
答案 0 :(得分:2)
使用c++ -isystem /opt/local/include -MM main.cc
(和man gcc
:-))