Valgrind가 내 Mac에서 어떻게 작동합니까? Mac 사양 : 2012 년 중반 11 인치 MacOS Sierra 10.12.5를 지원하는 2GHz i7 MacBook Air FWIW, brew install valgrind
Zed Shaw의 “Learn C The Hard Way”에서 이러한 단계뿐 아니라 빌드가 실패합니다. ex4 :
# 1) Download it (use wget if you dont have curl)
curl -O http://valgrind.org/downloads/valgrind-3.12.0.tar.bz2
# use md5sum to make sure it matches the one on the site
md5sum valgrind-3.12.0.tar.bz2
# 2) Unpack it.
tar -xjvf valgrind-3.12.0.tar.bz2
# cd into the newly created directory
cd valgrind-3.12.0
# 3) configure it
./configure
# 4) make it
make
# 5) install it (need root)
sudo make install
Valgrind는 또한 valgrind-3.12.0 / coregrind / m_main.c 줄 4061 파일을 수정 한 후에도 실패합니다.
#if defined(VGO_darwin) && DARWIN_VERS == DARWIN_10_10
에:
#if defined(VGO_darwin)
(per http://valgrind.10908.n7.nabble.com/Unable-to-compile-on-Mac-OS-X-10-11-td57237.html )
… 나는 Valgrind 설치를 완료 할 수있었습니다 (m_main.c를 변경하기 전에 make
error’d out)하지만 불행하게도 설치를 확인하기 위해 README 파일에서 권장하는 간단한 테스트가 실패했습니다.
그것이 효과가 있는지보십시오. “valgrind ls -l”을 시도하십시오. 이 방법이 효과가 있거나 폭탄으로 불만을 토로합니다.
불만 사항 :
$ valgrind ls -l
valgrind: mmap-FIXED(0x0, 253952) failed in UME (load_segment1) with error 12 (Cannot allocate memory).
나는 이것이 정확히 무엇을 의미하는지 모르겠다. 누군가가 “complaint”을 파싱하고 macOS Sierra에서 Valgrind를 성공적으로 설치하거나 대안을 얻을 수있는 방법을 제안한다면 도움이 될 것이다.
FWIW : 당 Valgrind의 웹 사이트 발표 :
2016 년 10 월 20 일 : valgrind-3.12.0을 사용할 수 있습니다. 이 릴리스는 X86 / Linux, ARM64 / Linux, ARM64 / Linux, PPC32 / Linux, PPC64BE / Linux, PPC64LE / Linux, S390X / Linux, MIPS32 / Linux, MIPS64 / Linux, ARM / 안드로이드, MIPS32 / 안드로이드, X86 / 안드로이드, X86 / 솔라리스, AMD64 / 솔라리스, X86 / 맥 OSX 10.10 및 AMD64 / 맥 OSX 10.10. 또한 X86 / MacOSX 10.11 / 12 및 AMD64 / MacOSX 10.11 / 12에 대한 예비 지원도 있습니다. 자세한 내용은 릴리즈 노트 .
…과 릴리즈 노트 :
MacOS 10.12 (Sierra)에 대한 예비 지원이 추가되었습니다.
이 솔루션에 따라 : https://stackoverflow.com/a/43431715/5225057 나는 또한 다음을 시도했다.
svn checkout -r 16297 svn://svn.valgrind.org/valgrind/trunk
cd trunk
curl https://bugsfiles.kde.org/attachment.cgi?id=105218 > patch.txt
svn patch patch.txt
./autogen.sh
./configure
make
make install
그리고 왼쪽 :
valgrind: mmap-FIXED(0x0, 253952) failed in UME (load_segment1) with error 12 (Cannot allocate memory).
thiagoveloso 님의 답변 당 업데이트 :
$ man port
$ port version
Version: 2.4.1
$ sudo port install valgrind
Password:
---> Computing dependencies for valgrind
---> Fetching archive for valgrind
---> Attempting to fetch valgrind-3.12.0_0.darwin_16.x86_64.tbz2 from http://mse.uk.packages.macports.org/sites/packages.macports.org/valgrind
---> Attempting to fetch valgrind-3.12.0_0.darwin_16.x86_64.tbz2 from http://lil.fr.packages.macports.org/valgrind
---> Attempting to fetch valgrind-3.12.0_0.darwin_16.x86_64.tbz2 from https://packages.macports.org/valgrind
---> Fetching distfiles for valgrind
---> Attempting to fetch valgrind-3.12.0.tar.bz2 from http://ykf.ca.distfiles.macports.org/MacPorts/mpdistfiles/valgrind
---> Attempting to fetch valgrind-3.12.0.tar.bz2 from https://distfiles.macports.org/valgrind
---> Verifying checksums for valgrind
---> Extracting valgrind
---> Applying patches to valgrind
---> Configuring valgrind
---> Building valgrind
---> Staging valgrind into destroot
---> Installing valgrind @3.12.0_0
---> Activating valgrind @3.12.0_0
---> Cleaning valgrind
---> Updating database of binaries
---> Scanning binaries for linking errors
---> No broken files found.
$ valgrind --version
valgrind-3.12.0
$ valgrind ls -l
valgrind: mmap-FIXED(0x0, 253952) failed in UME (load_segment1) with error 12 (Cannot allocate memory).
최신 정보:
당 http://valgrind.org/docs/manual/dist.news.html valgrind 3.13.0은 macOS 10.12에 대한 지원을 향상 시켰습니다 … 잘하면이 해결책이 될 것입니다.
답변
Homebrew에 붙어 있습니까? 그렇지 않으면 설치가 가능합니다. 맥 포트 다음을 입력하십시오.
$ sudo port install valgrind
MacOS 10.12에 대한 “예비”지원이 버전 3.12.0에 추가되었습니다. Valgrind.org
답변
2017 년 6 월 15 일 valgrind 3.13.0이 출시되어 macOS Sierra (10.12.5)에서 valgrind를 설치하고 사용할 수있게되었습니다. 기본 사례로서, 나는 매우 기본적인 valgrind ls -l
. 저는 ZS의 LCTHW에서 연습을 마치면서 valgrind의이 빌드를 계속 평가할 것입니다.
참고로, 나는 함께 설치했다. 자작 나무 설치를 아직 (아직) 테스트하지 않았습니다. 맥 포트 또는 curl
다운로드, md5
체크섬, tar
포장 풀기, ./configure
, make
과 make install
.
당 http://valgrind.org/docs/manual/dist.news.html :
릴리스 3.13.0 (2017 년 6 월 15 일)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~3.13.0은 많은 개선 된 기능 릴리스이며 일반적인 버그 수정 모음입니다.
이 릴리스는 X86 / Linux, AMD64 / Linux, ARM32 / Linux, ARM64 / Linux,
PPC64 / Linux, PPC64BE / Linux, PPC64LE / Linux, S390X / Linux, MIPS32 / Linux,
MIPS64 / Linux, ARM / Android, ARM64 / Android, MIPS32 / Android, X86 / Android,
X86 / Solaris, AMD64 / Solaris 및 AMD64 / MacOSX 10.12.
최신 정보
Valgrind는 macOS High Sierra (10.13.3까지)에서 지금까지 지원되지 않습니다.