Skocz do zawartości

Problem Z C++ I Gcc


Andrzej Orkan

Rekomendowane odpowiedzi

Sluchajcie, mam problem. Zainstalowalem sobie FC2 i probuje uruchomic pod kompilatorem gcc podstawowy program:

 

# include <iostream.h>

int main() {

cout << "hello" << endl;

return 0;

}

 

Po prostu podstawa. Ale kompilator mi to odrzucil! Ktos wie o co w tym biega? Prosze o pomoc!!!!

 

Orkan

 

P.S. A to co wyrzucil gcc na ekran:

 

 

In file included from /usr/local/include/c++/3.3/backward/iostream.h:31,

from andy.cpp:1:

/usr/local/include/c++/3.3/backward/backward_warning.h:32:2: warning: #warning This file includes at least one deprecated or antiquated header. Please consider using one of the 32 headers found in section 17.4.1.2 of the C++ standard. Examples include substituting the <X> header for the <X.h> header for C++ includes, or <sstream> instead of the deprecated header <strstream.h>. To disable this warning use -Wno-deprecated.

Undefined first referenced

symbol in file

std::basic_ostream<char, std::char_traits<char> >::operator<<(std::basic_ostream<char, std::char_traits<char> >& (*)(std::basic_ostream<char, std::char_traits<char> >&))/var/tmp//cc1sSYRm.o

std::cout /var/tmp//cc1sSYRm.o

std::ios_base::Init::~Init [in-charge]()/var/tmp//cc1sSYRm.o

std::ios_base::Init::Init[in-charge]()/var/tmp//cc1sSYRm.o

__gxx_personality_v0 /var/tmp//cc1sSYRm.o

std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)/var/tmp//cc1sSYRm.o

std::basic_ostream<char, std::char_traits<char> >& std::endl<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&)/var/tmp//cc1sSYRm.o

ld: fatal: Symbol referencing errors. No output written to a.out

collect2: ld returned 1 exit status

Odnośnik do komentarza
Udostępnij na innych stronach

/usr/local/include/c++/3.3/backward/iostream.h:31,

Skąd masz tę paczkę? W RedHacie/Fedorze żadna paczka nic nie zapisuje w /usr/local/ Zainstaluj kompilator z dystrybucji i zobacz czy działa.

/usr/local/include/c++/3.3/backward/backward_warning.h:32:2: warning: #warning This file includes at least one deprecated or antiquated header. Please consider using one of the 32 headers found in section 17.4.1.2 of the C++ standard. Examples include substituting the <X> header for the <X.h> header for C++ includes, or <sstream> instead of the deprecated header <strstream.h>. To disable this warning use -Wno-deprecated.

Też mi to wyskoczyło, ale się skompilowało :-)

Odnośnik do komentarza
Udostępnij na innych stronach

# include <iostream.h>
int main() {
cout << "hello" << endl;
return 0;
}

Jesli tak wyglada Twoj kod, to jest w nim blad. Zapomniales dodac czegos takiego jak using std::cout; lub using namespace std; ;)

 

Poza tym, do kompilacji kodu w C++ polecalbym raczej g++, a nie gcc.

 

P.S. Przy tak krotkim kodzie mozesz dac bez niczego w stylu using costam, tylko po prostu w funkcji std::cout i problem rozwiazany ;)

Odnośnik do komentarza
Udostępnij na innych stronach

jeśli korzysta z iostream.h to nie musi być std ale wtedy wyskakują warrningi bo domyślnie powinno korzystać się z iostream.

 

a błąd tkwi faktycznie w g++ zamiast gcc.

 

A tak apropos Orkan to polecam do programowania Anjute. Dostępna przez (_apt'a_ → apta) ORT i (_yum'a_ → yuma) ORT, bardzo dobre środowisko do programowania :)

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
×
×
  • Dodaj nową pozycję...