Yosemite i Valgrind

Możesz mi powiedzieć jak zainstalować valgrind na yosemite? Kiedy próbuję go zainstalować, dostaję " sprawdzanie wersji jądra... unsupported (14.0.0) konfiguracja: błąd: Valgrind działa na Darwin 10.x, 11.x, 12.x i 13.x (Mac OS X 10.6/7/8/9) "

Nie ma oficjalnej ścieżki ani aktualizacji, a ja nic nie znalazłem (poza http://comments.gmane.org/gmane.comp.kde.devel.bugs/1553705 , ale nie rozwiązali tego problemu).

Author: not-just-yeti, 2014-10-25

12 answers

Ponieważ nie ma stabilnego wydania, które obsługuje Yosemite, możesz zainstalować najnowszą wersję deweloperską za pomocą

brew install --HEAD valgrind
 287
Author: Harry F,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-12-10 18:26:29

Podczas gdy w poprzednich cyklach wydania OS X mogło się zdarzyć, że Valgrind zajęło trochę czasu, zanim osiągnął rozsądną obsługę funkcji, Podstawowa obsługa OS X 10.10 jest już dostępna w valgrind trunk ze względu na znaczące prace nad przedpremierowym Yosemite.

Z listy dyskusyjnej:

Ostatnio podjęto pewne wysiłki, aby poprawić wsparcie Valgrind dla Yosemite. Jeśli rozwijasz się na Mac OS, możesz wypróbować kufer (svn co svn: / / svn. valgrind. org / valgrind / trunk) i zgłaszać wszelkie pęknięcie masz. Wsparcie dla Yosemite jest na tyle dobre, że przynajmniej jedna duża aplikacja graficzna (Firefox) Działa OK. Wsparcie dla poprzednie wydanie, 10.9 (Mavericks), również zostało znacznie ulepszone.

Zauważ, że praca została skierowana tylko do procesów 64-bitowych. 32 bit może pracy, i pewnie lepiej na Mavericks, ale podejrzewam, że będzie coraz bardziej problematyczne na Yosemite z powodu Valgrind 32 bit x86 Instrukcja set support not having progressed passed SSSE3.

Julian Seward

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

pełne ujawnienie: jestem jednym z nowych programistów Valgrind, którzy wnieśli poprawki do obsługi OS X 10.10

 50
Author: Rhys Kidd,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-11-20 00:49:19

Valerio ' s svn workflow pobierze każdą gałąź, która pochłania czas i zasoby. Lepszą procedurą jest pobranie tylko bagażnika:

svn co svn://svn.valgrind.org/valgrind/trunk valgrind
cd valgrind
./autogen.sh
./configure
make
make install
 11
Author: Ed Millard,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-12-20 00:47:07

Oto moje zdanie na ten temat. Mniej więcej miałem czysty mac z zainstalowanym xcode. Got it compiling and running with the following:

# 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  

Zauważ, że callgrind_control (z valgrind-3.11.0 SVN) wydaje się nie działać na OS X, wygląda jak skrypt Perla i uruchamiane przez niego narzędzie wiersza poleceń (vgdb-l) wypisuje coś 'nieoczekiwanego', czego ten skrypt nie przetwarza poprawnie ( więc nie będzie w stanie znaleźć innego procesu działającego z valgrind ).

Alternatywnie skrypt Perla po prostu wywołuje vgdb, możemy również zrobić to bezpośrednio (po prostu dowiedzieć się, że process-id ręcznie):

vgdb --pid=2858 instrumentation on
 8
Author: kalmiya,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-07-21 09:28:10

Pracował dla mnie na 10.10.1:

svn co svn://svn.valgrind.org/valgrind
cd valgrind
./autogen.sh
./configure
make
make install
 7
Author: Valerio Schiavoni,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-12-09 09:58:52

Wszystkie wymienione tutaj rozwiązania zawiodły dla mnie. To, co w końcu zadziałało, to użycie portów mac.

sudo port install valgrind-devel

 7
Author: bigtunacan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-02-23 14:18:25

Oto jak zainstalować go przy użyciu alternatywnych źródeł poza oficjalnym svn (ponieważ wydaje się być sporadycznie dostępny).

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

1) Przejdź do tego lustrzanego serwera SVN i pobierz najnowszą dostępna wersja: http://repo.or.cz/w/valgrind.git

2) potrzebujesz również VEX, więc pobierz najnowszą wersję tutaj: http://repo.or.cz/w/vex.git

3) wyodrębnić oba z nich. Umieścić całość zawartość folderu VEX do folderu o nazwie VEX na najwyższym poziomie katalogu valgrind.

cd do katalogu valgrind i wykonaj następujące polecenie:

Run ./autogen.sh

Run ./configure

Run make

Run sudo make install

Przetestuj to biegając valgrind --version powinieneś biegać w co najmniej 3.11.0 SVN dla IT działa na Yosemite. Valgrind 3.11.0 SVN działający na OSX Yosemite 10.10.4

 3
Author: user43633,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-07-10 12:41:34

Zainstalowałem go na moim Macu, instalując homebrew, a następnie uruchamiając te 3 polecenia w terminalu.

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

PS: mam Os X El Capitan (10.11), ale to powinno działać również z poprzednimi wersjami.

 3
Author: ,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-02-06 22:48:10

W końcu dostałem Valgrind do pracy na moim OSX El Capitan 10.11.12.

User Kalmiya 's answer pracował dla mnie pierwszy po zainstalowaniu narzędzi linii poleceń Xcode.

Wpisz to w terminalu:

xcode-select --install

Teraz śledźKalmiya 's post, krok po kroku. https://stackoverflow.com/a/30366798/3633475

 2
Author: Raphael,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 12:03:02

Oto kolejna odsłona instalacji svn. Poprzednie nie działały dla mnie, ponieważ musiałem mieć zainstalowane automake i autoconf, czego nie zrobiłem, mimo że miałem zainstalowaną najnowszą wersję narzędzi wiersza poleceń Xcode.

Dostałem następujące z tej strony. Musiałem również połączyć automake i autoconf Po wykonaniu brew install automake i brew install autoconf wykonując brew link automake i brew link autoconf, aby to zadziałało.

# 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
 0
Author: Kyle Falconer,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-03-14 14:50:52

Użyłem instrukcji kalmiyi, aby zbudować valgrind jako pakiet conda dla OSX Yosemite. Dla tych, którzy pracują z anaconda / conda, po prostu zrobić

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

Side-note: Musiałem zainstalować narzędzia wiersza poleceń, jak opisano poniżej, aby uzyskać valgrind skompilowany.

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

 0
Author: P.R.,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 12:18:02

Mam valgrind na Yosemite skompilowany, ale musiałem użyć hack, aby to zrobić. Chociaż myślę, że powinieneś używać xcode-select install, Aby uzyskać wszystkie narzędzia wiersza poleceń( po czym valgrind powinien zrobić poprawnie), ale jeśli nie chcesz tego robić (np. rozmiar Xcode tools zbyt duży), można również uzyskać kod Darwin OSX i skopiować następujące pliki do /usr/include/mach

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

To pozwoliło na czystą kompilację i instalację, chociaż zauważ, że jest to raczej luźny hack.

 0
Author: Pete855217,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-01-03 13:22:21