C ++ 입문; 포함, 라이브러리 및 컴파일 프로세스에 대한 기본 이해. 아직 몇 가지 간단한 메이크 파일을 만들었습니다.
내 현재 프로젝트는 informix DB API 사용과 관련이 있으며 둘 이상의 비표준 디렉토리에 헤더 파일을 포함해야합니다. 작성하는 방법? Havent는 인터넷에서 아무것도 찾았습니다. 아마도 내가 좋은 검색어를 사용하지 않았기 때문일 것입니다.
이것은 내가 시도한 (작동하지 않는) 한 가지 방법입니다. 메이크 파일을 보여주기 위해
LIB=-L/usr/informix/lib/c++
INC=-I/usr/informix/incl/c++ /opt/informix/incl/public
default: main
main: test.cpp
gcc -Wall $(LIB) $(INC) -c test.cpp
#gcc -Wall $(LIB) $(INC) -I/opt/informix/incl/public -c test.cpp
clean:
rm -r test.o make.out
답변
모든 디렉토리 앞에 다음을 추가해야합니다 -I
.
INC=-I/usr/informix/incl/c++ -I/opt/informix/incl/public
답변
-I
각 디렉토리와 함께 사용해야 합니다. 그러나 (GNU) make ‘s를 사용하면 여전히 공백으로 디렉토리를 구분할 수 있습니다 foreach
.
INC=$(DIR1) $(DIR2) ...
INC_PARAMS=$(foreach d, $(INC), -I$d)