Компиляция двоичного файла для работы с valgrind на Snow Leopard

StackOverflow https://stackoverflow.com/questions/1627454

  •  06-07-2019
  •  | 
  •  

Вопрос

Я установил valgrind на Snow Leopard с помощью патча в https: //bugs.kde .org / show_bug.cgi? id = 205241 . Однако когда я запускаю его с двоичным файлом, скомпилированным из кода C ++, мне говорят, что valgrind "не может выполнить двоичный файл". Какие флаги g ++ я должен установить, чтобы моя программа работала с valgrind?

Это было полезно?

Решение

Обязательно используйте параметр -m32 для создания 32-разрядного исполняемого файла. По умолчанию компилятор является 64-битным (при условии, что у вас есть 64-битный компьютер), но valgrind официально не поддерживает 64-битные исполняемые файлы в Mac OS X. Команда file в вашем исполняемом файле должна сообщить " ; Исполняемый файл Mach-O i386 ".

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top