Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

on Linux/PPC failure to start due to JS init #210

Open
rmottola opened this issue Jul 25, 2024 · 19 comments
Open

on Linux/PPC failure to start due to JS init #210

rmottola opened this issue Jul 25, 2024 · 19 comments
Labels
bug Something isn't working help wanted Extra attention is needed

Comments

@rmottola
Copy link
Owner

[29129] ###!!! ABORT: JS_InitWithFailureDiagnostic: u_init() failed: file /home/multix/code/Arctic-Fox/xpcom/build/XPCOMInit.cpp, line 709

I can't get smarter from this error and reason

things are working on Intel but also on NetBSD/PPC, so it is specific to Linux/PPC.

@rmottola rmottola added bug Something isn't working help wanted Extra attention is needed labels Jul 25, 2024
@techflashYT
Copy link

Any chance you're in need of testing for this issue? I have 2 different 32-bit PPC machines that I could test this on:

  • iBook G3, 600MHz, Debian 12
  • Nintendo Wii, (PPC 750CL), 729MHz, Void Linux PPC

@rmottola
Copy link
Owner Author

rmottola commented Aug 2, 2024

@techflashYT thanks for you ... the issue is not 32bit or 64 bit specific, but seems to be Linux/PPC specific. Linux/x86 works, NetBSD/ppc works!
What kind of testing do you thought to perform?
The only way I would see here is either understanding the error or doing compiler bisection and getting the breaking commit and trying to understand.

On my PowerBook G4 (1.66Ghz, 2GB of ram) it takes 441 minutes to compile, so not the best tool to do a series of bisecting compilations!
You could try on yours if they run cool, but the issue is RAM? 1.2GB bare minimum to build with plenty of swap and wear on HDD, 1.5GB starts to be usable. 2GB recommended.
Running it is of course less heavy and depends on the sites.

@techflashYT
Copy link

I typically opt to cross compile software for my PPC machines. I also unfortunately lack any 64-bit PPC Hardware.
I was thinking I would try to compile Arctic Fox targetting different distros (with differnet libraries), and try multiple configurations, maybe try a few different versions, and just general poking at it, to see if it makes any changes.

@rmottola
Copy link
Owner Author

rmottola commented Aug 4, 2024

If you have a working cross-compile which produces a working binary, you can try compiling and testing if you can reproduce the error, then from there go back and try to find the offending commit, with some bisection. That would be useful.

@rmottola
Copy link
Owner Author

rmottola commented Sep 10, 2024

Known good commit:

commit 77ef52ac2a1287def2f45b40e7f41ac67dc23b19 (HEAD)
Author: Riccardo Mottola <[email protected]>
Date:   Mon Feb 19 09:05:38 2024 +0100

    Bug 1251897 - DocAccessible constructor doesn't have to take root element as an argument, r=davidb

This is before configure refactor.

@rmottola
Copy link
Owner Author

rmottola commented Sep 11, 2024

Still good:

commit a908216277faa1f5239f505b5fb1632b3d2004d9 (HEAD)
Author: Riccardo Mottola <[email protected]>
Date:   Mon Apr 29 18:01:33 2024 +0200

    bug 1259753 - fix some C++ unittests to use ScopedXPCOM to init XPCOM. r=ms2ger

@rmottola
Copy link
Owner Author

rmottola commented Sep 11, 2024

Already broken:

commit 3becdb439375136029f5991133f47f3f398a0674 (HEAD)
Author: Riccardo Mottola <[email protected]>
Date:   Mon Apr 29 20:55:02 2024 +0200

    bug 1239083 - use moz.build files to build ICU. r=glandium,waldo
    

@rmottola
Copy link
Owner Author

Check:
mozilla/gecko-dev@1853761

@rmottola
Copy link
Owner Author

Reading https://github.com/rmottola/Arctic-Fox/blob/master/build/autoconf/icu.m4 I see little endian data.

This confirms:
https://bugzilla.mozilla.org/show_bug.cgi?id=1264836

so as suggested, PPC must be tested with:
-with-system-icu or --without-intl-api.

@rmottola
Copy link
Owner Author

@chzigotzky
Copy link

Compiling error of Arctic Fox 45.0 on Ubuntu 10.04.4:

[code]
134:48.24 In the directory /home/amigaone/Downloads/Arctic-Fox-45.0/obj-ff-dbg/toolkit/mozapps/extensions
134:48.24 The following command failed to execute properly:
134:48.24 /usr/bin/g++ -m32 -flax-vector-conversions -fpermissive -O3 -falign-loops=16 -falign-functions=16 -falign-labels=16 -falign-jumps=16 -std=gnu++11 -o Unified_cpp_mozapps_extensions0.o -c -I/home/amigaone/Downloads/Arctic-Fox-45.0/obj-ff-dbg/dist/stl_wrappers -I/home/amigaone/Downloads/Arctic-Fox-45.0/obj-ff-dbg/dist/system_wrappers -include /home/amigaone/Downloads/Arctic-Fox-45.0/config/gcc_hidden.h -DNDEBUG=1 -DTRIMMED=1 -DSTATIC_EXPORTABLE_JS_API -DMOZILLA_INTERNAL_API -DIMPL_LIBXUL -I/home/amigaone/Downloads/Arctic-Fox-45.0/toolkit/mozapps/extensions -I/home/amigaone/Downloads/Arctic-Fox-45.0/obj-ff-dbg/toolkit/mozapps/extensions -I/home/amigaone/Downloads/Arctic-Fox-45.0/dom/base -I/home/amigaone/Downloads/Arctic-Fox-45.0/obj-ff-dbg/dist/include -I/home/amigaone/Downloads/Arctic-Fox-45.0/obj-ff-dbg/dist/include/nspr -I/home/amigaone/Downloads/Arctic-Fox-45.0/obj-ff-dbg/dist/include/nss -fPIC -DMOZILLA_CLIENT -include /home/amigaone/Downloads/Arctic-Fox-45.0/obj-ff-dbg/mozilla-config.h -MD -MP -MF .deps/Unified_cpp_mozapps_extensions0.o.pp -Wall -Wc++11-compat -Wempty-body -Wignored-qualifiers -Woverloaded-virtual -Wpointer-arith -Wsign-compare -Wtype-limits -Wunreachable-code -Wwrite-strings -Wno-invalid-offsetof -Wno-error=maybe-uninitialized -Wno-error=deprecated-declarations -Wno-error=array-bounds -fno-exceptions -fno-strict-aliasing -fno-rtti -ffunction-sections -fdata-sections -fno-exceptions -fno-math-errno -pthread -pipe -g -freorder-blocks -Os -fomit-frame-pointer /home/amigaone/Downloads/Arctic-Fox-45.0/obj-ff-dbg/toolkit/mozapps/extensions/Unified_cpp_mozapps_extensions0.cpp
134:48.24 make[5]: *** [Unified_cpp_mozapps_extensions0.o] Error 1
134:48.24 make[4]: *** [toolkit/mozapps/extensions/target] Error 2
134:48.24 make[4]: *** Waiting for unfinished jobs....
134:48.24 libdom_plugins_ipc.a.desc
134:48.24 make[3]: *** [compile] Error 2
134:48.24 make[2]: *** [default] Error 2
134:48.25 make[1]: *** [realbuild] Error 2
134:48.25 make: *** [build] Error 2
134:48.28 833 compiler warnings present.
[/code]

It has compiled on Void PPC but it doesn't start.

[code]
0:00.38 /home/amigaone/Downloads/Arctic-Fox-45.0/obj-ff-dbg/dist/bin/arcticfox -no-remote -profile /home/amigaone/Downloads/Arctic-Fox-45.0/obj-ff-dbg/tmp/scratch_user
[6587] ###!!! ABORT: JS_InitWithFailureDiagnostic: u_init() failed: file /home/amigaone/Downloads/Arctic-Fox-45.0/xpcom/build/XPCOMInit.cpp, line 709
[6587] ###!!! ABORT: JS_InitWithFailureDiagnostic: u_init() failed: file /home/amigaone/Downloads/Arctic-Fox-45.0/xpcom/build/XPCOMInit.cpp, line 709
[/code]

@chzigotzky
Copy link

It works with "ac_add_options --with-system-icu". :-)

Download: arcticfox-45.0.en-US.linux-powerpc.tar.bz2

Thanks a lot!

@kth5
Copy link

kth5 commented Nov 11, 2024

@rmottola If you require powerpc resources to build, let me know. Can provide ppc, ppc64 and ppc64le VMs running on POWER8/9.

@kth5
Copy link

kth5 commented Nov 14, 2024

It doesn't work if the system ICU is current enough, i.e. v45.1 builds when employing --with-system-icu on icu-75.1 but will not function.

@rmottola
Copy link
Owner Author

@rmottola If you require powerpc resources to build, let me know. Can provide ppc, ppc64 and ppc64le VMs running on POWER8/9.

interesting. Are they set up? or would I need to install the from scratch? getting a usable PPC environment is not so easy right now on PPC Debian, due to persisting python 2.7 requirement, of which old packages don't work anymore and it has been removed by debian

@rmottola
Copy link
Owner Author

It doesn't work if the system ICU is current enough, i.e. v45.1 builds when employing --with-system-icu on icu-75.1 but will not function.

Indeed, 75.1 apparently is too new. 71 and 72 do work. At a first glance, I don't know what is wrong, since it is inside the headers of ICU itself. Try to use an older one. We might establish a latest supported ICU.

@kth5
Copy link

kth5 commented Dec 8, 2024

@rmottola If you require powerpc resources to build, let me know. Can provide ppc, ppc64 and ppc64le VMs running on POWER8/9.

interesting. Are they set up? or would I need to install the from scratch? getting a usable PPC environment is not so easy right now on PPC Debian, due to persisting python 2.7 requirement, of which old packages don't work anymore and it has been removed by debian

We can get any distro going you like for as long as here's native ppc64 kernels since I wouln't want a TCG based VM. :)

@rmottola
Copy link
Owner Author

@kth5 to be useful, I need a distro with python2.7 . That would be an about 1year old Debian. I personally don't know how to do it, but in case "we" can set it up and you want to work on it, I can too and will us it to help test and build. CUrrenlty 32bit compiles but 64bit not (PPC). Wort trying. In case let's open a separate specific collaboration task for that?

@kth5
Copy link

kth5 commented Dec 28, 2024

@kth5 to be useful, I need a distro with python2.7 . That would be an about 1year old Debian. I personally don't know how to do it, but in case "we" can set it up and you want to work on it, I can too and will us it to help test and build. CUrrenlty 32bit compiles but 64bit not (PPC). Wort trying. In case let's open a separate specific collaboration task for that?

ArchPOWER does have basic support for Python 2.7 still (precisely for Arctifcfox actually). But I'm biased, if you'd prefer a Debian then we'd also be stuck with old system dependencies cos the last Debian I remember sporting Python 2.x was Debian 10 Buster and that's going to be a bit of work to get working on ppc.

So, what distro did you have in mind? Contact me at [email protected] and we can get talking.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

4 participants