Kirjoittaja Aihe: Netbeans ja SDL ja g++..  (Luettu 3196 kertaa)

LinuxManne

  • Vieras
Netbeans ja SDL ja g++..
« : 01.06.08 - klo:05.56 »

Viesti siirretty Bitti avaruuteen..

//----

kiitos,,
« Viimeksi muokattu: 01.06.08 - klo:06.58 kirjoittanut LinuxJari »

LinuxManne

  • Vieras
Vs: Netbeans ja SDL ja g++..
« Vastaus #1 : 01.06.08 - klo:06.53 »
Lisää!

tästä linkistä source..

http://www.ohjelmointiputka.net/koodit_nayta.php?tunnus=953

IDE nä siis yhä Netbeans 6.01..

Luon uuden Projectin ja teen siihen uuden c++ fileen ja sitten copy/pastean edellisen linkin sisällön uuteen fileeseeni..

tässä tulos buildin jälkeen..

Lainaus
Running "/usr/bin/make  -f Makefile CONF=Debug" in /home/jtapio/NetBeansProjects/Application_4

/usr/bin/make -f nbproject/Makefile-Debug.mk SUBPROJECTS= .build-conf
make[1]: Entering directory `/home/jtapio/NetBeansProjects/Application_4'
mkdir -p dist/Debug/GNU-Linux-x86
g++     -o dist/Debug/GNU-Linux-x86/application_4 build/Debug/GNU-Linux-x86/newmain.o 
build/Debug/GNU-Linux-x86/newmain.o: In function `PiirraRuutu(SDL_Surface*)':
/home/jtapio/NetBeansProjects/Application_4/newmain.cc:62: undefined reference to `SDL_LockSurface'
/home/jtapio/NetBeansProjects/Application_4/newmain.cc:94: undefined reference to `SDL_UnlockSurface'
/home/jtapio/NetBeansProjects/Application_4/newmain.cc:95: undefined reference to `SDL_Flip'
build/Debug/GNU-Linux-x86/newmain.o: In function `main':
/home/jtapio/NetBeansProjects/Application_4/newmain.cc:103: undefined reference to `SDL_Init'
/home/jtapio/NetBeansProjects/Application_4/newmain.cc:105: undefined reference to `SDL_GetError'
/home/jtapio/NetBeansProjects/Application_4/newmain.cc:108: undefined reference to `SDL_Quit'
/home/jtapio/NetBeansProjects/Application_4/newmain.cc:110: undefined reference to `SDL_SetVideoMode'
/home/jtapio/NetBeansProjects/Application_4/newmain.cc:113: undefined reference to `SDL_GetError'
/home/jtapio/NetBeansProjects/Application_4/newmain.cc:153: undefined reference to `SDL_ShowCursor'
/home/jtapio/NetBeansProjects/Application_4/newmain.cc:161: undefined reference to `SDL_PollEvent'
collect2: ld returned 1 exit status
make[1]: *** [dist/Debug/GNU-Linux-x86/application_4] Error 1
make[1]: Leaving directory `/home/jtapio/NetBeansProjects/Application_4'
make: *** [.build-impl] Error 2

Build failed. Exit value 2.

mikä menee väärin..

compile ei tuota virheitä..

tämä on ensi touch Linux c++ maailmaan, kiitos kun autat..

//----

kiitos,,
« Viimeksi muokattu: 01.06.08 - klo:07.09 kirjoittanut LinuxJari »

janne

  • Käyttäjä
  • Viestejä: 5150
    • Profiili
