Ответ 1
Поскольку нет стабильной версии, поддерживающей Yosemite, вы можете установить последнюю версию разработки с помощью
brew install --HEAD valgrind
Не могли бы вы рассказать мне, как установить valgrind на yosemite? Когда я пытаюсь установить его, я получаю "проверку на версию ядра... unsupported (14.0.0) configure: ошибка: Valgrind работает над Darwin 10.x, 11.x, 12.x и 13.x(Mac OS X 10.6/7/8/9) "
Нет официального пути или обновления, и я ничего не нашел (кроме http://comments.gmane.org/gmane.comp.kde.devel.bugs/1553705, но они не решили эту проблему).
Поскольку нет стабильной версии, поддерживающей Yosemite, вы можете установить последнюю версию разработки с помощью
brew install --HEAD valgrind
Несмотря на то, что, возможно, это было в прошлых циклах выпуска OS X, которые Valgrind занимал период времени до достижения разумной поддержки функций, базовая поддержка OS X 10.10 уже доступна в багажнике Valgrind из-за значительной работы над предварительным выпуском Yosemite.
Из списка рассылки:
Недавно были предприняты некоторые усилия для улучшения поддержки Valgrind для Yosemite. Если вы разрабатываете Mac OS, вы можете попробовать trunk (svn co svn://svn.valgrind.org/valgrind/trunk) и сообщить любой поломка вы получите. Поддержка Yosemite достаточно хороша, что по крайней мере одно большое графическое приложение (Firefox) работает нормально. Поддержка предыдущий выпуск, 10.9 (Mavericks), также значительно улучшен.
Обратите внимание, что работа нацелена только на 64-битные процессы. 32 бит может работать и, вероятно, лучше на Mavericks, но я подозреваю, что это будет все более проблематичным для Yosemite из-за Valgrind 32 бит x86 поддержка набора инструкций не прошла через SSSE3.
Джулиан Сьюард
http://sourceforge.net/p/valgrind/mailman/message/33047840/
Полное раскрытие: я являюсь одним из новых разработчиков Valgrind, которые внесли исправления для поддержки OS X 10.10
Рабочий процесс Valerio svn будет загружать каждую ветку, которая требует времени и ресурсов. Лучшая процедура - загрузить только туловище:
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- script и инструмент командной строки, который он запускает (vgdb -l) печатает что-то неожиданное, который script неправильно обрабатывает (так что он не сможет найти другой процесс, выполняющийся с valgrind).
В качестве альтернативы, perl script просто вызывает 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
в папку с именем VEX на верхнем уровне каталога valgrind.
cd
в каталог valgrind и выполните следующее:Run ./autogen.sh Run ./configure Run make Run sudo make install
Проверьте его, запустив
valgrind --version
. Вы должны работать в минимум 3.11.0 SVN для работы над Йосемити.
Я установил его на свой Mac, установив homebrew
, а затем запустив эти 3 команды в терминале.
brew update
brew doctor
brew install --HEAD valgrind
PS: У меня есть Os X El Capitan (10.11), но это должно работать и с предыдущими версиями.
Наконец-то я получил Valgrind для работы над моим OSX El Capitan 10.11.12.
Пользователь Ответ Kalmiya работал у меня сначала после того, как я установил инструменты командной строки Xcode.
Введите это в терминал:
xcode-select --install
Теперь выполните шаг за шагом Калмия. fooobar.com/questions/53367/...
Вот еще один пример установки 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
Я использовал инструкции kalmiya для создания valgrind в качестве пакета conda для OSX Yosemite. Для тех, кто работает с anaconda/conda, просто сделайте
conda install -c https://conda.binstar.org/groakat valgrind
Побочное примечание: Мне нужно было установить инструменты командной строки, как описано ниже, чтобы скомпилировать valgrind.
Я получил valgrind на Yosemite, скомпилированном, но должен был использовать хак для этого. Хотя я думаю, что вы должны использовать xcode-select install
для получения всех инструментов командной строки (после чего valgrind должен делать правильно), но если вы не хотите этого делать (например, размер инструментов Xcode слишком велик), вы также можете получить код Darwin OSX и скопируйте следующие файлы в /usr/include/mach
mach_vm.defs
task.defs
thread_act.defs
vm_map.defs
Это позволило очистить компиляцию и установить, хотя обратите внимание, что это довольно слабый взлом.