¿Cómo puedo hacer que Valgrind funcione en mi mac? Especificaciones del Mac: Macbook Air de 11" a 2GHz con MacOS Sierra 10.12.5. POR CIERTO, brew install valgrind
no construye, así como estos pasos de "Learn C The Hard Way" ex4 de Zed Shaw:
# 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 también falla después de modificar el archivo valgrind-3.12.0/coregrind/m_main.c línea 4061 de:
#if defined(VGO_darwin) && DARWIN_VERS == DARWIN_10_10
a:
#if defined(VGO_darwin)
(por http://valgrind.10908.n7.nabble.com/Unable-to-compile-on-Mac-OS-X-10-11-td57237.html )
...pude completar una instalación de Valgrind (antes de cambiar m_main.c el make
error) pero desafortunadamente, ahora la simple prueba recomendada en el archivo README para verificar la instalación está fallando:
A ver si funciona. Prueba con "valgrind ls -l". O bien esto funciona, o bien se bloquea con alguna queja.
La denuncia:
$ valgrind ls -l
valgrind: mmap-FIXED(0x0, 253952) failed in UME (load_segment1) with error 12 (Cannot allocate memory).
No estoy seguro de lo que significa exactamente esto, así que sería genial si alguien pudiera ayudar a analizar la "queja" y sugerir un medio para obtener una instalación exitosa o una alternativa a Valgrind en MacOS Sierra.
Por cierto: por Anuncio del sitio web de Valgrind :
20 de octubre de 2016: valgrind-3.12.0 está disponible. Esta versión es compatible con: X86/Linux, AMD64/Linux, ARM32/Linux, ARM64/Linux, PPC32/Linux, PPC64BE/Linux, PPC64LE/Linux, S390X/Linux, MIPS32/Linux, MIPS64/Linux, ARM/Android, ARM64/Android, MIPS32/Android, X86/Android, X86/Solaris, AMD64/Solaris, X86/MacOSX 10. 10 y AMD64/MacOSX 10.10. También hay soporte preliminar para X86/MacOSX 10.11/12, y AMD64/MacOSX 10.11/12. Para más detalles, consulte el notas de publicación .
...y notas de publicación :
Se ha añadido soporte preliminar para MacOS 10.12 (Sierra).
Por esta solución: https://stackoverflow.com/a/43431715/5225057 También he probado lo siguiente,
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
y me quedo con:
valgrind: mmap-FIXED(0x0, 253952) failed in UME (load_segment1) with error 12 (Cannot allocate memory).
ACTUALIZACIÓN según la respuesta de 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).
ACTUALIZACIÓN:
por http://valgrind.org/docs/manual/dist.news.html valgrind 3.13.0 ha mejorado el soporte para MacOS 10.12... esperemos que sea una solución viable.