[fpc-devel] Wasm/embedded target compilation error

Nikolay Nikolov nickysn at gmail.com
Thu Jul 28 17:48:06 CEST 2022


On 7/22/22 01:36, Kostas Michalopoulos via fpc-devel wrote:
> Hi all,
>
> I was trying to use the Wasm/embedded target to port a game i made 
> some time ago[0] to WebAssembly to run inside a browser, but i am 
> getting a bunch of errors that i can't figure out the issue. When 
> compiling with the embedded wasm assembler i get errors like:
>
>
> SndEmit.pas(171) Error: Wasm32 symbol 
> RESMAN/home/badsector/.local/bin/fpcTRESOURCEMANAGER_$__$$_GETRESOURCE$ANSISTRING$$TRESOURCE 
> without index value error
> SndEmit.pas(171) Error: Wasm32 symbol 
> SNDDRV/home/badsector/.local/bin/fpcTSOUNDDRIVER_$__$$_SETCHANNELCLIP$LONGINT$TSOUNDCLIP$BYTE 
> without index value error
> (more errors)
>
>
> However i'm not sure if it is the internal assembler issue because 
> using, e.g. llvm-mc-12 i get other errors like:
>
>
> ./Engine/Misc.wat:7340:3: error: symbol 
> MISC$_$TSTRINGKEYVALUESET_$__$$_INDEXOFKEY$ANSISTRING$$LONGINT missing 
> .functype
>                 call 
> MISC$_$TSTRINGKEYVALUESET_$__$$_INDEXOFKEY$ANSISTRING$$LONGINT
>                 ^
> ./Engine/Misc.wat:7670:3: error: symbol 
> MISC$_$TSTRINGKEYVALUESET_$__$$_INDEXOFKEY$ANSISTRING$$LONGINT missing 
> .functype
>                 call 
> MISC$_$TSTRINGKEYVALUESET_$__$$_INDEXOFKEY$ANSISTRING$$LONGINT
>
>
> Trying other assemblers i get other errors too, e.g. wabt/wasa 
> displays a bunch of "stream read error" messages and then fails to link.
>
> Does anyone have any idea about what is wrong?
>
> This is running on Linux with a custom built crosscompiler from latest 
> git (last commit is 6915cd9b269649ca945a4fc952ee7dedb1b38b85 - Thu Jul 
> 21 14:01:50).
>
> I've stripped out the game's sources to only contain the units that i 
> try to compile, you can get it and try to reproduce the issue from 
> here (the archive is ~660KB):
>
> http://runtimeterror.com/pages/badsector/nyan/gimme/papwasm.tar.xz
>
> Just type ./makewasm.sh (the script uses -Awasm here but can be 
> changed to try other assemblers). Note that obviously this wont build 
> since it is missing any wasm-specific functionality since i never got 
> to the point where the "cross platform" units compile properly to 
> start writing the wasm-specific stuff.
>
> Kostas
>
> [0] https://bad-sector.itch.io/post-apocalyptic-petra

Hi, can you report in the FPC bugtracker, so it's not forgotten?

https://gitlab.com/freepascal.org/fpc/source/-/issues/new

Thanks,

Nikolay

> _______________________________________________
> fpc-devel maillist  -  fpc-devel at lists.freepascal.org
> https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel


More information about the fpc-devel mailing list