Yosemite y Valgrind

¿Me puede decir cómo instalar valgrind en yosemite? Cuando bash instalarlo, obtengo “comprobación de la versión del kernel … no compatible (14.0.0) configure: error: Valgrind funciona en Darwin 10.x, 11.x, 12.x y 13.x (Mac OS X 10.6 / 7/8/9) ”

No hay una ruta o actualización oficial, y no encontré nada (excepto http://comments.gmane.org/gmane.comp.kde.devel.bugs/1553705 , pero no resolvieron ese problema).

Como no hay una versión estable que admita Yosemite, puede instalar la última versión de desarrollo con

 brew install --HEAD valgrind 

Aunque puede haber sido el caso en los últimos ciclos de versiones de OS X, Valgrind demoró un tiempo antes de lograr un soporte de características razonable, la compatibilidad básica con OS X 10.10 ya está disponible en la troncal de Valgrind debido al trabajo significativo en Yosemite de prelanzamiento.

De la lista de correo:

Recientemente se han realizado algunos esfuerzos para mejorar el apoyo de Valgrind a Yosemite. Si desarrolla en Mac OS, puede probar la troncal (svn co svn: //svn.valgrind.org/valgrind/trunk) e informar cualquier rotura que tenga. El soporte para Yosemite es lo suficientemente bueno como para que al menos una aplicación gráfica grande (Firefox) funcione correctamente. El soporte para la versión anterior, 10.9 (Mavericks), también se ha mejorado sustancialmente.

Tenga en cuenta que el trabajo solo se ha dirigido a procesos de 64 bits. 32 bit podría funcionar, y probablemente sea mejor en Mavericks, pero sospecho que será cada vez más problemático en Yosemite debido a que el soporte del conjunto de instrucciones de 32 bits x86 de Valgrind no ha pasado el SSSE3.

Julian Seward

http://sourceforge.net/p/valgrind/mailman/message/33047840/

Descripción completa: soy uno de los nuevos desarrolladores de Valgrind que contribuyó con parches para soportar OS X 10.10

El flujo de trabajo svn de Valerio descargará cada twig que consume tiempo y recursos. Un mejor procedimiento es descargar solo el tronco:

 svn co svn://svn.valgrind.org/valgrind/trunk valgrind cd valgrind ./autogen.sh ./configure make make install 

Aquí está mi opinión sobre esto. Más o menos tenía un mac limpio con xcode instalado. Lo tengo comstackndo y ejecutando con lo siguiente:

 # build/install autoconf/automake/libtool so that 'autogen' works curl -OL http://ftpmirror.gnu.org/autoconf/autoconf-2.69.tar.gz tar -xzf autoconf-2.69.tar.gz cd autoconf-2.69 ./configure && make && sudo make install cd .. curl -OL http://ftpmirror.gnu.org/automake/automake-1.14.tar.gz tar -xzf automake-1.14.tar.gz cd automake-1.14 ./configure && make && sudo make install cd.. curl -OL http://ftpmirror.gnu.org/libtool/libtool-2.4.2.tar.gz tar -xzf libtool-2.4.2.tar.gz cd libtool-2.4.2 ./configure && make && sudo make install cd .. svn co svn://svn.valgrind.org/valgrind/trunk valgrind cd valgrind ./autogen.sh # important: configure-params, otherwise make ends in errors ./configure -disable-tls --enable-only64bit --build=amd64-darwin make # sudo, otherwise it fails due to permissions sudo make install 

Tenga en cuenta que callgrind_control (de valgrind-3.11.0 SVN) no parece funcionar en OS X, parece un script perl y la herramienta de línea de comandos que ejecuta (vgdb -l) imprime algo ‘inesperado’ que no funciona t correctamente analizado (por lo que no podrá encontrar el otro proceso ejecutándose con valgrind).

Alternativamente, la secuencia de comandos perl simplemente llama a vgdb, también podemos hacer eso directamente (solo averigüe su ID de proceso manualmente):

 vgdb --pid=2858 instrumentation on 

Trabajó para mí en 10.10.1:

 svn co svn://svn.valgrind.org/valgrind cd valgrind ./autogen.sh ./configure make make install 

Todas las soluciones enumeradas aquí fallaron para mí. Lo que finalmente terminó funcionando fue usar puertos mac.

sudo port install valgrind-devel

Aquí se explica cómo instalarlo utilizando fonts alternativas además del svn oficial (porque parece estar disponible intermitentemente).

https://crispyappstudiosblog.wordpress.com/2015/07/07/installing-valgrind-on-osx-yosemite/

1) Navega hasta este espejo git del svn y descarga la última versión disponible: http://repo.or.cz/w/valgrind.git

2) También necesita VEX, así que tome la última versión aquí: http://repo.or.cz/w/vex.git

