Файл ext / slist не найден в OS X 10.9

Я пытаюсь получить более старое стороннее программное обеспечение для компиляции на OS X 10.9. Мне удалось избавиться от большинства проблем компиляции, изменив настройки в Makefiles, которые изначально были написаны для НКУ вероятно, около 2005 года. Однако в настоящее время я не знаю, как преодолеть эту ошибку для исходного файла C ++:

/utility.h:42:10: фатальная ошибка: файл ‘ext / slist’ не найден

Я это понимаю ext/slist принадлежит к какой-то версии СТЛ. Была ли эта версия заменена или должна быть активирована каким-либо особым образом для версии Apple Clang /LLVM (5.0 для OS X 10.9)?

Если это вообще возможно, я бы предпочел скомпилировать это программное обеспечение с помощью предварительно установленных инструментов и не выполнять такие действия, как установка НКУ через MacPorts.

Кстати, эти предупреждения также сохраняются:

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/c++/v1/ext/hash_set:202:2:
предупреждение:
Использование заголовка не рекомендуется. Мигрировать в
[-W # warnings] /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/c++/v1/ext/hash_map:209:2:
предупреждение:
Использование заголовка не рекомендуется. Мигрировать в
[-W # предупреждения]

4

Решение

Slist — это односвязный список, расширение которого включено в libstdc ++. Mac OS X переходит от libstdc ++ к libc ++, который предоставляет стандартную библиотеку C ++ 11. C ++ 11 предоставляет односвязный список с именем std :: forward_list в заголовке <forward_list>,

Я полагаю, что libstdc ++ по-прежнему включен в инструменты разработчика, поэтому вы также можете переключиться на этот проект. Если вы используете проект XCode, вы можете выбрать библиотеку в настройках сборки или убедиться, что программа собирается с помощью -stdlib = libstdc ++

5

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]