2014-01-15 3 views
2

Я хотел бы использовать функции -fsanitize = address clang.с использованием командной строки clang, OS X 10.9.1, Xcode 5.0.2

Я на:

OS X 10.9.1 with Xcode 5.0.2 
Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn) 

Я бегу лязг из командной строки, и я получаю сообщение об ошибке:

clang: error: unsupported argument 'address' to option 'fsanitize=' 

Я сказал это работает, но в поисках вокруг не показала мне пути; мне нужно ввести другую версию clang?

Спасибо!

ответ

2

Исходная версия clang на OS X не поддерживает поддержку адресного дезинфицирующего средства. Вам придется создать собственную версию clang из источников.

+0

Обновление: Xcode 7 теперь содержит asan – HelloWorld

1

Вам нужна другая конструкция clang, чем одно яблоко дало вам. Самый простой способ, чтобы получить один (или больше), чтобы установить Homebrew http://brew.sh , а затем

brew install llvm --with-asan 

Вы также можете попробовать скомпилированный лязг от http://llvm.org/releases/download.htm.
Невозможно построить clang 'by hand', но в последний раз я проверил, что для получения исходного дерева потребовалось несколько проверок. Другие варианты должны иметь вас asan ing в минутах.

+0

Обновление: Xcode от Apple начинает работать со сборщиками clang, которые активировали Address-Sanitizer. –