2013-03-28 4 views
5

Я сейчас работаю над проектом на C++, с которым я хочу использовать C++ 11. В этом проекте я использую библиотеку NTL, которая используется для теории чисел. Из-за комфорта авто завершает Xcode, я пишу свой код с Xcode, а библиотека NTL статически связана с флагом «-lntl».GCC 4.7/4.8 как компилятор Xcode C/C++

Теперь я хочу использовать некоторые возможности C++ 11. Компилятор LLVM от Apple, который по умолчанию используется в Xcode, включает такую ​​поддержку, но некоторая компиляция с NTL и iostream не работает, в отличие от компилятора LLVM GCC 4.2 с Xcode.

Итак, я использую компилятор LLVM GCC 4.2, но он не включает поддержку C++ 11. Поэтому я запустил gcc48, и теперь я хочу сделать Xcode скомпилировать его код с gcc4.8.

Как я могу это сделать?

--EDIT--
Решаемые спасибо всем комментариям, которые советовали изменить от LIBC++ для stdlibC++ (GNU LibC++), и что решить проблему NTL не скомпилирован с Clang.

+0

Как вы установили NTL? Вы пытались перекомпилировать его с помощью clang? – Xymostech

+0

Нет. Вы предполагаете, что это должно решить неудобную проблему, из-за которой clang не скомпилировал проект с NTL правильно? – Edgepo1nt

+1

Xymostech прав, я думаю, вы должны попытаться решить компиляцию ошибок, а не интегрировать gcc48 в XCode, это будет меньше боли и меньше проблем в будущем. Было бы неплохо, если бы вы включили ошибки компиляции в вопрос. – cody

ответ

1

Существует 2 варианта реализации библиотеки времени выполнения C++: gcc libstdc++ и clang's libc++, которые несовместимы друг с другом.

Измените использование с libc++ на libstdc++.