Jump to content

Workaround for Debian Trixie (python 3.12) alpha 27 build from source


Recommended Posts

Firstly, this is my setup:

Spoiler

image.png.ec6b59371346b822075ccaed88b54a00.png

 

If I try a standard build from source, I obtain

ModuleNotFoundError: No module named 'six.moves'
ERROR: SpiderMonkey build failed

as well as in https://wildfiregames.com/forum/topic/118483-configure-fails-with-spidermonkey-error/

 

I tried to use --with-system-mozjs, but version 91 is not avaiable for debian (and I think they never will add it https://tracker.debian.org/news/1368939/removed-91130-1-from-unstable/ ) and during this try, I obtain another error in make in gcc directory (build sources and update workspaces worked both)

fatal error: jspubtd.h: No such file or directory

 

So I tried to install libmozjs-91 from ubuntu repos (not a perfect idea https://wiki.debian.org/DontBreakDebian#Don.27t_make_a_FrankenDebian ), and I installed

libmozjs-91-dev 91.6.0-2: https://blueprints.launchpad.net/ubuntu/jammy/amd64/libmozjs-91-dev/91.6.0-2

and its dependencies:

libmozjs-91-0 91.6.0-2: https://blueprints.launchpad.net/ubuntu/jammy/amd64/libmozjs-91-0/91.6.0-2

libicu70 70.1-2: https://blueprints.launchpad.net/ubuntu/jammy/amd64/libicu70/70.1-2

Spoiler

image.thumb.png.34fb819ee600ce6a025b5f03b46ddc37.png

 

A new (and luckly last) error arise:

Quote

#error Your compiler is trying to use an untested minor version of the \ SpiderMonkey library. If you are a package maintainer, please make sure \ to check very carefully that this version does not change the behaviour \ of the code executed by SpiderMonkey. Different parts of the game (e.g. \ the multiplayer mode) rely on deterministic behaviour of the JavaScript \ engine. A simple way for testing this would be playing a network game \ with one player using the old version and one player using the new \ version. Another way for testing is running replays and comparing the \ final hash (check trac.wildfiregames.com/wiki/Debugging#Replaymode). \ For more information check this link: trac.wildfiregames.com/wiki/Debugging#Outofsync

I followed the solution proposed here: https://trac.wildfiregames.com/ticket/3039, but it does not work. So I thinked to force the buildiing deleting a part of source/scriptinterface/ScriptTypes.h

Spoiler

image.thumb.png.2c31426c24b5f00a9c51f0128aa57944.png

IT WORKS!

proof:

Spoiler

image.thumb.png.ac789cb7982279dba78d1eee9184d6d0.png

Edited by Baelish
grammar
Link to comment
Share on other sites

30 minutes ago, zyli said:

Sorry, but...

Debian Trixie with kernel 6.5.0-5 was in December 2023.

https://snapshot.debian.org/package/linux-signed-amd64/6.5.13%2B1/#linux-image-6.5.0-5-amd64_6.5.13-1

Are other packages that old too?

Best regards

I assure that I full-upgrade twice a month and this is my source_list:

 

Spoiler

image.thumb.png.9cc5db9f69120ff9da6217d086f71a6b.png

and avaiable upgrades:

Spoiler

image.thumb.png.46d56f7ea3534a9e80ba12139ede4d62.png

 

Link to comment
Share on other sites

So where did 'neofetch' get this data: "Kernel: 6.5.0-5-amd64"?

The current kernel in Trixie is: 6.11.5
https://packages.debian.org/trixie/linux-image-amd64 

In my opinion, in the file '/etc/apt/sources.list':
1.
The last two lines ('proposed-updates' and 'bookworm-backports') are unnecessary.
2.
Instead of 'ftp.it.debian.org/debian' I would use: 'http://deb.debian.org/debian/'.
3.
Instead of 'ftp.it.debian.org/debian/ trixie-security' I would use: 'deb http://security.debian.org/debian-security/ trixie-security'

Best regards.

  • Thanks 1
Link to comment
Share on other sites

I change sources list as you said and the I notice that latest version is installed, but not used (very sus); thank you for the advices.

EDIT: it's grub2 fault, I can't install it https://bugs.debian.org/cgi-bin/pkgreport.cgi?pkg=grub2-common;dist=unstable, i tried to install anyway and debian breaks, so i used timeshift

Spoiler

image.thumb.png.19dad8e69bf87cc079ec56295b1351d2.png

(in synaptic I highlined current kernel, but obv I have not deleted running kernel)

 

Anyway, my packages are all upgraded and the first post scope wasn't to check my packages, but to propose a solution to broken mozjs building with python3.12

Edited by Baelish
Link to comment
Share on other sites

  • 3 weeks later...

@BaelishSadly, the development build has been broken for a long-time on many distros.

https://gitea.wildfiregames.com/0ad/0ad/issues/6895

 

@Itmshas a pull request open to fix the SM problem:

https://gitea.wildfiregames.com/0ad/0ad/pulls/7222

 

One easy work-around is to install a different version of Python (although I see you got the build working above, I'll reference it anyway): https://gitea.wildfiregames.com/0ad/0ad/issues/7080#issuecomment-102788

A fix should have been prioritized, or the document for the build instructions should have been updated accordingly. There's already enough documentation that appeals to developers to contribute. All that happens when a project has a broken build for so long is that potential developers get confused, waste their time,  and become turned off. And project maintainers become discouraged that more people are complaining than contributing.

Edited by andy5995
Link to comment
Share on other sites

7 hours ago, andy5995 said:

@BaelishSadly, the development build has been broken for a long-time on many distros.

https://gitea.wildfiregames.com/0ad/0ad/issues/6895

 

@Itmshas a pull request open to fix the SM problem:

https://gitea.wildfiregames.com/0ad/0ad/pulls/7222

 

One easy work-around is to install a different version of Python (although I see you got the build working above, I'll reference it anyway): https://gitea.wildfiregames.com/0ad/0ad/issues/7080#issuecomment-102788

A fix should have been prioritized, or the document for the build instructions should have been updated accordingly. There's already enough documentation that appeals to developers to contribute. All that happens when a project has a broken build for so long is that potential developers get confused, waste their time,  and become turned off. And project maintainers become discouraged that more people are complaining than contributing.

Just FYI the build has been fixed recently and is slowly being rolled on to Ubuntu and Debian.

  • Thanks 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...