Description
Describe the bug
I recently got a Raspberry Pi 4, and decided it would be fun to use it as a CI runner for Wurst map builds. Since this is Java, it must simply work anywhere, right? Turns out, it almost works! However, it seems the output map has an empty war3map.j
, even though the code is correctly compiled and saved in temp/output.j
.
Environment is a Raspberry Pi 4 (ARM linux), with Java version:
openjdk 11.0.9.1 2020-11-04
OpenJDK Runtime Environment (build 11.0.9.1+1-post-Raspbian-1deb10u2)
OpenJDK Server VM (build 11.0.9.1+1-post-Raspbian-1deb10u2, mixed mode)
Starting only with my map project and WurstSetup.jar
:
java -jar WurstSetup.jar install wurstscript
java -jar ~/.wurst/WurstSetup.jar install
java -jar ~/.wurst/WurstSetup.jar build base.w3x -runcompiletimefunctions -injectobjects -stacktraces -noExtractMapScript -opt
- I move the output map in
_build
to a Windows machine and inspect with an MPQ editor. Everything looks good exceptwar3map.j
is 0 bytes.temp/output.j
has all the code, though...
EDIT: I also tried replacing all java -jar ~/.wurst/WurstSetup.jar
commands with the standard ~/.wurst/grill
- same results.
Speculation
When I do a Windows build, compiler.log
at first is similar/equal to the one in the Pi. After build is done, the previous logs get totally overwritten, and in the new ones, there is a final MPQ editing section with just Added file war3map.j
and a few others. This suggests to me that there are 2 MPQ editing/packing passes in the Wurst build, # 1 with almost everything except the war3map.j
, and # 2 with the rest. It's possible that the 2nd one just isn't running on the Pi. There is no Added file war3map.j
log there.
EDIT: Just saw #937, not sure if that would address this. not relevant, nvm