2013-01-01 3 views
7

내 OS X 10.8 노트북 valgrind를 실행하려고 할 때마다, 내가 얻을 :Valgrind의 OS X에서 작동하지 않는 10.8

bad executable (no stack) 
valgrind: ./a.out: cannot execute binary file 

문제가 무엇입니까? 이 문제를 어떻게 해결할 수 있습니까? 리눅스에서는 모든 것이 잘 작동하므로, 어떻게 든 잘못 사용하고있는 것은 아닙니다. valgrind. 내가 사용하고있는 정확한 라인은 valgrind --tool=memcheck --leak-check=full ./a.out입니다.

답변

8

저도 같은 오류가 발생했지만, 난 그냥 (나를 위해 사제를 사용 brew upgrade valgrind) 3.8.1에 Valgrind의 업그레이드 및 Valgrind의를 실행하면 다음과 같은 경고 인쇄 있지만 그것이 작동합니다

WARNING: Support on MacOS 10.8 is experimental and mostly broken. 
WARNING: Expect incorrect results, assertions and crashes. 
WARNING: In particular, Memcheck on 32-bit programs will fail to 
WARNING: detect any errors associated with heap-allocated data. 
+1

감사합니다,이 문제를 해결했다. 분명히 최신 버전을 사용하고 있었지만 SVN의 패키지를 사용했는데 어떻게 든 작동하지 않았습니다. '양조 제거 valgrind; brew install valgrind'가 마침내'3.8.1'을 설치했습니다. – houbysoft

+0

내 경우에는 라이온에서 마운틴 라이온으로 업그레이드했기 때문입니다. 이미 최신 버전이있는 경우 업데이트 자체가 작동하지 않을 수 있습니다. 강제로 다시 컴파일하려면 @ houbysoft의 단계 (위의 설명)를 따르십시오. –

3

내가 사용이 문제가 있었다를 macports와 함께 valgrind. 그것은 내가 32 비트 실행 파일을 Valgrind의려고

sudo port install valgrind +universal 

에 설치하는 데 필요한 밝혀 나는 + 보편적 않고, 32 비트 지원이 컴파일되지 않는 것을 믿습니다.

관련 문제