2010-06-02 3 views
0

Мои IDE (NetBeans) считает, что это неверный код, но он компилирует правильно:помощь Код в Netbeans на Linux

std::cout << "i = " << i << std::endl; 
std::cout << add(5, 7) << std::endl; 
std::string test = "Boe"; 
std::cout << test << std::endl; 

Он всегда говорит unable to resolve identifier .... (.... = cout, endl, string);

Так что я думаю, что это что-то делать с кодовая помощь. Я думаю, что мне нужно изменить/добавить/удалить некоторые папки. В настоящее время, у меня есть к ним относятся папки:

C компилятор:

/usr/local/include 
/usr/lib/gcc/i486-linux-gnu/4.4.3/include 
/usr/lib/gcc/i486-linux-gnu/4.4.3/include-fixed 
/usr/include 

C++ компилятор:

/usr/include/c++/4.4.3 
/usr/include/c++/4.4.3/i486-linux-gnu 
/usr/include/c++/4.4.3/backward 
/usr/local/include 
/usr/lib/gcc/i486-linux-gnu/4.4.3/include 
/usr/include 

Что может быть причиной этого, и как я могу сделать NetBeans пометить его как действительный код?

ответ

2

Он отлично работает для меня. Я использую NetBeans 6.8; единственная неопределенная ссылка, которую я получил, была для функции add().

Можете ли вы протестировать новый проект, чтобы узнать, можете ли вы воспроизвести проблему?

EDIT (ответ):

Да, протестирован на Linux. В свойства проекта нет добавленных дополнений.

В глобальных вариантах C/C++ у меня есть дополнительный путь включения для C, /usr/include/i486-linux-gnu.
Для C++ у меня есть:

/usr/include/c++/4.4 
/usr/include/c++/4.4/i486-linux-gnu 
/usr/include/c++/4.4/backward 
/usr/local/include 
/usr/lib/gcc/i486-linux-gnu/4.4.3/include 
/usr/lib/gcc/i486-linux-gnu/4.4.3/include-fixed 
/usr/include/i486-linux-gnu 
/usr/include 

Это мои по умолчанию, не трогали их. HTH Я также использую gcc-4.4.3 (Ubuntu 10.04).

+0

Вы также работаете с Linux?Если, так, можете ли вы увидеть какой-либо diff с вашими входящими папками? –

+0

Вставлено в основной комментарий для лучшей читаемости. – Unknown

0

Есть ли у вас подходящие?

Если я правильно помню, вы должны

#include <iostream> 
+0

Да, он включен. –

+0

У вас нет проблем с включением? Тогда у вас нет проблем с путями include, это точно. Попробуйте скомпилировать его из командной строки, чтобы мы могли локализовать проблему. – BAndonovski

+0

Но он компилируется без проблем. Отладчик IDE считает, что это неправильно. –

0

Перейти к Инструменты-> Параметры-> C/C++ -> Инструменты сборки, он покажет компилятор NetBeans. .

/usr/bin/g++ 

Typing в терминале:

$ whereis g++ 
    g++: /usr/bin/g++ /usr/bin/X11/g++ /usr/share/man/man1/g++.1.gz 
    $ ls -al /usr/bin/g++ 
    lrwxrwxrwx 1 root root 7 Mar 13 2012 /usr/bin/g++ -> g++-4.6 

покажет, какую версию компилятора Netbeans использует. Если библиотеки на вкладке «Содействие кодам» не совпадают, вам необходимо изменить их для правильной версии. .

/usr/include/c++/4.6 
    ... 
    /usr/lib/gcc/i686-linux-gnu/4.6/include-fixed 

и так далее.

Смежные вопросы