Je ne peux pas installer Valgrind sur macOS High Sierra. Ce n'est pas disponible via brew
. J'ai essayé avec 3.10 . Après make install
, je reçois ce message:
configure: error: Valgrind works on Darwin 10.x, 11.x, 12.x, 13.x and 14.x (Mac OS X 10.6/7/8/9/10)
Homebrew dit:
valgrind: This formula either does not compile or function as expected on macOS
versions newer than Sierra due to an upstream incompatibility.
Error: An unsatisfied requirement failed this build.
J'ai eu un problème comme celui-ci ... J'ai donc trouvé la solution. Vous devez installer valgrind avec ce code brew install --HEAD valgrind
J'ai créé un portage de valgrind 3.13.0 pour travailler sur macOS High Sierra (10.13.x). Vous pouvez l'obtenir ici: https://github.com/padiakalpesh/valgrind_3.13_high_sierra
Une fois que vous avez obtenu la source, exécutez les commandes suivantes à partir du répertoire source:
./configure
make
Sudo make install
Je travaille en juillet 2018, pour référence:
https://Gist.github.com/AlessandroMinali/d8316d6cc650c97027433644c2ff31ee
- 5468: applellvm-5.1|applellvm-6.*|applellvm-7.*|applellvm-8.*)
+ 5468: applellvm-5.1|applellvm-6.*|applellvm-7.*|applellvm-8.*|applellvm-9.*)
- 5879: 16.*)
+ 5879: 17.*)
./autogen.sh
./configure
make
make install
# false positive for any executable (it seems)
# macOS 10.12.6
# valgrind 3.13.0
{
libtrace initialization false positive
Memcheck:Param
msg->desc.port.name
fun:mach_msg_trap
fun:mach_msg
fun:task_set_special_port
fun:_os_trace_create_debug_control_port
fun:_libtrace_init
}
--suppressions=$HOME/.valgrind.supp
Je construis la version git head de Valgrind sur macOS assez régulièrement. Si vous avez installé xcode, rien de plus que de suivre les instructions ici .
Je mettrai à jour avec mon script de construction plus tard.
Au lieu de cela, vous voudrez peut-être envisager des désinfectants clang. Cela peut être activé dans xcode ou avec l'option -fsanitize = X (où X est l'adresse, indéfini, thread, mémoire et quelques autres).
La version MacPorts a commencé à fonctionner pour moi en septembre 2018!
La commande, par souci d’exhaustivité (s’achève très rapidement - apparemment, déjà construite):
Sudo port install valgrind-devel
Version:
$ valgrind --version
valgrind-3.14.0.GIT
utiliser le brew install --HEAD valgrind
a également fonctionné pour moi, mais sachez qu'il faudra un certain temps pour extraire la version HEAD et pour construire/installer.
Cependant, aucun autre changement n'était nécessaire.
Valgrind est un logiciel plutôt délicat qui nécessite des mises à jour pour chaque version majeure de macOS.
Depuis février 2018, aucune version publiée de Valgrind ne prend en charge macOS High Sierra (10.13). Vous devrez utiliser une version de développement de Valgrind ou utiliser d'autres outils. ( Instruments d’Apple peut avoir certaines des fonctionnalités que vous recherchez.)
Ce qui suit a fonctionné pour moi en utilisant la dernière version de Valgrind release 3.14.0 (9 octobre 2018) sur macOS 10.13.6.
VERSION="3.14.0"
wget -O - http://www.valgrind.org/downloads/valgrind-"$VERSION".tar.bz2 | tar xjf -
cd valgrind-"$VERSION"
# use --prefix=/path/to if you want it installed somewhere in particular
./configure
make
# may need Sudo
make install
# test all is working
valgrind ls -l
Ces instructions sont extraites de README
à l’intérieur de la boule de goudron de libération Valgrind.