Asensin koneelleni TDM-GCC Kääntäjän ja SDL2 kirjaston, jotta saisin käynnistettyä kisaan ilmoitetun Trive -pelin.
Ajan käynnistyksen komennolla:
g++ trive.cpp -lSDL2 -lSDL2_image -o trive
Mutta komento kaatuu seuraavaan virheilmoitukseen:
in function `main':
C:/crossdev/src/mingw-w64-v7-git20191109/mingw-w64-crt/crt/crt0_c.c:18: undefined reference to `WinMain'
collect2.exe: error: ld returned 1 exit status
Peli perustuu SDL-kirjaston tutoriaaleihin, joten parhaat ohjeet löytyy sen sivulta
http://lazyfoo.net/tutorials/SDL/01_hello_SDL/
Helpointa olisi jos laittaisit binäärit ladattavaksi
*poistettu*
Laita tuo Virhe-ilmoitus Googleen tai Edgeen tai mihin tahansa ja katso tulokset.
#define SDL_MAIN_HANDLED
Juu kiitos, tämän kun laittoi niin kääntyi.
Kuuluuisiko pelissä näkyä jonkinlaista grafiikkaa? Itsellä näkyy vain siniset ääriviivat valkoisella pohjalla: https://imgur.com/c6DkKv2
Poistin SDL2_image-kirjaston käytön (koska sitähän ei edes käytetä pelissä vaan vain alustetaan ja suljetaan). Sitten käänsin pelin näin:
x86_64-w64-mingw32-g++ trive.cpp -lmingw32 -lSDL2main -lSDL2 -lgdi32 -luser32 -lwinmm -limm32 -lole32 -lversion -loleaut32 -o trive.exe -Os -static -s
Lopputulos: trive.exe.
Jep, Windows-kääntäminen tarvitsee näköjään tuon main-jutun. Korjasin yllä mainitut asiat, pakettiin
https://www.ohjelmakartta.fi/trive/trive-1.1.zip
Tuli myös muutama lähtekooditiedosto lisää, joten nyt käännetään Linuxissa:
g++ trive.cpp ajo.cpp auto.cpp grafiikka.cpp tie.cpp -lSDL2 -o trive
Windows tarvitsee vähintäänkin seuraavan muutoksen:
g++ trive.cpp ajo.cpp auto.cpp grafiikka.cpp tie.cpp -lSDL2main -lSDL2 -o trive.exe
Tässä kääntämisessä on se ilo, että peliä pystyy editoimaan helposti. Muutoksilla "auto.cpp" ja "tie.cpp" tiedostoihin saa pelistä ihan erilaisen. Tarkoitus olisi, että pelaajat voisivat tehdä myöhemmin omia autoja ja ratoja. Tämä selkiintyy myöhemmin.
Paria retropeli-kilpailuun osallistunutta peliä en pystynyt testaamaan, koska ei heittämällä toiminut windowsissa. Linukka löytyy jostain wanhasta läppärin raadosta ja säätäminen kirjastojen/kääntäjien kanssa ei sinänsä ole ongelma, mutta helpottais arvostelua jos peli toimii suoraan selaimessa ja/tai winkkarissa.
Aihe on jo aika vanha, joten et voi enää vastata siihen.