3) Extraer ambos. Coloque todo el contenido de la carpeta VEX en una carpeta llamada VEX en el nivel superior del directorio valgrind.

cd al directorio valgrind y ejecute lo siguiente:

 Run ./autogen.sh Run ./configure Run make Run sudo make install 

valgrind --version ejecutando valgrind --version Debería ejecutar al menos 3.11.0 SVN para que funcione en Yosemite. Valgrind 3.11.0 SVN se ejecuta en OSX Yosemite 10.10.4

Lo instalé en mi Mac instalando homebrew y luego ejecutando estos 3 comandos en la terminal.

  1. brew update
  2. brew doctor
  3. brew install --HEAD valgrind

PD: Tengo Os X El Capitan (10.11) pero esto debería funcionar también con versiones anteriores.

Finalmente logré que Valgrind trabajara en mi OSX El Capitán 10.11.12 .

La respuesta del usuario Kalmiya funcionó para mí primero después de instalar las herramientas de línea de comandos de Xcode.

Escriba esto en la terminal:

  xcode-select --install 

Ahora sigue la publicación de Kalmiya , paso a paso. https://stackoverflow.com/a/30366798/3633475

Aquí hay otra opinión sobre la instalación de svn. Los anteriores no funcionaron para mí, ya que necesitaba tener automake y autoconf instalados, cosa que no hice, aunque tenía instalada la última versión de las herramientas de línea de comandos de Xcode.

Obtuve lo siguiente de este sitio . También tuve que enlazar automake y autoconf después de hacer brew install automake y brew install autoconf haciendo el brew link automake y brew link autoconf para que esto funcione.

 # Check out their repo... $ svn co svn://svn.valgrind.org/valgrind/trunk valgrind-trunk # and hop into it. $ cd valgrind-trunk # You need to have autoconf and automake installed to build Valgrind # This example uses Homebrew to install these dependencies # (MacPorts should also work) # (Permission error? add sudo!) $ brew install automake $ brew install autoconf # run autogen.sh in valgrind-trunk $ ./autogen.sh # Tricky, there are some hard wired paths in the Valgrind sources. # You need to symlink the mach folder in your XCode SDK to /usr/include/mach # Be sure to use the proper Xcode SDK "MacOSX10.10.sdk" in the path! $ ln -sv /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/mach /usr/include/mach # Run configure + set install paths in valgrind-trunk $ ./configure --prefix=/usr/local # Run Make and make install (permission error? add sudo!) in valgrind-trunk $ make $ make install # Check it works $ valgrind --version valgrind-3.11.0.SVN 

He usado las instrucciones de kalmiya para comstackr valgrind como un paquete conda para OSX Yosemite. Para aquellos que trabajan con anaconda / conda, solo hazlo

 conda install -c https://conda.binstar.org/groakat valgrind 

Nota al margen: necesitaba instalar las herramientas de línea de comandos como se describe a continuación para obtener valgrind comstackdo.

https://stackoverflow.com/a/30471647/2156909

Obtuve valgrind en Yosemite comstackdo, pero tuve que usar un hack para hacerlo. Aunque creo que deberías usar xcode-select install para obtener todas las herramientas de línea de comandos (después de lo cual valgrind debería hacerlo correctamente), pero si no quieres hacerlo (por ejemplo, el tamaño de las herramientas de Xcode es demasiado grande), también puedes obtenga el código OSX de Darwin y copie los siguientes archivos a /usr/include/mach

  mach_vm.defs task.defs thread_act.defs vm_map.defs 

Esto permitió una comstackción e instalación limpias, aunque tenga en cuenta que es un truco bastante flojo.