Jump to content

Issues self compling 0ad 28


Frederick_1
 Share

Recommended Posts

I want to try a local build version of the 0ad 28 on my debian system. So I got the source code tar file from:
https://play0ad.com/download/source/  (direct download tar).

The I followed the built instructions on: https://gitea.wildfiregames.com/0ad/0ad/wiki/ .
(Where the Linux  getting the libarys section could be better separated from the rest of instructions)

So far, I sucessfully built the libarys. But when I invoke the make comand it brakes not finding libary / header files, altough, they are available on my system.

 

gamer@Nanox:~/bin/0ad-0.28.0/build/workspaces/gcc$ make -j5 
[...]
==== Building simulation2 (release) ====
Globals.cpp
precompiled.h
In file included from ../../../source/lobby/Globals.cpp:20:
../../../source/lobby/IXmppClient.h:23:10: fatal error: js/Value.h: Datei oder Verzeichnis nicht gefunden
   23 | #include <js/Value.h>
      |          ^~~~~~~~~~~~
compilation terminated.
make[1]: *** [lobby.make:162: obj/lobby_Release/Globals.o] Fehler 1
make: *** [Makefile:104: lobby] Fehler 2
make: *** Es wird auf noch nicht beendete Prozesse gewartet …
In file included from ../../../source/dapinterface/DapInterface.cpp:20:
../../../source/dapinterface/DapInterface.h:24:10: fatal error: js/RootingAPI.h: Datei oder Verzeichnis nicht gefunden
   24 | #include <js/RootingAPI.h>
      |          ^~~~~~~~~~~~~~~~~
compilation terminated.  

../../../source/scriptinterface/ScriptForward.h:21:10: fatal error: js/TypeDecls.h: Datei oder Verzeichnis nicht gefunden
   21 | #include "js/TypeDecls.h"
      |          ^~~~~~~~~~~~~~~~
compilation terminated.

I have checktd the files are on my system, something with the path seems wrong. I also installed them via apt from debian:

 

~/bin/0ad-0.28.0/build/workspaces/gcc$ locate RootingAPI.h
/home/gamer/bin/0ad-0.28.0/libraries/source/spidermonkey/mozjs-128.13.0/js/public/RootingAPI.h
/usr/include/x86_64-linux-gnu/mozjs-128/js/RootingAPI.h

~/bin/0ad-0.28.0/build/workspaces/gcc$ locate Value.h
/home/gamer/bin/0ad-0.28.0/libraries/source/spidermonkey/mozjs-128.13.0/js/public/Value.h
/home/gamer/bin/0ad-0.28.0/libraries/source/spidermonkey/mozjs-128.13.0/js/src/wasm/WasmValue.h
/home/gamer/bin/0ad-0.28.0/libraries/source/spidermonkey/mozjs-128.13.0/mozglue/baseprofiler/public/ProportionValue.h
/home/gamer/bin/0ad-0.28.0/source/graphics/SmoothedValue.h
/usr/include/llvm-19/llvm/CodeGen/PseudoSourceValue.h
/usr/include/llvm-19/llvm/DebugInfo/DWARF/DWARFFormValue.h
/usr/include/llvm-19/llvm/ExecutionEngine/GenericValue.h
/usr/include/llvm-19/llvm/IR/GlobalValue.h
/usr/include/llvm-19/llvm/IR/Value.h
/usr/include/llvm-19/llvm/MC/MCValue.h
/usr/include/x86_64-linux-gnu/mozjs-128/js/Value.h
/usr/include/x86_64-linux-gnu/mozjs-128/mozilla/ProportionValue.h

gamer@Nanox:~/bin/0ad-0.28.0/build/workspaces/gcc$ locate TypeDecls.h
/home/gamer/bin/0ad-0.28.0/libraries/source/spidermonkey/mozjs-128.13.0/js/public/TypeDecls.h
/home/gamer/bin/0ad-0.28.0/libraries/source/spidermonkey/mozjs-128.13.0/js/src/wasm/WasmTypeDecls.h
/usr/include/x86_64-linux-gnu/mozjs-128/js/TypeDecls.h

So, what to do....

Link to comment
Share on other sites

The packet installed from  Debian Repository libmozjs-128-0:

libmozjs: 128.14.0-1~deb13u1

libmozjs-128-dev (128.14.0-1~deb13u1)

I think there is another Version, which is bundled part in the tree derived vom tar-ball.
It is in the directory   ..../mozjs-128.13.0 ...   so I d guess this is the version number

 

Edited by Frederick_1
translated to english
Link to comment
Share on other sites

In the Debian section I found a remark to spider monkey, so I tried:
./update-workspaces.sh -j3  --with-system-mozjs

And then it compiled. Guess using spidermonkey Version 128.14 from Debian instead of 128.13 which is bundled.

The test runs.... were 99% sucessfull, starting pyrogenensis finishes with a Seg-fault. Although I can not find the dump file.

This is the test output: 

 

gamer@Nanox:~/bin/0ad-0.28.0$ binaries/system/test
Running cxxtest tests (471 tests)....................................................................................................
In TestDapInterface::test_dap_interface:
/home/gamer/bin/0ad-0.28.0/source/dapinterface/tests/test_DapInterface.h:55: Error: Expected ((g_VFS->Mount(L"", DataDir() / "mods" / "mod" / "", VFS_MOUNT_MUST_EXIST)) == INFO::OK), found (-110100 != 0)
/home/gamer/bin/0ad-0.28.0/source/dapinterface/tests/test_DapInterface.h:57: Error: Test failed: DAP entry script not found at tools/dap/entry.js
/home/gamer/bin/0ad-0.28.0/source/dapinterface/tests/test_DapInterface.h:57: Error: Expected ((DAP::Interface{address, port, *g_ScriptContext })) not to throw, but it did
../../../source/dapinterface/tests/test_DapInterface.h:44: Error: Test failed: DAP entry script not found at tools/dap/entry.js
................................................................................Skipping map generator tests (can't find binaries/data/mods/public/maps/random/tests/)
.................................................................
In TestNetComms::test_dummy:
/home/gamer/bin/0ad-0.28.0/source/network/tests/test_Net.h:57: Error: Expected ((g_VFS->Mount(L"", DataDir() / "mods" / "public" / "", VFS_MOUNT_MUST_EXIST)) == INFO::OK), found (-110100 != 0)
.................................................................................................................................................................................................Skipping globalscripts tests (can't find binaries/data/mods/public/globalscripts/tests/)
.Skipping component scripts tests (can't find binaries/data/mods/public/simulation/components/tests/setup.js)
..............................
Failed 2 and Skipped 0 of 471 tests
Success rate: 99%

I attached the log file from ~.local/state/log:

mainlog.html

Edited by Frederick_1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...