Йосемити и Вальгринд


можете ли вы сказать мне, как установить valgrind на yosemite? Когда я пытаюсь установить его, я получаю " проверка версии ядра... неподдерживаемые (14.0.0) настройка: ошибка: Valgrind работает на Darwin 10.х, 11.х, 12.x и 13.x (Mac OS X 10.6/7/8/9) "

нет официального пути или обновления, и я ничего не нашел (кроме http://comments.gmane.org/gmane.comp.kde.devel.bugs/1553705, но они не решили эту проблему).

12 110

12 ответов:

поскольку нет стабильного выпуска, поддерживающего Yosemite, вы можете установить последнюю версию разработки с помощью

brew install --HEAD valgrind

несмотря на то, что в прошлых циклах выпуска OS X Valgrind потребовалось некоторое время для достижения разумной поддержки функций, базовая поддержка OS X 10.10 уже доступна в Valgrind trunk из-за значительной работы над предварительным выпуском Yosemite.

из списка рассылки:

недавно были предприняты некоторые усилия по улучшению поддержки Valgrind для Йосемитский. Если вы разрабатываете на Mac OS, вы можете попробовать багажник (СВН сотрудничества svn: / / svn. valgrind. org / valgrind / trunk) и сообщить о любом поломку вы получите. Поддержка Yosemite достаточно хороша, что по крайней мере одно большое графическое приложение (Firefox) работает нормально. Поддержка для предыдущий релиз, 10.9 (Mavericks), также существенно улучшен.

обратите внимание, что работа нацелена только на 64-битные процессы. 32 бит может работа, и, вероятно, лучше на Mavericks, но я подозреваю, что это будет все более проблематично на Yosemite из-за 32-битного x86 Valgrind поддержка набора инструкций не пройдя SSSE3.

Джулиан Сьюард

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

полное раскрытие: я один из новых разработчиков Valgrind, которые внесли патчи для поддержки OS X 10.10

рабочий процесс svn Valerio будет загружать каждую ветвь, которая требует времени и ресурсов. Лучшей процедурой является загрузка только ствола:

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

вот мой взгляд на это. У меня более или менее был чистый mac с установленным xcode. Получил его компиляции и работает со следующим:

# 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  

обратите внимание, что callgrind_control (от valgrind-3.11.0 SVN) не работает на OS X, выглядит как perl-скрипт, а инструмент командной строки, который он запускает (vgdb-l), печатает что-то "неожиданное", которое этот скрипт неправильно анализирует ( поэтому он не сможет найти другой процесс, работающий с valgrind ).

кроме того, скрипт perl просто вызывает vgdb, мы также можем напрямую сделать это (просто выясните свой идентификатор процесса вручную):

vgdb --pid=2858 instrumentation on

работал для меня на 10.10.1 :

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

все приведенные здесь решения не для меня. То, что в конечном итоге оказалось работать, было использовать порты mac.

sudo port install valgrind-devel

вот как установить его с использованием альтернативных источников помимо официального svn (потому что он, кажется, периодически доступен).

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

1) Перейдите к этому зеркалу git svn и загрузите последнюю версию доступная версия: http://repo.or.cz/w/valgrind.git

2) Вам также нужен VEX, поэтому возьмите последнюю версию здесь: http://repo.or.cz/w/vex.git

3) извлеките из них. Положите все содержимое в папку с именем VEX на верхнем уровне каталога valgrind.

cd в каталог valgrind и выполните следующие действия:

Run ./autogen.sh

Run ./configure

Run make

Run sudo make install

Я установил его на свой mac, установив homebrew а затем запустить эти 3 команды в терминале.

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

PS: у меня есть Os X El Capitan (10.11), но это должно работать и с предыдущими версиями.

Я, наконец, получил Valgrind работать над моим OSX El Capitan 10.11.12.

пользователей Калмияответ работал для меня сначала после того, как я установил инструменты командной строки Xcode.

введите это в терминале:

xcode-select --install

теперь следовать Калмиястатье, шаг за шагом. https://stackoverflow.com/a/30366798/3633475

вот еще один подход к установке svn. Предыдущие не работали для меня, так как мне нужно было automake и autoconf установлен, чего я не сделал, хотя у меня была установлена последняя версия инструментов командной строки Xcode.

я получил следующее из этот сайт. Я также должен был связать automake и autoconf после этого brew install automake и brew install autoconf делать brew link automake и brew link autoconf чтобы это работало.

# 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

я использовал инструкции калмия построить отчет в виде пакета стадион conda для OSX Йосемити. Для тех, кто работает с anaconda/conda, просто сделайте

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

стороне-Примечание: Мне нужно, чтобы установить инструмент командной строки, как описано ниже, чтобы получить отчет составлен.

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

я получил valgrind на Yosemite скомпилирован, но пришлось использовать хак, чтобы сделать это. Хотя я думаю, что вы должны использовать xcode-select install чтобы получить все инструменты командной строки (после чего valgrind должен сделать правильно), но если вы не хотите этого делать (например. размер инструментов Xcode слишком большой), вы также можете получить код Darwin OSX и скопировать следующие файлы в /usr/include/mach

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

Это позволило чистую компиляцию и установку, хотя обратите внимание, что это довольно слабый Хак.