TVTower / Documentation

Documentation / Design-Descriptions etc.
MIT License
2 stars 1 forks source link

Compilation Guide #18

Open nittka opened 2 years ago

nittka commented 2 years ago

Im Zuge der Repo-Aufräumarbeiten soll die Compile-Anleitung in die Dokumentation wandern. In einem Branch sind die ursprünglichen Dateien schon hinterlegt, müssen nun aber noch ins passende Format gebracht und aktualisiert werden.

Dabei sollte auch auf die GitHub Actions hingewiesen und #1 berücksichtigt werden.

nittka commented 2 years ago

siehe auch https://github.com/TVTower/TVTower/issues/599#issuecomment-1101162419

nittka commented 1 year ago

@GWRon Der Compilation-Guide (mindestens für Linux) muss um einen Abschnitt "Aktualisierung BCC/Module" erweitert werden. Ich werde nochmal versuchen, die Entwicklungsumgebung komplett neu aufzusetzen, da aber die Module und der Compiler im aktuell runterladbaren Archiv veraltet sind, wird ein Compilieren von TVTower mit diesem Stand nicht funktionieren. Und es ist nicht klar, welcher Revisionsstand der Module funktioniert hatte.

GWRon commented 1 year ago

Prinzipiell:

Blitzmaxuser Henri hat mein originaeres Windows-Updater-Script angepasst, fuer Linux sollte das ablauftechnisch "gleich" sein:

@echo off
::
::
::
::
::download curl.exe from https://curl.se/windows/
::
::
::
::
::the -k param is used to allow certificate errors
::the -L param is used to follow redirections

SET VERSION=0.129.3.45
SET BMAX_FILE=BlitzMax_win32_%VERSION%.7z
SET BMAX_URL="https://github.com/bmx-ng/bmx-ng/releases/download/v%VERSION%.win32/%BMAX_FILE%"

if not exist "C:\Program Files\7-Zip\7z.exe" (
    echo "Please install 7zip first.."
    pause
    exit )
if not exist "BlitzMaxNG.downloads" mkdir "BlitzMaxNG.downloads"

IF EXIST "BlitzMaxNG.downloads/brl.mod.zip" (
        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"
)

::prepare NG
echo "Preparing latest stable NG"
cd "BlitzMaxNG.downloads"
IF EXIST "BlitzMax" (
        echo "blitzmax unzipped... skipping"
) ELSE (
"C:\Program Files\7-Zip\7z" x "%BMAX_FILE%" -r -y
)

echo "Preparing module updates"
IF EXIST "mod/brl.mod" (
        echo "mods prepared ... skipping"
) ELSE (
"C:\Program Files\7-Zip\7z" x "brl.mod.zip" -o"mod" -r -y
"C:\Program Files\7-Zip\7z" x "pub.mod.zip" -o"mod" -r -y
"C:\Program Files\7-Zip\7z" x "audio.mod.zip" -o"mod" -r -y
"C:\Program Files\7-Zip\7z" x "text.mod.zip" -o"mod" -r -y
"C:\Program Files\7-Zip\7z" x "random.mod.zip" -o"mod" -r -y
"C:\Program Files\7-Zip\7z" x "sdl.mod.zip" -o"mod" -r -y
"C:\Program Files\7-Zip\7z" x "net.mod.zip" -o"mod" -r -y
"C:\Program Files\7-Zip\7z" x "image.mod.zip" -o"mod" -r -y
"C:\Program Files\7-Zip\7z" x "maxgui.mod.zip" -o"mod" -r -y
"C:\Program Files\7-Zip\7z" x "database.mod.zip" -o"mod" -r -y

::rename modules
cd mod
ren "brl.mod-master" "brl.mod"
ren "pub.mod-master" "pub.mod"
ren "audio.mod-master" "audio.mod"
ren "text.mod-master" "text.mod"
ren "random.mod-master" "random.mod"
ren "sdl.mod-master" "sdl.mod"
ren "net.mod-master" "net.mod"
ren "image.mod-master" "image.mod"
ren "maxgui.mod-master" "maxgui.mod"
ren "database.mod-master" "database.mod"
cd ..
)

