2013-03-28 2 views
0

나는 이것이 속는 사람이라는 것을 거의 확신하지만, 나는이 질문을 연구하기 시작하는 기초 어휘조차 가지고 있지 않다.링커 옵션을 내보내는 방법은 무엇입니까?

/etc/bash.bashrcexport 개의 변수로 영구적으로 만들고 싶은 몇 가지 g++ 링커 플래그가 있습니다.

그것은 MySQL의 커넥터 C++ https://stackoverflow.com/a/11879650/1382306에 대한 https://stackoverflow.com/a/15469310/1382306-lmysqlcppconn ++ 웹 소켓이 대답으로 -D_WEBSOCKETPP_CPP11_STL_ -D_WEBSOCKETPP_NO_CPP11_REGEX_ -lboost_regex -lboost_system이 작업을 수행 할 수 있습니까?

만약 그렇다면 방법을 알려주십시오. 그렇지 않다면, 시작하는 방법을 보여주십시오.

+0

컴파일 할 때'make'를 사용하거나'g ++'를 직접 호출하고 있습니까? – teppic

+0

@teppic'g ++'직접. 찾고 주셔서 감사합니다! –

+0

아, make와 마찬가지로 LDFLAGS 만 설정할 수 있습니다. 하나의 옵션은 bash 함수 나 별칭을 만들어 동일한 일을하는 환경 변수를 포함시키는 것입니다. – teppic

답변

1

make을 대신 사용하면 다양한 표준 환경 변수가 컴파일러로 전송됩니다. 하나는 LDFLAGS, 그래서 예를 들면 :

$ export LDFLAGS='-Wl,--print-map' 
$ make foo.cpp 
g++ -Wl,--print-map foo.cpp -o foo  // default rule 
[...] 

링커 플래그는 -Wl 후 쉼표로 구분 전달할 수 있습니다.

또는 적절한 환경 변수를 사용하여 g++을 호출하는 별칭 또는 셸 함수를 만들 수 있습니다.

관련 문제