go build 옵션
[1. 개요] go 로 코드 작성 후, 컴파일 시 유용한 옵션 정리 [2. 예제] trimpath go build --trimpath go 언어에서 panic() 호출 시, 예외가 발생했을 때, stack trace, source file name, line number 등을 출력해주는데, source file name 이 compile 한 환경의 절대 경로로 출력된다. 이 때, --trimpath 를 사용하면, 절대 경로 대신, source file 이름만 출력된다. # 정확히는 좀 다른데, 쉽게 생각하면 위와 같다.
컴파일 링커 옵션
[1. 개요] g++ 로 컴파일 시, 링킹 시 유용한 옵션 정리 [2.1 예제] 스택 사이즈 변경 g++ -Wl,--stack,1677216 test.cpp 함수 호출 시, 이 함수 내 지역에 선언한 buf 의 크기가 꽤 큰 경우, 함수 호출 시, 바로 segmentation fault 가 발생할 수 있다. 함수 호출을 위해, 컴파일 시, 일정 크기의 스택에 모든 지역 변수를 저장 할 수 있어야 하는데, buf 크기가 이 크기를 벗어나서 문제가 된 것이다. 이 경우 디폴트 스택 크기를 꽤 크게 잡아주면 runtime 오류를 해결 할 수 있다. [2.2 예제] 외부 라이브러리 링킹 g++ main.cpp -lrdkafka++ -L"./" rdkafka 를 사용하는 c++ 코드 컴파일 시, rdfkafka ..