::unzip tools
"C:\Program Files\7-Zip\7z" x "bcc.zip" -o"tools" -r -y
"C:\Program Files\7-Zip\7z" x "bmk.zip" -o"tools" -r -y

::compile bcc
echo "Compiling bcc"
cd "BlitzMax/bin"
bmk.exe makeapp -r -t console "../../tools/bcc-master/bcc.bmx"
cd ../..
echo "Updating bcc"
cd "tools/bcc-master"
copy /Y "bcc.exe" "../../Blitzmax/bin/bcc.exe"
cd ../..

::update modules - so we can update bmk
cd Blitzmax
ren "mod" "mod.old"
cd ..
move /Y "mod" "Blitzmax/mod"

::compile bmk
echo "Compiling bmk"
cd "BlitzMax/bin"
bmk.exe makeapp -r -t console "../../tools/bmk-master/bmk.bmx"
cd ../..
echo "Updating bmk"
cd "tools/bmk-master"
copy /Y "bmk.exe" "../../Blitzmax/bin/bmk.exe"
copy /Y "core.bmk" "../../Blitzmax/bin/core.bmk"
copy /Y "custom.bmk" "../../Blitzmax/bin/core.bmk"
copy /Y "make.bmk" "../../Blitzmax/bin/make.bmk"
cd ../..

cd ..
echo "Setup is complete. You can close now.."
pause
GWRon commented 1 year ago

Probier das mal aus bei Dir:

get_recent_blitzmax.sh:

#!/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"
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"

    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"
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.."
nittka commented 1 year ago

Vielen, vielen Dank. Teile der Schritte hatte ich auch schon manuell gemacht aber ebene nicht alle und ggf. nicht in der richtigen Reihenfolge. Ausgangspunkt war für mich immer der Download auf der Blitzmax-Seite, wo aber noch die 129er-Version steht... Lief reibungslos durch und Compile mit dem Userverzeichnis ging auch sofort.

GWRon commented 1 year ago

Es sollte auch mit der 129er gehen, da ich ein solches Skript auch fuer Windows habe ... und es eben dort die alte Windowsvariante runterlaedt.

nittka commented 1 year ago

