#4335 closed defect (worksforme)
Fix Alpha 21 Ubuntu 14.04 build on the WFG PPA
Reported by: | scythetwirler | Owned by: | |
---|---|---|---|
Priority: | Release Blocker | Milestone: | |
Component: | Build & Packages | Keywords: | |
Cc: | ricotz, Itms | Patch: |
Description (last modified by )
Per ricotz:
trusty/14.04 package are not available since the test-suite still fails in that environment on GCC 4.8
"Assertion failure: clasp->flags & (1<<5), at /build/mozjs38-v3t0N3/mozjs38-38.2.1~rc0/js/src/jsobj.cpp:1207"
Here are the complete logs: https://launchpadlibrarian.net/292714320/buildlog_ubuntu-trusty-amd64.0ad_0.0.21-0ubuntu1~14.04~wfg1_BUILDING.txt.gz
Attachments (1)
Change History (20)
comment:1 by , 7 years ago
Summary: | Fix Ubuntu 14.04 build → Fix Alpha 21 Ubuntu 14.04 build |
---|
comment:2 by , 7 years ago
Description: | modified (diff) |
---|
comment:3 by , 7 years ago
I have the same problem. Xubuntu 14.04.5 LTS and gcc --version 4.8.4.
Screenshot -> http://imgur.com/a/TYZvR.
Any advice appreciated
comment:4 by , 7 years ago
Hello meric, me and ricotz couldn't reproduce the problem, so apparently the package was pushed to the PPA.
Since you get the issue, it would be awesome if you could help us track it down. That requires you get the development version and run it inside a debugger, to understand how it fails. You can find instructions at BuildInstructions#Linux and wiki:Debugging#CallstackonLinuxOSX.
Would you be able to do that and post a backtrace here? It would be much appreciated.
comment:5 by , 7 years ago
I can confirm the problem also exists on Kubuntu 14.04.5 LTS, gcc version 4.8.4.
Screenshot: http://wstaw.org/m/2016/12/14/Screen.png
Never had any trouble with previous versions of 0ad, though.
comment:6 by , 7 years ago
+1 :(
Linux Mint 17.2 Cinnamon 64-bit AMD Graphics using the recommended driver, any help much appreciated :)
Cache: 400 (total: 5959) MiB TIMER| InitVfs: 1.33915 ms TIMER| CONFIG_Init: 1.54775 ms Sound: AlcInit success, using OpenAL Soft TIMER| shutdown ConfigDB: 0.578 us AL lib: FreeContext: (0x230de90) Deleting 64 Source(s) TIMER| resource modules: 3.91584 ms TIMER TOTALS (9 clients) ----------------------------------------------------- tc_dds_transform: 0 c (0x) tc_png_decode: 0 c (0x) tc_pool_alloc: 50.828 kc (3x) tc_transform: 0 c (0x) tc_plain_transform: 0 c (0x) tc_ShaderValidation: 0 c (0x) tc_ShaderGLSLLink: 0 c (0x) tc_ShaderGLSLCompile: 0 c (0x) xml_validation: 0 c (0x) ----------------------------------------------------- TIMER| shutdown misc: 381.612 us Cache: 400 (total: 5959) MiB TIMER| InitVfs: 98.1317 ms TIMER| CONFIG_Init: 1.59348 ms Sound: AlcInit success, using OpenAL Soft Assertion failure: clasp->flags & (1<<5), at /build/mozjs38-v3t0N3/mozjs38-38.2.1~rc0/js/src/jsobj.cpp:1207 Segmentation fault
comment:7 by , 7 years ago
Kubuntu 14.04.5, gcc version 4.8.4 confirmed:
Cache: 400 (total: 3901) MiB TIMER| InitVfs: 161.936 ms TIMER| CONFIG_Init: 48.3781 ms Sound: AlcInit success, using OpenAL Soft TIMER| shutdown ConfigDB: 0.744 us AL lib: FreeContext: (0x118d7f0) Deleting 64 Source(s) TIMER| resource modules: 488.345 ms TIMER TOTALS (9 clients) ----------------------------------------------------- tc_dds_transform: 0 c (0x) tc_png_decode: 0 c (0x) tc_pool_alloc: 82.428 kc (3x) tc_transform: 0 c (0x) tc_plain_transform: 0 c (0x) tc_ShaderValidation: 0 c (0x) tc_ShaderGLSLLink: 0 c (0x) tc_ShaderGLSLCompile: 0 c (0x) xml_validation: 0 c (0x) ----------------------------------------------------- TIMER| shutdown misc: 360.963 us Cache: 400 (total: 3901) MiB TIMER| InitVfs: 144.532 ms TIMER| CONFIG_Init: 1.61938 ms Sound: AlcInit success, using OpenAL Soft Assertion failure: clasp->flags & (1<<5), at /build/mozjs38-v3t0N3/mozjs38-38.2.1~rc0/js/src/jsobj.cpp:1207 Segmentation fault (core dumped)
comment:8 by , 7 years ago
Same problem with ubuntu 14.04 32bit, GeForce 9400M
Cache: 200 (total: 3754) MiB TIMER| InitVfs: 2.08844 ms TIMER| CONFIG_Init: 2.93223 ms Sound: AlcInit success, using OpenAL Soft TIMER| shutdown ConfigDB: 1.961 us AL lib: FreeContext: (0xa3a6d68) Deleting 64 Source(s) TIMER| resource modules: 6.99542 ms TIMER TOTALS (9 clients)
tc_dds_transform: 0 c (0x) tc_png_decode: 0 c (0x) tc_pool_alloc: 52.191 kc (3x) tc_transform: 0 c (0x) tc_plain_transform: 0 c (0x) tc_ShaderValidation: 0 c (0x) tc_ShaderGLSLLink: 0 c (0x) tc_ShaderGLSLCompile: 0 c (0x) xml_validation: 0 c (0x)
TIMER| shutdown misc: 363.541 us Cache: 200 (total: 3754) MiB TIMER| InitVfs: 157.905 ms TIMER| CONFIG_Init: 3.01663 ms Sound: AlcInit success, using OpenAL Soft Assertion failure: clasp->flags & (1<<5), at /build/mozjs38-34YJjE/mozjs38-38.2.1~rc0/js/src/jsobj.cpp:1207 Segmentation fault
follow-ups: 10 11 comment:9 by , 7 years ago
This issue only happens in Ubuntu 14.04. Upgrading to 16.04 will avoid it. See here for instructions: https://wiki.ubuntu.com/XenialXerus/ReleaseNotes#Upgrading_from_Ubuntu_14.04_LTS_or_15.10
comment:10 by , 7 years ago
Replying to fabio:
This issue only happens in Ubuntu 14.04. Upgrading to 16.04 will avoid it. See here for instructions: https://wiki.ubuntu.com/XenialXerus/ReleaseNotes#Upgrading_from_Ubuntu_14.04_LTS_or_15.10
That is just a workaround. Isn't there any chance to make a binary for 14.04.5?
comment:11 by , 7 years ago
Replying to fabio:
This issue only happens in Ubuntu 14.04. Upgrading to 16.04 will avoid it. See here for instructions: https://wiki.ubuntu.com/XenialXerus/ReleaseNotes#Upgrading_from_Ubuntu_14.04_LTS_or_15.10
My macbook has driver problems (Geeforce 9400M with two displays), so I would stay with 14.04 (sad, but it is better). But the game worked fine till the last update, so I don't think the problem is with the 14.04 but with the new binary. Anyway thanks for the advice
comment:12 by , 7 years ago
Update: The issue comes from the libmozjs-38-dev
package on the PPA. I can reproduce the issue when installing it and then compiling Alpha 21 from the sources with --with-system-mozjs38
.
I was not able to determine the cause of the package corruption, all my attempts to compile SM with Launchpad flags resulted in a perfectly working library, from which a working game was compiled.
However, being able to compile a crashing version gave me a backtrace. The crash happens when creating the SpiderMonkey global object, from a custom JSClass
that misses a flag. This flag is not needed for the global object in theory:
bool globalWithoutCustomTrace = clasp->trace == JS_GlobalObjectTraceHook && !cx->compartment()->options().getTrace(); if (clasp->trace && !globalWithoutCustomTrace) MOZ_RELEASE_ASSERT(clasp->flags & JSCLASS_IMPLEMENTS_BARRIERS);
(globalWithoutCustomTrace
is true in theory, if I'm not mistaken)
For some reason (maybe a bug in gcc or another tool?) the assertion is triggered when using a Launchpad build.
The attached patch fixes the issue, but it is moronic (the flag is not supposed to be set on the global object), so I suggest only using it for patching the Ubuntu PPA package for 14.04. In any case, the flag and subsequent tests were removed between versions 38 and 45 of SM, so we will get rid of it soonish. See https://bugzilla.mozilla.org/show_bug.cgi?id=1088214.
comment:13 by , 7 years ago
Trac is a bit broken right now and won't let me upload the patch, I'll post it tomorrow. It just adds the flag here.
comment:14 by , 7 years ago
Also, unsurprisingly, it exists for Xubuntu 14.04.5 LTS.
For those not ready to upgrade their OS and just want to play, the getdeb.net repository still has the version 0.19 packages for 0AD. By installing and using Synaptic one can force the 0.19 version to be live rather than 0.21 and then one can play that version. http://www.playdeb.net/updates/Ubuntu/14.04/?category=Strategy http://www.playdeb.net/install/0ad/0.0.19-1%7Egetdeb1
by , 7 years ago
Attachment: | fix-trusty.patch added |
---|
comment:15 by , 7 years ago
Cc: | removed |
---|---|
Keywords: | patch rfc added |
Summary: | Fix Alpha 21 Ubuntu 14.04 build → [PATCH] Fix Alpha 21 Ubuntu 14.04 build |
comment:16 by , 7 years ago
Keywords: | patch rfc removed |
---|---|
Summary: | [PATCH] Fix Alpha 21 Ubuntu 14.04 build → Fix Alpha 21 Ubuntu 14.04 build |
No, as stated above, this patch is not supposed to make it into our codebase. It is a hack that could be applied to the trusty version of the PPA package, so users are not incommodated.
comment:17 by , 7 years ago
Milestone: | Alpha 22 |
---|---|
Resolution: | → worksforme |
Status: | new → closed |
Summary: | Fix Alpha 21 Ubuntu 14.04 build → Fix Alpha 21 Ubuntu 14.04 build on the WFG PPA |
The patch above has been applied to the PPA (only for the trusty package) and it seems to work. I'll close this issue as 'works for me' since the bug seems to come from the PPA itself. It should be reopened in case someone has the issue when building the game on their own box.
Users with the issue: Just run sudo apt-get update && sudo apt-get upgrade
and it should fix the issue for you. If it doesn't, please report here.
comment:18 by , 7 years ago
That has fixed the problem for my Xubuntu 14.04.5 LTS PC. It is now running Alpha 21 OK, thank you.
I cannot reproduce this issue. The unix-build tarball works fine for me on a fresh install of Xubuntu 14.04.5.
gcc --version
is 4.8.4.Would you be able to get a backtrace of the assertion failure?