Code :: Блокирует компиляцию C ++ с MacOS Mojave: фатальная ошибка: sys / cdefs.h: нет такого файла или каталога

(Это мой первый вопрос в StackOverflow)

Мне приходится использовать Mac на работе, и я кодирую на C ++ с помощью Code :: Blocks (потому что я привык к этой среде IDE). 2 дня назад я перешел с MacOS High Sierra на MacOS Mojave и могу честно сказать, что ... это было плохое решение.

Теперь при попытке #include <math.h> я получаю такую ​​ошибку: fatal error: sys/cdefs.h: No such file or directory. Я попытался переустановить инструменты командной строки xcode с помощью xcode-select --install, но это все еще не работает.

Кто-нибудь знает, что происходит, и как я могу решить эту проблему?


person FlatKos    schedule 26.09.2018    source источник
comment
вы пробовали включить cmath вместо math.h? math.h - это C, а не C ++ cmath - это эквивалент C ++ (на самом деле в основном оболочка).   -  person crashdog    schedule 26.09.2018
comment
Спасибо за подсказку, но это абсолютно ничего не меняет :(   -  person FlatKos    schedule 26.09.2018
comment
Вы пробовали использовать функцию поиска в OSX, чтобы узнать, действительно ли файл существует где-нибудь? Если да, вы можете добавить путь к местоположению в Code :: Blocks. Если нет, вам, вероятно, нужно установить заголовки с помощью brew или тому подобного.   -  person crashdog    schedule 26.09.2018
comment
Вероятно, это ответ, который вы ищете: stackoverflow.com/questions/19575956/ Похоже, вам нужно загрузить инструменты cmd и установить их, а не запускать xcode-slect --install.   -  person crashdog    schedule 26.09.2018
comment
Хорошо, спасибо за ответы. Благодаря тому, что я прочитал о них, я попытался переустановить gcc, и это решило проблему. Расположение заголовков должно быть изменено между High Sierra и Mojave.   -  person FlatKos    schedule 26.09.2018


Ответы (2)



Проблема решена переустановкой gcc. Расположение заголовков, вероятно, изменилось между High Sierra и Mojave.

Я предлагаю всем, кто сталкивается с той же проблемой, сделать то же самое, а также (пере) установить инструменты командной строки xcode с xcode-select --install

person FlatKos    schedule 26.09.2018
comment
Переустановка gcc4.9 и gcc7 на меня не повлияла. Однако использование прямого пути (/usr/bin/gcc) позволило мне скомпилировать - person Anti Earth; 15.11.2018