Hinweise für Integration: archive.mod ergänzen; ggf. nicht curl sondern git clone/pull verwenden (d.h. Script ggf so anpassen, dass es sowohl ein Neuaufsetzen als auch ein Aktualisieren (mit vorherigem Backup) unterstützt.

GWRon commented 1 year ago

Bei git clone holst Du Dir die gesamte Historie mit auf die Platte. Ist vlt auch nicht so prickelnd (wenn es in einer build-VM ablaufen soll).

Als zweite Option sicher interessant.

scr0llbaer9000 commented 1 year ago

ja genau, bekomme beim Versuch des Build and Run aus der "MaxIDE": Compile Error: Can't find interface for module 'archive.zstd'

Seh hier im Thread nicht was man tun kann und was mit "Aktualisierung BCC/Module" genau gemeint ist.

nittka commented 1 year ago

In dem Script werden verschiedene Module von GitHub geholt (curl), ausgepackt (unzip), umbenannt und in das mod-Unterverzeichnis kopiert (mv). Diese drei Schritte müssen noch mit dem archive,mod gemacht werden (geht auch ohne das script): https://github.com/bmx-ng/archive.mod/archive/refs/heads/master.zip runterladen, entpacken, in archive.mod umbenennen und neben die anderen Module im Blitzmax-Verzeichnis legen. Dann sollte dieser Compile-Fehler nicht mehr kommen.

GWRon commented 1 year ago

Hab das Shellscript (fuer Linux) mal aktualisiert. Und gleich die Basisversion auf die Version von "vor wenigen Tagen" angepasst (theoretisch braucht es also derzeit keine weiteren Updates und und du kannst direkt von https://github.com/bmx-ng/bmx-ng/releases/tag/v0.136.3.51.linux.x64 runterladen)

Generell kannst du genau neben das obige Script (bspweise gespeichert als "get_latest_blitzmax.sh") noch das hier packen: "make_latest_tvtower.sh":


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 ../../..
scr0llbaer9000 commented 1 year ago

bekomme jetzt

[ 33%] Compiling:archive_write_add_filter_gzip.c
[ 33%] Compiling:archive_write_add_filter_program.c
[ 33%] Compiling:archive_write_add_filter_zstd.c
/home/scb/Projects/BlitzMaxNG.downloads/BlitzMax/mod/archive.mod/core.mod/libarchive/libarchive/archive_random.c:54:13: error: static declaration of ‘arc4random_buf’ follows non-static declaration
   54 | static void arc4random_buf(void *, size_t);
      |             ^~~~~~~~~~~~~~
In file included from /home/scb/Projects/BlitzMaxNG.downloads/BlitzMax/mod/archive.mod/core.mod/libarchive/libarchive/archive_random.c:30:
/usr/include/stdlib.h:542:13: note: previous declaration of ‘arc4random_buf’ with type ‘void(void *, size_t)’ {aka ‘void(void *, long unsigned int)’}
  542 | extern void arc4random_buf (void *__buf, size_t __size)
      |             ^~~~~~~~~~~~~~
GWRon commented 1 year ago

Was fuer einen gcc hast du installiert ?

$ gcc -v

Am 8. März 2023 13:18:12 MEZ schrieb scr0llbaer9000 @.***>:

bekomme jetzt

[ 33%] Compiling:archive_write_add_filter_gzip.c [ 33%] Compiling:archive_write_add_filter_program.c [ 33%] Compiling:archive_write_add_filter_zstd.c /home/scb/Projects/BlitzMaxNG.downloads/BlitzMax/mod/archive.mod/core.mod/libarchive/libarchive/archive_random.c:54:13: error: static declaration of ‘arc4random_buf’ follows non-static declaration 54 | static void arc4random_buf(void , size_t); | ^~~~~~ In file included from /home/scb/Projects/BlitzMaxNG.downloads/BlitzMax/mod/archive.mod/core.mod/libarchive/libarchive/archive_random.c:30: /usr/include/stdlib.h:542:13: note: previous declaration of ‘arc4random_buf’ with type ‘void(void , size_t)’ {aka ‘void(void , long unsigned int)’} 542 | extern void arc4random_buf (void __buf, size_t __size) | ^~~~~~

-- Reply to this email directly or view it on GitHub: https://github.com/TVTower/Documentation/issues/18#issuecomment-1460070930 You are receiving this because you were mentioned.

Message ID: @.***>

GWRon commented 1 year ago

Der Fehler ist aber, dass deine Std-lib auch die Funktion definiert, die "libarchive" nutzt. Welche Distribution hast Du genau?

Edit: Scheinbar hast du eine GLibC >= 2.36. Ab dann bietet die naemlich diese Funktionen schon selbst an - und man muss wohl die library anders kompilieren. Ich habe dazu fuer BlitzMaxNG mal ein Issue eroeffnet.

Bis dahin hier mal ein frischer 64bit-Build von meinem Mint 21.1 Einfach in das frisch heruntergeladen und entpackte TVTower-Verzeichnis packen.

TVTower_Linux64.zip

scr0llbaer9000 commented 1 year ago

Danke, damit konnt ich die neuen Features ausprobieren.

Welche Distribution hast Du genau?

Arch (btw), daher immer das neueste weil "rolling".

~/ gcc --version
gcc (GCC) 12.2.1 20230201

~/ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-linux-gnu/12.2.1/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /build/gcc/src/gcc/configure --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++,d --enable-bootstrap --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --with-build-config=bootstrap-lto --with-linker-hash-style=gnu --with-system-zlib --enable-__cxa_atexit --enable-cet=auto --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-default-ssp --enable-gnu-indirect-function --enable-gnu-unique-object --enable-libstdcxx-backtrace --enable-link-serialization=1 --enable-linker-build-id --enable-lto --enable-multilib --enable-plugin --enable-shared --enable-threads=posix --disable-libssp --disable-libstdcxx-pch --disable-werror
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 12.2.1 20230201 (GCC) 
scr0llbaer9000 commented 9 months ago

Tried to compile the current dev version on Linux without success.

The "math" module for BlitzMax must be included in the script posted in this thread, that got me a bit further.

Now it barks at:

In file included from /home/mep/Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/mod/sdl.mod/sdl.mod/SDL/src/audio/nas/SDL_nasaudio.c:34:
/home/mep/Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/mod/sdl.mod/sdl.mod/SDL/src/audio/nas/SDL_nasaudio.h:29:10: fatal error: audio/audiolib.h: No such file or directory
   29 | #include <audio/audiolib.h>
      |          ^~~~~~~~~~~~~~~~~~
compilation terminated.
Build Error: failed to comp

But the "audio" module is included.

GWRon commented 9 months ago

Which distribution and release are you using? Seems you miss some libXYZdev package.

We could go through this live via discord if you want. Just DM me there and I try to guide you through (if job work allows it).

Edit: half asleep .. .distri/release question already answered.

Edit2: audiolib is part (on ubuntu/deb) of the "libaudio-dev" package

scr0llbaer9000 commented 9 months ago

ah, finally got it compiled and running.

What was missing on Arch was the quite obscure "Network Audio System"

https://aur.archlinux.org/packages/nas

duracell commented 4 months ago

Nochmal ein Update wäre sehr schön, ich hab das gleiche Problem wie im Forum zuletzt beschrieben: Compile Error, Type 'sdatetime' not found Leider finde ich online nichts wirkliches dazu. Hab alle Mods, die in den Linux-Scripten enthalten waren, installiert. (Neuste Mods, BlitzMax-Version: BlitzMax_win32_x86_mingw_0.136.3.51)

GWRon commented 4 months ago

Lade Dir einfach eine neuere Version von BlitzMax NG herunter: https://github.com/bmx-ng/bmx-ng/releases

Zum Zeitpunkt dieses Beitrags ist das für Windows: https://github.com/bmx-ng/bmx-ng/releases/download/v0.143.3.57.202404210126.win32.mingw/BlitzMax_win32_mingw_0.143.3.57.202404210126.7z

Dies entpacken und dann der Anleitung entsprechend die aktuellen Quellen von TVTower kompilieren. Die Installation von weiteren BlitzMax-Modulen oder eine Anpassung dieser ist nicht noetig. Es sollte "out of the box" unter Windows funktionieren (mit der verlinkten Version).

duracell commented 4 months ago

Okay, danke, das hat geholfen. Ich hatte tatsächlich extra die letzte offizielle Release-Version und keine pre-release (weekly) genommen. Damit hat es wie beschrieben ohne Module geklappt. Vielleicht könntest du das im Forum noch ergänzen, da schauen bestimmt viele extra in den Thread.

scr0llbaer9000 commented 1 month ago

Hab mal wieder ein Problem, das aktuelle BlitzMax kompiliert nicht, hat jemand eine Idee?

[ 45%] Compiling:blitz_unicode.c
[ 45%] Compiling:tree.c
[ 46%] Compiling:glue.c
[ 46%] Compiling:glue.c
[ 47%] Compiling:map.c
/Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/mod/brl.mod/appstub.mod/appstub.linux.c: In function ‘bmx_process_vm_readv’:
/Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/mod/brl.mod/appstub.mod/appstub.linux.c:38:25: error: implicit declaration of function ‘process_vm_readv’; did you mean ‘bmx_process_vm_readv’? [-Wimplicit-function-declaration]
   38 |         size_t result = process_vm_readv(pid, &local, 1, &remote, 1, 0);
      |                         ^~~~~~~~~~~~~~~~
      |                         bmx_process_vm_readv
Build Error: failed to compile (256) /Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/mod/brl.mod/appstub.mod/appstub.linux.cUpdating bcc
cp: cannot stat 'toolchain/bcc/bcc': No such file or directory
/Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/mod/brl.mod/blitz.mod/blitz_app.c: In function ‘bbStartup’:
/Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/mod/brl.mod/blitz.mod/blitz_app.c:477:21: error: assignment to ‘void **’ from incompatible pointer type ‘char *’ [-Wincompatible-pointer-types]
  477 |         bbGCStackTop=ebp+28;
      |                     ^
/Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/mod/brl.mod/blitz.mod/blitz_thread.c: In function ‘bbThreadRegister’:
/Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/mod/brl.mod/blitz.mod/blitz_thread.c:416:24: error: assignment to ‘pthread_t’ {aka ‘long unsigned int’} from ‘void *’ makes integer from pointer without a cast [-Wint-conversion]
  416 |         thread->handle = thd;
      |                        ^
/Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/mod/brl.mod/blitz.mod/blitz_thread.c: In function ‘bbThreadWait’:
/Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/mod/brl.mod/blitz.mod/blitz_thread.c:447:38: error: passing argument 2 of ‘GC_pthread_join’ from incompatible pointer type [-Wincompatible-pointer-types]
  447 |         pthread_join( thread->handle,&p );
      |                                      ^~
      |                                      |
      |                                      BBObject **
In file included from /Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/mod/brl.mod/blitz.mod/bdwgc/include/gc/gc.h:1806,
                 from /Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/mod/brl.mod/blitz.mod/bdwgc/include/gc.h:2,
                 from /Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/mod/brl.mod/blitz.mod/blitz.h:12,
                 from /Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/mod/brl.mod/blitz.mod/blitz_thread.c:2:
/Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/mod/brl.mod/blitz.mod/bdwgc/include/gc/gc_pthread_redirects.h:75:41: note: expected ‘void **’ but argument is of type ‘BBObject **’
   75 |   GC_API int GC_pthread_join(pthread_t, void ** /* retval */);
      |                                         ^~~~~~~
In file included from /Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/mod/brl.mod/blitz.mod/blitz_cclib.c:2:
/Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/mod/brl.mod/blitz.mod/blitz.h:33:10: fatal error: blitz_debug.h: No such file or directory
compilation terminated.
In file included from /Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/mod/brl.mod/filesystem.mod/glue.c:20:
/Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/mod/brl.mod/blitz.mod/blitz.h:26:10: fatal error: blitz_memory.h: No such file or directory
compilation terminated.
Compiling bmk
/Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/mod/brl.mod/io.mod/glue.c: In function ‘bmx_PHYSFS_setRoot’:
/Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/mod/brl.mod/io.mod/glue.c:219:20: error: assignment to ‘char *’ from incompatible pointer type ‘char (*)[1024]’ [-Wincompatible-pointer-types]
  219 |                 sd = &sbuf;
      |                    ^
Assembler messages:
Fatal error: can't create /Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/mod/brl.mod/blitz.mod/.bmx/mbb_blitz_object.c.release.linux.x64.o: No such file or directory
Assembler messages:
Fatal error: can't create /Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/mod/brl.mod/blitz.mod/.bmx/mbb_blitz_enum.c.release.linux.x64.o: No such file or directory
Assembler messages:
Fatal error: can't create /Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/mod/brl.mod/blitz.mod/.bmx/mbb_blitz_types.c.release.linux.x64.o: No such file or directory
Assembler messages:
Fatal error: can't create /Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/mod/brl.mod/blitz.mod/.bmx/mbb_blitz_array.c.release.linux.x64.o: No such file or directory
Assembler messages:
Fatal error: can't create /Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/mod/brl.mod/blitz.mod/.bmx/mbb_blitz_string.c.release.linux.x64.o: No such file or directory
[  0%] Processing:blitz.bmx
/bin/sh: line 1: /Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/bin/bcc: No such file or directory
Build Error: failed to compile (32512) /Projects/blitzmax-tvtower/BlitzMaxNG.downloads/BlitzMax/mod/brl.mod/blitz.mod/blitz.bmxUpdating bmk
cp: cannot stat 'bmk': No such file or directory
==========
GWRon commented 1 month ago

Ich schau dann gleich/heute mal. Evtl hat sich bei den letzten Aenderungen was eingeschlichen.

Zur Not ein frueheres Dailybuild von NG nutzen.

GWRon commented 1 month ago

https://github.com/bmx-ng/bmx-ng/releases -> https://github.com/bmx-ng/bmx-ng/releases/tag/v0.144.3.57.202408040143.win32.mingw

Damit habe ich gerade alle Module kompiliert, ohne Deinen Fehler zu bekommen. Das Spiel habe ich damit auch kompiliert und ausfuehren koennen.

Nutzt Du die "Basis + Updater-Skript"-Variante oder eines der Weeklybuilds von BlitzMax NG?