PDA

View Full Version : [C++] NetBeans


wizard_at
15-09-2008, 14:35
Ciao a tutti, non sgridatemi perche' voglio usare il C++.
So gia' che CERTI di voi mi dirano che fa schifo e che python e' mooolto meglio ma io voglio usare C++.

Il mio problema e' questo: (riassumo le condizioni)
-programmo in Linux
-volevo usare NetBeans
-di C++ non sono un novello

Ho installato NetBeans scaricandolo dal sito.
Ho aperto un progetto di default (Welcome (stampa a schermo "Welcome" seguito dagli argomenti dati al programma (una cagata))
Gli ho chiesto gentilmente di compilarlo e questo e' il risultato:

Running "/usr/bin/make -f Makefile CONF=Debug" in /home/wizard/NetBeansProjects/Welcome_1

/usr/bin/make -f nbproject/Makefile-Debug.mk SUBPROJECTS= .build-conf
make[1]: Entering directory `/home/wizard/NetBeansProjects/Welcome_1'
mkdir -p build/Debug/GNU-Linux-x86
g++ -c -g -o build/Debug/GNU-Linux-x86/welcome.o welcome.cc
welcome.cc:42:22: error: iostream.h: No such file or directory
welcome.cc: In function ‘int main(int, char**)’:
welcome.cc:45: error: ‘cout’ was not declared in this scope
make[1]: *** [build/Debug/GNU-Linux-x86/welcome.o] Error 1
make[1]: Leaving directory `/home/wizard/NetBeansProjects/Welcome_1'
make: *** [.build-impl] Error 2

Build failed. Exit value 2.

come faccio?

cionci
15-09-2008, 15:09
Probabilmente stai seguendo un tutorial/libro su C++ un po' vecchio.
iostream.h non è più un header valido.
Iostream si include così:

#include <iostream>

E poi devi usare la direttiva using ed importare in namespace std o solo alcuni simboli.
Inoltre perché vuoi usare NetBeans per sviluppare in C++ ? Io ti consiglio Code::Blocks.

In ogni caso sembra che tu non abbia gli header del c++ installati. Il codice non avrebbe dovuto darti errore, ma solo uno warning per l'inclusione della libreria deprecata. Quale distro Linux usi ?

wizard_at
15-09-2008, 16:03
Probabilmente stai seguendo un tutorial/libro su C++ un po' vecchio.
iostream.h non è più un header valido.
Iostream si include così:

#include <iostream>

E poi devi usare la direttiva using ed importare in namespace std o solo alcuni simboli.
Inoltre perché vuoi usare NetBeans per sviluppare in C++ ? Io ti consiglio Code::Blocks.

In ogni caso sembra che tu non abbia gli header del c++ installati. Il codice non avrebbe dovuto darti errore, ma solo uno warning per l'inclusione della libreria deprecata. Quale distro Linux usi ?

il codice non e' mio ma e' di NetBeans stesso. Mi sono fidato di cio' che aveva come esempio.

come distro uso Debian Lenny.

EDIT: cout non ha un namespace da mettere? cout funziona anche con il terminal di linux?

cionci
15-09-2008, 16:08
Allora, supponendo che il pacchetto sia lo stesso di Ubuntu, installa build-essential

cionci
15-09-2008, 16:09
EDIT: cout non ha un namespace da mettere? cout funziona anche con il terminal di linux?
cout è nel namespace std.

ndakota
15-09-2008, 16:09
il codice non e' mio ma e' di NetBeans stesso. Mi sono fidato di cio' che aveva come esempio.

come distro uso Debian Lenny.

EDIT: cout non ha un namespace da mettere? cout funziona anche con il terminal di linux?

un buon motivo per passare a codeblocks :D

wizard_at
15-09-2008, 16:26
codeblocks installato. vi faro' sapere

(codeblocks mi sembra meglio di NetBeans. La creazione di progetti con Irrlicht, Ogre o OpenGL era quello che cercavo. grazie)

cionci
15-09-2008, 16:28
Ovviamente devi anche installare le rispettive librerie di sviluppo.
Non so che versione tu abbia nel repository, ma controlla quella sul sito

wizard_at
15-09-2008, 17:16
installato CodeBlocks, voglio compilare un file compilo normalmente a linea di comando cosi':

g++ -I../../include -I/usr/X11R6/include -O3 -ffast-math main.cpp -o ../../bin/Linux/01.HelloWorld -L../../lib/Linux -lIrrlicht -L/usr/X11R6/lib -lGL -lXxf86vm -lXext -lX11


(e' il primo esempio di irrlicht.)

Come setto CodeBlocks per farglielo fare?

PS: se mi date il link di un tutorial va piu' che bene.

grazie di tutto

cionci
15-09-2008, 17:29
grazie di tutto
Per irrlicht non lo so, ma in generale devi mettere le stesse impostazioni nella configurazione del progetto di code blocks. Se sai cosa significano quei parametri sai anche come inserirli in code blocks, sono chiamati esattamente con gli stessi nomi ;)

wizard_at
15-09-2008, 17:35
installato CodeBlocks, voglio compilare un file compilo normalmente a linea di comando cosi':

g++ -I../../include -I/usr/X11R6/include -O3 -ffast-math main.cpp -o ../../bin/Linux/01.HelloWorld -L../../lib/Linux -lIrrlicht -L/usr/X11R6/lib -lGL -lXxf86vm -lXext -lX11


(e' il primo esempio di irrlicht.)

Come setto CodeBlocks per farglielo fare?

PS: se mi date il link di un tutorial va piu' che bene.

grazie di tutto

trovato.

a chi unque servisse: http://www.irrlicht3d.org/wiki/index.php?n=Main.SettingUpCodeBlocksOnLinux