Vs: Netbeans ja SDL ja g++..
« Vastaus #2 : 01.06.08 - klo:11.04 »
Lainaus
...
/home/jtapio/NetBeansProjects/Application_4/newmain.cc:113: undefined reference to `SDL_GetError'
/home/jtapio/NetBeansProjects/Application_4/newmain.cc:153: undefined reference to `SDL_ShowCursor'
/home/jtapio/NetBeansProjects/Application_4/newmain.cc:161: undefined reference to `SDL_PollEvent'
collect2: ld returned 1 exit status
...

mikä menee väärin..

tuossa lukee, että virhe tulee ld:ltä eli GNU-projektin linkkerilltä, joka ei löydä linkkausvaiheessa kääntämäsi objektitiedostos sisältämiä viittauksia SDL-kirjaston funktioihin.

compile ei tuota virheitä..

tämä tietty tarkoittaa, että sinulla on vaadittavat header-tiedostot asennettuna ja objektitiedosto voidaan luoda.

tämä on ensi touch Linux c++ maailmaan, kiitos kun autat..

jos kääntäminen on kuitenkin tuttu toimenpide, niin tiedät, että linkkerille pitää tarjota myös käytettyjen kirjastojen tiedot. se, miten homma netbeansissa määritellään, on minulle täysi mysteeri, ksoka en ole käyttänyt sitä ikinä muuten kuin javan kanssa.

[edit]
ehdin nyt vähän testaamaankin tuota ja kivasti se kääntyi komentoriviltä ja toimikin ihan hyvin ajettuna.

käänsin aluksi ihan käsin:
Koodia: [Valitse]
$ g++ sdl_sample.cpp -lSDL -o sdl_sample
pitemmän päälle menee varmaan helpommin jos tottuu käyttämään pkg-configia:
Koodia: [Valitse]
$ g++ sdl_sample.cpp `pkg-config --cflags --libs sdl` -o sdl_sample
« Viimeksi muokattu: 01.06.08 - klo:21.58 kirjoittanut janne »
Janne

LinuxManne

  • Vieras
Vs: Netbeans ja SDL ja g++..
« Vastaus #3 : 02.06.08 - klo:06.35 »
Jeh!

Kiitos avustasi, Netbeans kääntää ja suorittaa nyt c++ fileitäni oikein..
laitoin linkkeriin additional optionsseihin -lSDL -lGL -lGLU ja se riitti näihin sourceihin joita käytän..
kiitos..

vielä on kysymyksenä, että, mitenkä tässä Linuxin c++ touhussa, Java on jo tuttu minulle, toimii tää webbi yhteensopivuus..
jos laittaisin c++ applicationin kotisivuilleni ni onko olemassa mitään php css tai mitään muutakaan scriptiä jolla saisin
ladattua ja käynnistettyä c++ applicationin webbi hotellistani selaimellani..

//----

kiitos,,

janne

  • Käyttäjä
  • Viestejä: 5150
    • Profiili
Vs: Netbeans ja SDL ja g++..
« Vastaus #4 : 02.06.08 - klo:22.37 »
Netbeans kääntää ja suorittaa nyt c++ fileitäni oikein..
laitoin linkkeriin additional optionsseihin -lSDL -lGL -lGLU ja se riitti näihin sourceihin joita käytän..

hyvä juttu :)

vielä on kysymyksenä, että, mitenkä tässä Linuxin c++ touhussa, Java on jo tuttu minulle, toimii tää webbi yhteensopivuus..

nyt en taida ihan tarkalleen ottaen ymmärtää mitä ajat takaa.

jos laittaisin c++ applicationin kotisivuilleni ni onko olemassa mitään php css tai mitään muutakaan scriptiä jolla saisin ladattua ja käynnistettyä c++ applicationin webbi hotellistani selaimellani..

siis haluatko kotisivullesi lähdekoodia ja haluaisit kääntää sen jossain automaattisesti mitä varten?

voi olla, että aivan hakoteillä.
Janne

peran

  • Vieras
Vs: Netbeans ja SDL ja g++..
« Vastaus #5 : 03.06.08 - klo:04.46 »
vielä on kysymyksenä, että, mitenkä tässä Linuxin c++ touhussa, Java on jo tuttu minulle, toimii tää webbi yhteensopivuus..
jos laittaisin c++ applicationin kotisivuilleni ni onko olemassa mitään php css tai mitään muutakaan scriptiä jolla saisin
ladattua ja käynnistettyä c++ applicationin webbi hotellistani selaimellani..

Jos ajat takaa vastaavanlaista sovellusta kuin java-appletit, niin C++:ssa ei sitä ole.
Jos taas haluat merkkipohjaisen ohjelman ajaa serverillä, kun käyttäjä käy sinun sivullasi, niin onnistuu.
Jos taas haluat oman ohjelmasi ladattavaksi ja ajettavaksi kotilinukalla, niin jollakin asennusscriptillä lieneen onnistuu myös tämä, mutta käyttäjällä tulee olla linukka ja ohjelman tarvitsemat kirjastot koneessaan. Tosin kirjastot voineen linkata ohjelman sisään tai laittaa paketin mukana. Tekniikoista tosin mulla ei ole sen enempää tietoutta.

LinuxManne

  • Vieras
Vs: Netbeans ja SDL ja g++..
« Vastaus #6 : 03.06.08 - klo:07.37 »
vielä on kysymyksenä, että, mitenkä tässä Linuxin c++ touhussa, Java on jo tuttu minulle, toimii tää webbi yhteensopivuus..
jos laittaisin c++ applicationin kotisivuilleni ni onko olemassa mitään php css tai mitään muutakaan scriptiä jolla saisin
ladattua ja käynnistettyä c++ applicationin webbi hotellistani selaimellani..

Jos ajat takaa vastaavanlaista sovellusta kuin java-appletit, niin C++:ssa ei sitä ole.
Jos taas haluat merkkipohjaisen ohjelman ajaa serverillä, kun käyttäjä käy sinun sivullasi, niin onnistuu.
Jos taas haluat oman ohjelmasi ladattavaksi ja ajettavaksi kotilinukalla, niin jollakin asennusscriptillä lieneen onnistuu myös tämä, mutta käyttäjällä tulee olla linukka ja ohjelman tarvitsemat kirjastot koneessaan. Tosin kirjastot voineen linkata ohjelman sisään tai laittaa paketin mukana. Tekniikoista tosin mulla ei ole sen enempää tietoutta.

Ajattelin että jos U8.04 ja Apache siellä var/www/munapplication..
tämä munapplication käynnistettäisiin jollakin scriptillä surffaajan webbi selaimen avulla..
appletit ovat ihan ok, mutta haluaisin kokeilla myös tätä g++ puolta..

//----

kiitos,,

janne

  • Käyttäjä
  • Viestejä: 5150
    • Profiili
Vs: Netbeans ja SDL ja g++..
« Vastaus #7 : 03.06.08 - klo:18.22 »
Ajattelin että jos U8.04 ja Apache siellä var/www/munapplication..
tämä munapplication käynnistettäisiin jollakin scriptillä surffaajan webbi selaimen avulla..
appletit ovat ihan ok, mutta haluaisin kokeilla myös tätä g++ puolta..

no joo, siis CGI-scriptejä voi kirjoittaa millä tahansa kielellä ja niitä voi suorittaa siten, että selain kutsuu niitä. ohjelma ei kuitenkaan pyöri selaimessa, vaan palvelimella, ja selaimelle tulostuu se, mitä CGI scripti tulostaa stdouttiin.
« Viimeksi muokattu: 03.06.08 - klo:18.28 kirjoittanut janne »
Janne