기본적으로 디버깅 심볼을 제거 할 필요가없는 C++ 프로젝트 (오픈 소스)가 있습니다. 테스트 실행 파일이 많으면 OS X에서 생성 된 많은 dSYM 파일이 있습니다. 사용하지 않으려는 g ++ 플래그로 -g3을 시도했습니다. 아이디어?OS X에서 dSYM을 생성하지 못하도록 컴파일합니다 (make 사용)
감사합니다. 후안
기본적으로 디버깅 심볼을 제거 할 필요가없는 C++ 프로젝트 (오픈 소스)가 있습니다. 테스트 실행 파일이 많으면 OS X에서 생성 된 많은 dSYM 파일이 있습니다. 사용하지 않으려는 g ++ 플래그로 -g3을 시도했습니다. 아이디어?OS X에서 dSYM을 생성하지 못하도록 컴파일합니다 (make 사용)
감사합니다. 후안
Xcode로 컴파일 하시겠습니까? GCC는 .dSYM 파일을 생성하지 않으며, XCode는 생성하기 위해 dsyumutil을 실행합니다. 내 (구형) XCode 3.2.3의 프로젝트 설정, 빌드 옵션 -> 디버그 정보 형식에서 "dSYM 파일로 DWARF"또는 "DWARF"만 선택할 수 있습니다. 후자는 dSYM이 생산되어서는 안됩니다.
그러나 Apple 툴체인의 경우 DWARF는 .o 파일에 있으며 최종 이진 파일에 링크되지 않습니다. (GDB는 그것을 찾는 방법을 알고 있지만 디스크 상에 놓여있는 .o 파일을 필요로합니다.) 바이너리를 다른 누군가에게 보내려한다면 바이너리와 함께 보내도록 dSYM을 만들어야합니다.
Ted Mielczarek는 지적했듯이 gcc는 dSYM 파일을 자체적으로 생성하지 않으며 단순히 객체 파일에 생성하는 데 필요한 정보 만 저장합니다. 프로젝트를 빌드하기 위해 make를 사용한다면, 실행 파일을 컴파일/링크 한 후에 dsymutil을 실행하는 makefile에 별도의 단계가있을 가능성이 높습니다. 찾아서 제거 할 수 있는지 확인하십시오.
"-g"플래그로 컴파일하는 경우 제거하십시오.