@dreieck:
The solution was to remove --strip-all
from the LDFLAGS
.
I added to the PKGBUILD
:
export LDFLAGS="$(sed 's|,--strip-all||g' <<< "${LDFLAGS}")"
Git Clone URL: | https://aur.archlinux.org/palemoon.git (read-only, click to copy) |
---|---|
Package Base: | palemoon |
Description: | Open source web browser based on Firefox focusing on efficiency. |
Upstream URL: | https://www.palemoon.org/ |
Keywords: | browser goanna web |
Licenses: | MPL-2.0 |
Submitter: | artiom |
Maintainer: | WorMzy |
Last Packager: | WorMzy |
Votes: | 141 |
Popularity: | 0.131247 |
First Submitted: | 2014-06-05 10:54 (UTC) |
Last Updated: | 2024-11-05 20:54 (UTC) |
« First ‹ Previous 1 .. 11 12 13 14 15 16 17 18 19 20 21 .. 38 Next › Last »
@dreieck:
The solution was to remove --strip-all
from the LDFLAGS
.
I added to the PKGBUILD
:
export LDFLAGS="$(sed 's|,--strip-all||g' <<< "${LDFLAGS}")"
When trying to build, build fails for me with
[...]
110:19.04 libxul_s.a.desc
110:19.15 libxul.so
110:33.40 nm: libxul.so: no symbols
110:33.40 NSModules are not ordered appropriately
110:33.40 make[5]: *** [/tmp/palemoon/src/UXP/config/rules.mk:774: libxul.so] Error 1
110:33.40 make[5]: *** Deleting file 'libxul.so'
110:33.43 make[4]: *** [/tmp/palemoon/src/UXP/config/recurse.mk:71: toolkit/library/target] Error 2
110:33.45 make[3]: *** [/tmp/palemoon/src/UXP/config/recurse.mk:33: compile] Error 2
110:33.48 make[2]: *** [/tmp/palemoon/src/UXP/config/rules.mk:494: default] Error 2
110:33.50 make[1]: *** [/tmp/palemoon/src/UXP/client.mk:414: realbuild] Error 2
110:33.52 make: *** [client.mk:170: build] Error 2
110:33.55 499 compiler warnings present.
110:33.90 Failed to parse ccache stats output: stats updated Tue Aug 6 14:09:21 2019
==> ERROR: A failure occurred in build().
Aborting...
Just before starting the build, the *FLAGS
-variables are:
CFLAGS:
-O3 -g0 -march=x86-64 -mtune=native -ftree-vectorize -pipe --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2 -fomit-frame-pointer -Wl,-z,relro,-z,now -D_FORTIFY_SOURCE=2 -fPIC -fstack-protector
CXXFLAGS:
-O3 -g0 -march=x86-64 -mtune=native -ftree-vectorize -pipe --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2 -fomit-frame-pointer -Wl,-z,relro,-z,now -D_FORTIFY_SOURCE=2 -fPIC -fstack-protector -fpermissive
CPPFLAGS (set in the PKGBUILD
, not in /etc/makepkg.conf
):
-O2 -Wno-format-overflow
LDFLAGS:
-Wl,-O1,-z,relro,-z,now,--strip-all,--as-needed,--relax,--sort-common,--hash-style=gnu,--enable-new-dtags
and build is executed with
python2 mach build -j1
Any idea what could be the problem here?
Thank you for the consideration. Of course, I will inform you if there are any issues.
Thanks for formatting. Is there anything else useful in the referenced log file and/or the system journal? Can you reproduce the problem with palemoon-bin?
I note you're using the intel video driver, if it's an option for your system, see if you can reproduce the problem with the modesetting driver.
Formatted, worth saying there is a new glibc and lib32-glibs update, wonder if resolves the issue.
Thanks for investigating. I've successfully built with your proposed changes, and tested that the browser launches with this build. I'm happy to introduce this change the next time upstream makes a release, but if you're running your build and encounter any issues between then and now, please let me know.
I had some time to read and try some stuff. So, GCC 9's -Werror=format-overflow warning is being treated as an error and aborting the build. From gcc's online documentation (available at https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html) :
"Warn about calls to formatted input/output functions such as snprintf and vsnprintf that might result in output truncation. When the exact number of bytes written by a format directive cannot be determined at compile-time it is estimated based on heuristics that depend on the level argument and on optimization. While enabling optimization will in most cases improve the accuracy of the warning, it may also result in false positives. Except as noted otherwise, the option uses the same logic -Wformat-overflow."
Therefore, by enabling lto by using -flto=2(cpu thread number), gcc9 analyzed the code better, didn't give the warning nor need the fix and produced a space net change savings of about 10MiB in comparison with the same version without lto, performance benefits are not known (it feels faster but it may be just placebo, I have to see how to quantify and display the performance gains) and a negligible amount less of time to build, but used more ram to build. Without lto it's a warning and the warning can be disabled with -Wno-format-overflow in the CPPFLAGS variable in: PKGBUILD
like this: export CPPFLAGS="$CPPFLAGS -O2 -Wno-format-overflow"
and in the mozconfig.in like this: ac_add_options --enable-optimize="-O2 -Wno-format-overflow"
The build progresses smoothly with gcc9 by just adding that and by commenting the gcc8 CC and CXX export lines at the beginning of mozconfig and removing gcc8 dependency from the PKGBUILD. Please, feel free to reproduce the fix provided and hopefully instate the needed changes so others can build with gcc9 smoothly as well. Enjoy. Edit1: fixed formatting Edit2: fixed space savings wording Edit3:fixes
Please use markdown to format your post, syrenity. Three backticks before and after the output should make it into a readable code block.
[ 7931.122] (EE) Backtrace:
[ 7931.122] (EE) 0: /usr/lib/Xorg (xorg_backtrace+0x4d) [0x55c7efcc30cd]
[ 7931.122] (EE) 1: /usr/lib/Xorg (0x55c7efc12000+0xb1209) [0x55c7efcc3209]
[ 7931.122] (EE) 2: /usr/lib/libc.so.6 (0x7f1fe5f85000+0x3a7e0) [0x7f1fe5fbf7e0]
[ 7931.122] (EE) 3: /usr/lib/libc.so.6 (gsignal+0x145) [0x7f1fe5fbf755]
[ 7931.122] (EE) 4: /usr/lib/libc.so.6 (abort+0x125) [0x7f1fe5faa851]
[ 7931.122] (EE) 5: /usr/lib/libc.so.6 (0x7f1fe5f85000+0x7ca38) [0x7f1fe6001a38]
[ 7931.122] (EE) 6: /usr/lib/libc.so.6 (0x7f1fe5f85000+0x8325a) [0x7f1fe600825a]
[ 7931.122] (EE) 7: /usr/lib/libc.so.6 (0x7f1fe5f85000+0x84c5c) [0x7f1fe6009c5c]
[ 7931.122] (EE) 8: /usr/lib/xorg/modules/drivers/intel_drv.so (0x7f1fe44df000+0x5992f) [0x7f1fe453892f]
[ 7931.122] (EE) 9: /usr/lib/Xorg (0x55c7efc12000+0x12d3ae) [0x55c7efd3f3ae]
[ 7931.122] (EE) 10: /usr/lib/Xorg (0x55c7efc12000+0xfd945) [0x55c7efd0f945]
[ 7931.122] (EE) 11: /usr/lib/Xorg (0x55c7efc12000+0x10e275) [0x55c7efd20275]
[ 7931.122] (EE) 12: /usr/lib/Xorg (0x55c7efc12000+0x15ceee) [0x55c7efd6eeee]
[ 7931.122] (EE) 13: /usr/lib/Xorg (FreeResource+0xcd) [0x55c7efd6f18d]
[ 7931.122] (EE) 14: /usr/lib/Xorg (0x55c7efc12000+0x17ab6e) [0x55c7efd8cb6e]
[ 7931.122] (EE) 15: /usr/lib/Xorg (0x55c7efc12000+0x37fe8) [0x55c7efc49fe8]
[ 7931.122] (EE) 16: /usr/lib/libc.so.6 (__libc_start_main+0xf3) [0x7f1fe5fabee3]
[ 7931.122] (EE) 17: /usr/lib/Xorg (_start+0x2e) [0x55c7efc4a30e]
[ 7931.122] (EE)
[ 7931.122] (EE)
Fatal server error:
[ 7931.122] (EE) Caught signal 6 (Aborted). Server aborting
[ 7931.122] (EE)
[ 7931.122] (EE)
Please consult the The X.Org Foundation support
at http://wiki.x.org
for help.
[ 7931.122] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[ 7931.122] (EE)
[ 7931.122] (II) AIGLX: Suspending AIGLX clients for VT switch
[ 7932.335] (EE) Server terminated with error (1). Closing log file.
Latest version randomly crashes X server on Dell XPS 15 (9570).
Had to stop using it for the meanwhile.
Pinned Comments
WorMzy commented on 2021-03-02 16:19 (UTC) (edited on 2022-08-03 21:12 (UTC) by WorMzy)
The following key is used to sign release commits:
40481E7B8FCF9CEC
Import it into your keyring however you want.
https://wiki.archlinux.org/index.php/GnuPG#Import_a_public_key