Как обычно, перед публикацией я пытаюсь прочитать много форумов, ответы Google и до сих пор не могу найти проблему. У меня есть часть кода, который работает. Он компилируется на любом Linux-dist, он компилируется в горном льве раньше, и он компилируется с терминала, когда я пытаюсь скомпилировать его через netbeans 7.4, я получаю следующие ошибки. Вот компиляция:
g++ -c -g -I../../Downloads/boost_1_50_0 -I. -I../../Downloads/RInside/inst/include -I/Library/Developer/CommandLineTools/usr/bin/../lib/clang/5.0/include -I/ -I/Library/Developer/CommandLineTools/usr/include -I/usr/include -I/usr/include/c++/4.2.1 -MMD -MP -MF "build/Debug/GNU-MacOSX/main.o.d" -o build/Debug/GNU-MacOSX/main.o main.cpp
И вот ошибки
In file included from main.cpp:7:
In file included from /usr/include/c++/4.2.1/cstdlib:71:
In file included from /usr/include/stdlib.h:65:
In file included from /usr/include/sys/wait.h:110:
/usr/include/sys/resource.h:193:2: error: unknown type name 'uint8_t'
uint8_t ri_uuid[16];
^
/usr/include/sys/resource.h:194:2: error: unknown type name 'uint64_t'
uint64_t ri_user_time;
Строка 7 гласит:
#include <cstdlib>
Я думаю, что это проблема с библиотеками include, но это всего лишь предположение, я снова установил netbeans, получил java 1.7.0_45, установил инструменты командной строки, удалил cache_dir и все еще ту же проблему, действительно странная часть - это то, что когда я скомпилировать его с терминала
g++ main.cpp -o main -I./
Это работает... и раньше это работало, когда у меня был горный лев... Любая помощь была бы глубоко оценена. Лучший, Хорхе
Аналогичная проблема возникла и для меня (но для clang). Бруст помог мне исправить это. brew doctor
перечислил много файлов заголовков (все в /usr/include/
, с некоторым предупреждением, которое я теперь не помню).
Простое перемещение этих файлов заголовков сработало для меня.
Итак, друг предложил начать удаление библиотек до тех пор, пока команда не запустится (потому что с простым sintax он запускается в командном терминале), и это именно то, что я сделал, и это библиотека, которая вызывает проблему:
-I/Library/Developer/CommandLineTools/usr/bin/../lib/clang/5.0/include
Кажется, что когда mavericks обновляется, он переключается на clang, поэтому почему-то эта строка вызывает проблему с надлежащей компиляцией кода, я бы хотел, чтобы у меня был правильный ответ на то, что происходит, но по крайней мере это решит проблему, любой правильный ответ был бы оценен :)