В Ubuntu 12.04 LTS я установил плагин Eclipse CDT и открыл новый проект hello world, чтобы просто проверить все. Когда я создавал проект, я выбрал единственный набор инструментов: «Linux GCC»
. Однако, когда проект создается, в нем говорится, что
#include<iostream>
#include<cstdlb>
не решены. Таким образом, строки с cout
и endl
не могут использоваться и не могут найти std
.
using namespace std;
также вызывает проблемы.
Как я могу получить мои директивы #include
для распознанных заголовков стандартной библиотеки для поддержки кода, использующего пространство имен std
?
Если у Вас была та же проблема, я сделал, я подозреваю, что Ваш проект создает только завершение кода / код, выделяющий сбои? Я только что нашел некоторые примечания, которые могут быть полезными. Вот то, что я сделал:
Проект-> Свойства
Общий C/C++
Пути и символы
выберите соответствующий язык
Нажмите "Add" и добавьте версию компилятора определенные каталоги
Для языка 'GNU C++' я добавил:
/usr/include
/usr/include/c++/4.6
/usr/include/c++/4.6/bits
/usr/include/i386-linux-gnu
/usr/include/i386-linux-gnu/bits
/usr/include/c++/4.6/debug
/usr/include/c++/4.6/i686-linux-gnu
/usr/include/c++/4.6/i686-linux-gnu/bits
Для "GNU C" я добавил:
/usr/include
/usr/include/i386-linux-gnu
/usr/include/i386-linux-gnu/bits
TBH, я не думаю, что все каталоги выше на самом деле требуются (Вы могли, вероятно, удалить каталоги 'битов'), но список выше обработанного для меня в то время.
Я теперь использую Индиго Eclipse (версия 3.7.2) из eclipse.org, и это автоматически находит и добавляет, что корректные включают каталоги. Список отличается для меня:
/usr/include/c++/4.6
/usr/include/c++/4.6/i686-linux-gnu
/usr/include/c++/4.6/backward
/usr/lib/gcc/i686-linux-gnu/4.6/include
/usr/local/include
/usr/lib/gcc/i686-linux-gnu/4.6/include-fixed
/usr/include/i386-linux-gnu
/usr/include
Очевидно, только добавьте включать каталоги, которые на самом деле существуют в Вашей системе ;-)