Du bist nicht angemeldet.
Yeah... es compiliert
Als Hilfe für den nächsten, der es versucht, dokumentiere ich hier mal noch, was ich gemacht habe.
Steht zwar mehr oder weniger schon alles in diversen Beiträgen weiter oben, so ists aber nochmal kondensiert:
Installation unter Linux 64bit (getestet unter Ubuntu 16.04):
1.) BlitzMax-NG von https://github.com/bmx-ng/bmx-ng/releases runterladen und entpacken (BlitzMax Linux.x64)
2.) Abhängige Pakete nachinstallieren:
sudo apt install g++ libglu1-mesa-dev libasound2-dev libfreetype6-dev libxpm-dev libxft-dev libxxf86vm-dev libpulse-dev libopenal-dev libwebkitgtk-dev
sudo apt-get install libaudio-dev libxss-dev
3.) MaxMod2 von https://github.com/bmx-ng/maxmod2.mod heruntergeladen und in das Mod-Verzeichnis von BlitzMax-NG (BlitzMax/mod) entpacken.
--> Hier habe ich am Anfang den Fehler gemacht den Inhalt von https://github.com/bmx-ng/maxmod2.mod direkt ins Mod-Verzeichnis, statt in ein Verzeichnis BlitzMax/mod/maxmod2.mod zu entpacken. In diesem BlitzMax/mod/maxmod2.mod-Verzeichnis muss also nochmal ein maxmod2.mod-Verzeichnis liegen, dann ist es richtig
4.) TVTower von https://github.com/TVTower/TVTower runterladen (oder per git klonen)
5.) BlitzMax/maxide starten
6.) In der BlitzMax-Entwicklungsumgebung das Skript TVTower/TVTower.bmx öffnen
7.) Mit Klick auf die Rakete compilieren
Falls irgendwo Compiler-Fehler der Art
fatal error: blabla/xyz.h: No such file or directory
auftauchen, fehlen noch irgendwelche Abhängigkeiten in der Installation. In dem Fall hilft apt-file weiter:
8.) apt-file installieren und Cache aktualisieren:
sudo apt-get install apt-file
sudo apt-file update
9.) Abhängige Pakete suchen: (z.B. für den o.g. Fehler)
sudo apt-file find xyz.h
--> libxyz-dev: /usr/include/blabla/xyz.h
10.) Paket nachinstallieren
sudo apt-get install libxyz-dev
11.) Nochmal versuchen TVTower zu compilieren. Falls man einen neuen Fehler bekommt bei Schritt 9. weitermachen bis alle Abhängigkeiten nachinstalliert wurden und das Compilieren klappt.
Gruß,
Kc
Offline
Cool. Danke fuer die Anleitung - und ich hoffe es kompiliert nicht nur, sondern laeuft auch ;-).
Falls es zu abstrusen Abstuerzen kommt, dann hab ich was "halbfertiges" hochgeladen. Im Zweifel dann den Versionsstand runterladen, der vor einem "Versionsbranch" liegt - also einem Commit der die Versionsnummer des letzten (ja als funktionstuechtig) Releases traegt.
Auch koennen kleine Fehler mit neuen BlitzMaxNG-Versionen auftreten, aber die meldet man kurz und dann kommt Brucey sehr schnell mit entsprechenden Fixes zu Hilfe.
bye
Ron
Offline
sorry aber als normaler Spieler versteht man hier absolut nicht um was es hier eigentlich überhaupt geht ?
was genau bringt es das zu installen oder für was macht ihr das überhaupt ?
Offline
Damit kannst Du aus dem Quellcode ("textliche Anweisungen") Programmcode (".exe") erstellen. Kurz du bekommst eine weit aktuellere Fassung als auf der Website.
Auch ermoeglicht dies, bestimmte Interna anzupassen ("Preis = Preis * 0.5", "Strafen = 0") oder bei Interesse mitzuwerkeln (neue Funktionen einbauen).
bye
Ron
Offline
Selbst kompilierte, experimentelle Version von
dev0.71 (Stand: 01.08.2021)
enthält nur die ausführbare 32bit-Datei, keine Musik,
startet im VollBild-Modus mit 800x600;
sollte auch auf jedem (?) 64bit-System mit Win10 funktionieren.
TVTower_01082021_win32_keine-musik_VollBild-800x600.zip (11.42 MB)
https://filehorst.de/d/dngGzFsu
https://workupload.com/file/qZAC35e26Xv
https://www.file-upload.net/download-14658572/
TVTower_01082021_win32_keine-musik_VollBild-800x600.zip.html
Mir schon klar dasz das eigentlich dahin
https://www.gamezworld.de/phpforum/viewtopic.php?id=13691
gehört. Ich wollte aber nichts unter das Tutorial von
Ronny setzen: das funktioniert einwandfrei!
MfG Janko Weber
Selbst kompilierte, experimentelle Version von
dev0.71 (Stand: 14.09.2021), 7zip-Archiv.
enthält nur die ausführbare 32bit-Datei, keine Musik,
startet im Fenster-Modus mit 1280x1024;
funktioniert mittels Wine 1.6.20 auf 32bit Linux-Systemen
und sollte auf jedem (?) 64bit-System mit Win10 funktionieren
TVTower_14092021_win32_Fenster-1280x1024_keine-Musik.7z (11.08 MB)
https://filehorst.de/d/dldAurtJ
https://workupload.com/file/P2ACpcGYj2B
https://www.file-upload.net/download-14694955
/TVTower_14092021_win32_Fenster-1280x1024_keine-Musik.7z.html
dasselbe mit Musik in schlechter Qualität (kann problemlos
durch Original-Dateien ersetzt werden) als zip-Archiv
TVTower_14092021_win32_Fenster-1280x1024_keine-Musik-Qualitaet.zip (20.39 MB)
https://filehorst.de/d/deEtxpjk
https://workupload.com/file/4PXxFCWPY6g
https://www.file-upload.net/download-14694959
/TVTower_14092021_win32_Fenster-1280x1024_keine-Musik-Qualitaet.zip.html
MfG Janko Weber
@Ronny
Ich würde von Dir mal wissen wollen mit welcher Version von BlitzMax Du die letzte 32bit-Linux-Binary erstellt hast. *?
Ich benutze MX-15 Debian Jessie 32bit (seit 2015),
woran sich in absehbarer Zeit nichts ändern wird.
Was hältst Du davon dasz es seit dem 11. Juni 2015 keine 32bit-Version von BlitzMax für Linux gibt wärend es bis heute 32bit-Versionen für MS-Windows gibt?
MfG Janko Weber
Das liegt daran, dass das Kompilieren einer 32bit-Version fuer Linux auch ein 32bit-Linux erfordert. Und ich hab bis jetzt noch keine 32bit-VM dafuer genutzt um es zu kompilieren, versuche aber, die Github-action-VMs (alle nur 64bit) mal dazu zu ueberreden, die i386-libs zu installieren (und die x64 dadurch rauszuschmeissen).
Das muss ich aber alles erstmal per VM "nachstellen". Auch gab es glaube vor einer Weile noch Probleme mit 32bit + Compiler + unser Quellcode. Da Du aber 32bit-Linux zu kompilieren scheinst - und nicht von diversen Bugs (ominoeser Natur) berichtest, scheint es ja "zu funktionieren".
Wichtig ist uebrigens auch, welche glibc installiert ist - wenn dein System eine niedrigere als "Ubuntu 18" anbietet, koennte es eventuell nicht laufen.
bye
Ron
Offline
OK. Ich habe nun ein Build-Skript zusammengeschraubt, was auf den github-actions-Ubuntu-18.04 images alle moeglichen Libs fuer :i386 herunterlaedt, Zeugs konfiguriert etc. (64 Bit hatte ich bereits zum laufen gebracht)
... und es erstellt fein ein komplettes Archiv (also Grafiken, Sounds, ... ausfuehrbare datei) und stellt auch nur die ausfuehrbare Datei bereit.
Fuer linux 32 und 64 kann ich also nun theoretisch bei jeder Codeaenderung (im Repo) automatisch Pakete erstellen lassen ("nightly builds").
Fehlt natuerlich der gleiche "Kram" fuer Mac OS und Windows. Aber ich bin auf einem guten Weg.
bye
Ron
Offline
@Ronny
Bilde ich mir das nur ein oder bist Du gerade unglaublich nett zu mir. *?
Du irrst Dich allerdings:
Ich benutze die vorgefertigte Windows-Version von BlitzMax für 32bit-Systeme und starte diese mittels Wine 1.6.20. Probleme mit der Musik gibt es auch mit der von mir erstellten win32-Binary: das Spiel starte ich ebenfalls mittels Wine. Ich brauche keine Musik. Mir ist nun aber doch bekannt dasz die Probleme mit der Musik sowohl mit Deinen als auch mit meinen Executables auf Win10-Rechnern da sind. Titel werden abrupt beendet. Teilweise werden Titel abgebrochen und es startet der selbe Titel erneut. Du bist also offenbar noch weit davon entfernt das Musik-Problem gelöst zu haben.
Und ich komme immernochnicht dazu Dir mal klarzumachen was meiner Überzeugung nach im Spiel geändert werden sollte(?).
MfG Janko Weber
Ich bin zu Dir gerade nicht besonders nett - oder entgegengesetzt - eingestellt. Wenn Dir das subjektiv so vorkommt und gefaellt, dann - gern geschehen.
Musikprobleme sind _mir_ in den aktuellen Fassungen (und auch vorher) nicht aufgefallen, weder unter Windows noch Linux oder unter Mac OS X. Kann natuerlich bei anderen anders aussehen.
"weit entfernt" ... weit entfernt waere es, wenn bei Dir nur "Knacksen" aus den Lautsprechern kaeme. Oder wenn Titel jedes mal (oder von mir aus auch bei jedem 5. Titel) abbrechen wuerden. Dazu fehlen mir aber noch Fehlerberichte - und die wenn es geht, von mehreren Nutzern (um individuelle PC-Probleme auszuschliessen).
bye
Ron
Offline
@Ronny
Es gab in anderen Threads mehrere Teilnehmer die von Problemen mit der Musik berichtet haben: an einer Stelle bin ich sogar kritisiert worden weil ich vom Thema ablenke. Ich habe diese Probleme mit der Musik jedoch auch. Und das sowohl mit deinen Executables als auch mit meinen; sowohl mit Linux als auch mit MS-Windows.
MfG Janko Weber
Also, normaler weise spiele ich generell ohne Ton.
Ich habe nun mal den Ton eingeschaltet und muss nun sagen:
Es gibt keine Probleme.
Das Einzige was ich/wir hier festgestellt haben, dass es teilweise bei einem Raum-Wechsel kurz stockt. Dies kann ich allerdings auch mal auf einen Lade-Ruckler zurückführen. Bewegt sich im sehr niedrigen Millisekunden-Bereich, somit für mich sogar im Grunde vollkommen ok.
Mein System:
IdeaCentreMini 5 01IMH05
Also:
i5-10400T
32 GB RAM
INTEL UHD630 (Grafik)
Sound ist irgendwelcher OnBoard bzw. per BlueTooth auf eine BOSE SoundRevolve geworfen.
Win10 (21H1 - 19043.1237) als Betriebssystem
Also irgendwie 0 Probleme.
Bin halt nicht in der Lage diesen Fehler nach zu voll ziehen.
Vielleicht ist die Fehlerbeschreibung für mich nicht gut genug.
Wünsche mir eine Beschreibung, wie ich diesen Fehler auch bekommen kann, damit ich ihn einmal nachvollziehen kann.
Offline
@Dalli
>Wünsche mir eine Beschreibung, wie ich diesen Fehler auch bekommen kann, damit ich ihn einmal nachvollziehen kann.
Ich starte die auszuführende Datei per Doppelklick. *kopfschüttel
Es gab hier auch andere Nutzer die von Problemen mit der Musik berichteten.
Wofür braucht man 32 GB RAM;
um dem Konglomerat "in den Arsch zu kriechen" *?
Wofür braucht man 32 GB RAM;
um dem Konglomerat "in den Arsch zu kriechen" *?
Tatsächlich nicht, aber 32GB RAM waren 5€ teurer als die 16GB. Da ich so ein Held bin, der Programme öffnet, dann aber erst beim Runterfahren wieder schließt (oder schließen lässt), dachte ich mir: Schadet nicht und die 5€ hab ich auch noch übrig.
Ich gehe im Übrigen auch davon aus, dass ich einen anderen Anwendungsanspruch an einen Computer habe, als zum Beispiel du und ich somit deshalb schon eventuell andere Bauteile im System habe.
Ich gebe dir allerdings insofern recht, als dass ich bei TVTower alleine natürlich keine 32GB Ram voll bekommen werde. Selbst wenn dann nicht, wenn das Spiel 10x gestartet wird und entsprechend läuft.
Übrigens geht es mir auch gar nicht um "Arbeitsspeicher" voll auslasten, sondern darum dann noch etwas Puffer zu haben, damit ich noch paar Programme mehr öffnen kann.
Somit hat dies nichts mit irgendwelchen ganz wilden und aufregenden Theorien zu tun, sondern einzig und allein mit mir und meinem willen.
Die steile These mit dem "Konglomerat" würde auch voraussetzen, dass ich entsprechen viel Werbung schaue, damit die "Gehirnwäsche" funktioniert.
----------------------
Um jedoch auf das Ursprungsthema zurück zu kommen:
Bei mir läuft es einwandfrei. Somit wären eventuell doch Systemdaten interessant. (ich weiß: Vollkommen unwichtig, denn man kann aus diesen Eckdaten ja niemals irgendwelche Informationen ableiten oder aus einer Datenmenge auf ein Problem schlussfolgern...)
Ich leite das Soundsignal übrigens dann per BlueTooth auch an einen BT-Lautsprecher. Vielleicht klappt es auch nur deswegen bei mir. (Achtung: Verschwörungstheorie)
Darf ich vielleicht noch fragen: Wie genau äußert sich das Ton-Problem bei dir?
Kannst auch das Konglomerat missbrauchen und eine Bildschirmaufnahme bei YouTube hochladen. Dann können wir alle das Problem zumindestens hören und verstehen.
Offline
@Dalli
>Darf ich vielleicht noch fragen: Wie genau äußert sich das Ton-Problem bei dir?
Das steht in Beitrag 35.
ShadowKid (oder so ähnlich)
hat in einem anderen Thread ein paar interessante Links mit Beiträgen von mir gepostet. Bei Adventure-Treff steht das spannendste von mir aber eine Seite weiter...
https://www.adventure-treff.de/forum/topic?p=765572#p765572
bzw.
https://www.adventure-treff.de/forum/11/25179?start=60
Dort findest Du erkärt was ich mit Konglomerat meine:
die wichtigste Form der "organisierten Kriminalität" dieser Welt.
Ist Dir eigentlich bekannt dasz der Präsident der Vereinigten Staaten von Amerika vor seiner Wahl angekündigt hat die groszen Computer- und IT-Unternehmen zu zerschlagen?
Damals war diesem naiven Opa offenbar nicht bekannt dasz diese Unternehmen die wichtigsten "Unternehmungen" des US-Geheimdienst sind. *?
Bitte kein bloedsinniges Geschwurbel ueber "ominoese Machenschaften" hier aehem "ausdiskutieren".
Ihr koennt Eure Meinungen dazu haben - aber das Diskutieren hier fuehrt dann nur zu Kopfschuetteln oder Streitereien.
@ Soundproblem
Bitte dazu einen neuen Thread eroeffnen und wir versuchen das dann gezielt "abzuarbeiten" (falls moeglich).
Gerne auch einen github-issue eroeffnen, falls ein Github-Account (Achtung, gehoert nun zu Microsoft ... und war da nicht was mit boesen Microsoftchips in den Impfungen ... *scherz beiseite*) existiert.
bye
Ron
Offline
Bekomme eigenartigerweise immer diesen Fehler: in base.sfx.soundmanager.soloud.bmx"
Local driver:TSoloudAudioDriver = TSoloudAudioDriver(GetAudioDriver())
Compile Error
Identifier 'getaudiodriver' not found
Moin Frohnus,
https://github.com/bmx-ng/brl.mod/blame/5dc0195e695f6078157acfa1fea014ba5253c779/audio.mod/audio.bmx#L393
Das wurde erst vor 4 Monaten hinzugefuegt - kann also in den "stabilen" BlitzMax-NG-Downloads noch nicht enthalten sein.
Falls Du Windows nutzt:
https://gist.github.com/fightlessbirds/1e74565faa32e8e514294c6752625a31
Damit (ein hastig zusammengekritzeltes Batchskript von mir) kannst du Dir ein "aktuelles" BlitzMax zusammenstellen und nutzen.
Fuer Linux steht unter
https://github.com/bmx-ng/bmx-ng/releases
Ein neueres Release von BlitzMax NG bereit.
bye
Ron
Offline
Hey Ronny,
Danke für die promte Antwort.
Dein Script hat wunderbar funktioniert und der Quellcode wird jetzt auch ohne Probleme kompiliert, sogar in x64!
Freue mich schon aufs spielen und Nittka kann sich über Feedback in den kommenden Tagen freuen
Hallo Ronny,
beim kompilieren erhalte ich einen Fehler, dass er Math.Vector nicht kennt.
Import Math.Vector
Ich konnte diese Bibliothek auch im Internet nicht finden. Nur:
Import BRL.Vector
Kannst du mir da bitte weiterhelfen?
VG
Offline
ja bin ich auch drüber gestolpert.
hat sich in den letzten monaten was geändert.
es ist einfach die math.mod
https://github.com/bmx-ng/math.mod
Offline
Ich weiß nicht, was deine Herangehensweise ist, aber das upgedatete Script, das bei mir funktioniert, ist folgendes:
#!/bin/bash
# ensure curl is installed
# the -k param is used to allow certificate errors
# the -L param is used to follow redirections
VERSION=0.136.3.51
BMAX_FILE="BlitzMax_linux_x64_$VERSION.tar.xz"
BMAX_URL="https://github.com/bmx-ng/bmx-ng/releases/download/v$VERSION.linux.x64/$BMAX_FILE"
# create folders if needed
mkdir -p "BlitzMaxNG.downloads"
mkdir -p "BlitzMaxNG.downloads/mod"
mkdir -p "BlitzMaxNG.downloads/toolchain"
if [[ -e "BlitzMaxNG.downloads/$BMAX_FILE" ]]; then
echo "downloads exist ... skipping"
else
curl -k -L "$BMAX_URL" -o "BlitzMaxNG.downloads/$BMAX_FILE"
curl -k -L "https://github.com/bmx-ng/bcc/archive/refs/heads/master.zip" -o "BlitzMaxNG.downloads/bcc.zip"
curl -k -L "https://github.com/bmx-ng/bmk/archive/refs/heads/master.zip" -o "BlitzMaxNG.downloads/bmk.zip"
curl -k -L "https://github.com/bmx-ng/brl.mod/archive/refs/heads/master.zip" -o "BlitzMaxNG.downloads/brl.mod.zip"
curl -k -L "https://github.com/bmx-ng/pub.mod/archive/refs/heads/master.zip" -o "BlitzMaxNG.downloads/pub.mod.zip"
curl -k -L "https://github.com/bmx-ng/audio.mod/archive/refs/heads/master.zip" -o "BlitzMaxNG.downloads/audio.mod.zip"
curl -k -L "https://github.com/bmx-ng/text.mod/archive/refs/heads/master.zip" -o "BlitzMaxNG.downloads/text.mod.zip"
curl -k -L "https://github.com/bmx-ng/random.mod/archive/refs/heads/master.zip" -o "BlitzMaxNG.downloads/random.mod.zip"
curl -k -L "https://github.com/bmx-ng/sdl.mod/archive/refs/heads/master.zip" -o "BlitzMaxNG.downloads/sdl.mod.zip"
curl -k -L "https://github.com/bmx-ng/net.mod/archive/refs/heads/master.zip" -o "BlitzMaxNG.downloads/net.mod.zip"
curl -k -L "https://github.com/bmx-ng/image.mod/archive/refs/heads/master.zip" -o "BlitzMaxNG.downloads/image.mod.zip"
curl -k -L "https://github.com/bmx-ng/maxgui.mod/archive/refs/heads/master.zip" -o "BlitzMaxNG.downloads/maxgui.mod.zip"
curl -k -L "https://github.com/bmx-ng/database.mod/archive/refs/heads/master.zip" -o "BlitzMaxNG.downloads/database.mod.zip"
curl -k -L "https://github.com/bmx-ng/archive.mod/archive/refs/heads/master.zip" -o "BlitzMaxNG.downloads/archive.mod.zip"
curl -k -L "https://github.com/bmx-ng/math.mod/archive/refs/heads/master.zip" -o "BlitzMaxNG.downloads/math.mod.zip"
fi
echo "Preparing latest stable NG"
cd "BlitzMaxNG.downloads"
if [[ -e "BlitzMax" ]]; then
echo "blitzmax unzipped... skipping"
else
tar -xf "$BMAX_FILE"
fi
echo "Preparing module updates"
if [[ -e "mod/brl.mod" ]]; then
echo "mods prepared ... skipping"
else
unzip -o "brl.mod.zip" -d "mod"
unzip -o "pub.mod.zip" -d "mod"
unzip -o "audio.mod.zip" -d "mod"
unzip -o "text.mod.zip" -d "mod"
unzip -o "random.mod.zip" -d "mod"
unzip -o "sdl.mod.zip" -d "mod"
unzip -o "net.mod.zip" -d "mod"
unzip -o "image.mod.zip" -d "mod"
unzip -o "maxgui.mod.zip" -d "mod"
unzip -o "database.mod.zip" -d "mod"
unzip -o "archive.mod.zip" -d "mod"
unzip -o "math.mod.zip" -d "mod"
mv "mod/brl.mod-master" "mod/brl.mod"
mv "mod/pub.mod-master" "mod/pub.mod"
mv "mod/audio.mod-master" "mod/audio.mod"
mv "mod/text.mod-master" "mod/text.mod"
mv "mod/random.mod-master" "mod/random.mod"
mv "mod/sdl.mod-master" "mod/sdl.mod"
mv "mod/net.mod-master" "mod/net.mod"
mv "mod/image.mod-master" "mod/image.mod"
mv "mod/maxgui.mod-master" "mod/maxgui.mod"
mv "mod/database.mod-master" "mod/database.mod"
mv "mod/archive.mod-master" "mod/archive.mod"
mv "mod/math.mod-master" "mod/math.mod"
fi
#unzip tools
echo "Preparing toolchain"
if [[ -e "toolchain/bcc" ]]; then
echo "toolchain prepared ... skipping"
else
unzip -o "bcc" -d "toolchain"
unzip -o "bmk" -d "toolchain"
mv "toolchain/bcc-master" "toolchain/bcc"
mv "toolchain/bmk-master" "toolchain/bmk"
fi
#compile bcc
echo "Compiling bcc"
cd "BlitzMax/bin"
./bmk makeapp -r -t console "../../toolchain/bcc/bcc.bmx"
cd ../..
echo "Updating bcc"
mv -f "BlitzMax/bin/bcc" "BlitzMax/bin/bcc.bak"
cp -rf "toolchain/bcc/bcc" "BlitzMax/bin/bcc"
#update modules - so we can update bmk
rm -r "BlitzMax/mod"
mv "mod" "BlitzMax"
#compile bmk
echo "Compiling bmk"
cd "BlitzMax/bin"
./bmk makeapp -r -t console "../../toolchain/bmk/bmk.bmx"
cd ../..
echo "Updating bmk"
cd "toolchain/bmk"
cp -rf "bmk" "../../BlitzMax/bin/"
cp -rf "core.bmk" "../../BlitzMax/bin/"
cp -rf "custom.bmk" "../../BlitzMax/bin/"
cp -rf "make.bmk" "../../BlitzMax/bin/"
cd ../..
#cleanup toolchain build dir
rm -r "toolchain"
cd ..
echo "=========="
echo "Setup is complete. You can close now.."
Offline
Das war, um BlitzMax selber zu kompilieren.
Dann noch TVTower kompilieren:
curl -k -L "https://github.com/TVTower/TVTower/archive/refs/heads/master.zip" -o "TVTower.zip"
unzip -o "TVTower.zip" -d "TVTower"
cd "BlitzMaxNG.downloads/BlitzMax/bin"
./bmk makeapp -r -t gui -g x64 "../../../TVTower/TVTower-master/TVTower.bmx"
cd ../../..
Offline