Fatdog64 710 First Compilation: Palemoon 27.0.2 Missing features.h Fatal Error
I prefer Palemoon as my web browser and because of this, I know there has been compatibility and functionality issue from past versions before version 27.0 came out. 27.0 is the milestone at which Twitter videos will play, Target.com loads (before it would hang on their main page), Mail.com logs in (white screen after login), and Wattpad shows progress correctly when reading a story. To clarify, I don't use Wattpad, Target, or Twitter (except for occasional videos embedded into articles I read), but it reflects poorly on the browser and hinders use in many regards. So, I sought how to compile the latest Palemoon (27.0.2) using the Fatdog native pkgbuild system because of the unique nature of Fatdog's spot security. I decided to reuse the recipe from Fatdog's 26.5.0 Palemoon package after editing to include a new md5sum and version number.
Here are the steps I've taken thus far and the workarounds found throughout the process. 1) Install gstreamer2, Fatdog-pkgbuild, Make, Python 2.7.X, Autoconf213, GNU m4, gcc (binutils as dependency), perl (gdbm as dependency), libcloog, libisl 2) Download glibc from the Fatdog64's web package repository and copy /glibc-2.19-x86_64-1/lib64/ to /usr/ and overwrite contents (I needed to do this to overcome a faulty default glibc package that's marked locked in gslapt, yet according to the list of installed files, libc_nonshared.a should be installed when it's clearly missing from Fatdog64 710.) 3) Ignore making a LOCALPKG directory as the Help file instructs, the build-pkg.sh script only looks in /usr/src/pkgbuild/pkg/ 4) Create a folder within the /usr/src/pkgbuild/pkg/ directory. Any generic name of the package you wish to compile is sufficient. For Palemoon, I put the recipe file in /usr/src/pkgbuild/pkg/Palemoon/recipe. 5) Look to see if an older version is available in the Fatdog repository. If so, download it so you can reuse the recipe after editing with a text editor to change the following fields PKGVER=# N.B. BE EXACT WITH THIS FIELD MD5SUM= USE THE md5sum COMMAND TO CHECK THE SOURCE CODE 6) Open a terminal and type cd /usr/src/pkgbuild/ To begin compiling the package, type: ./build-pkg.sh FOLDER-NAME-WITH-RECIPE-INSIDE 7) Here is the showstopper: /usr/include/c++/4.8.3/x86_64-fatdog-linux-gnu/bits/os_defines.h:39:22: fatal error: features.h: No such file or directory features.h seems to be missing but from which package in Fatdog64 is my question. Presumably, os_defines.h is referring to /usr/include/c++/4.8.3/x86_64-fatdog-linux-gnu/bits/features.h but it cannot be found. I found a file with the same name in /usr/include/c++/4.8.3/parallel/ and copied that into its place, but I still get the same error. The copy from /parallel/ has since been deleted. On another note, I did find a fix for an issue with symlinks for Palemoon when uninstalling old versions and reinstalling a new version. I'm unsure whether the issue is Fatdog64 specific but that seems to be the case (i.e., I've never encountered this before acrost about the two dozen or so other distributions I've used in my life). If Palemoon won't open, a broken symlink is usually to blame. To fix this: Open /usr/bin/ and find the Palemoon symlink. Delete it. Open /usr/lib64/Palemoon-2#.#.# (Replace # with whatever version you have installed). Create a symlink with the palemoon executable. FIXED! P.S. Still waiting almost a week later for my Murga Linux Forums confirmation email... On LinuxQuestions, I got my account and posting privileges within 15 minutes. Kudos to LinuxQuestions forum! |
Quote:
That's where all the dev stuff is (except for 'gstreamer2' and 'autoconf213', in this particular case). Download it via Control Panel -> System -> SFS Manager. Just checked and PM-27.0.2 builds fine for me, provided that you also install 'gst2-plugins-base' and correct this line in the recipe: Code:
ac_add_options --enable-gstreamer=1.0 Code:
ac_add_options --enable-gstreamer Quote:
It's a known problem that notifications from Murga end up right there, at least in Gmail. Greetings! |
You're correct! The fd64-devx_710.sfs package worked as that let me at least get to the compilation stage, but a new issue cropped up.
The following was all done from a fresh install from scratch to avoid conflictions with my previous attempt (i.e., 1 package at a time). Everything seemed alright, I edited the recipe to remove 1.0 off the end of gstreamer, installed gst2-plugins-base, gstreamer2, autoconf213, and Fatdog-pkgbuild. I proceeded to compile with Code:
./build-pkg.sh Palemoon My hardware specifications aren't terrible either (Intel Core 2 Duo, 4Gb RAM, SSD, Intel GMA 960 Integrated Graphics). If you could recommend how I should proceed with compiling the latest Palemoon 27.0.2 with spot user security on Fatdog64 710, I would be greatly indebted, kind sir. Thank you for the help you've provided thus far! I and probably other Fatdog64 users appreciate your assistance tremendously. Quote:
If I can actually get the native Fatdog Package build system to function as intended, I will move on to compiling udevil for spacefm and others such that the Fatdog community might benefit from more and newer packages. Until then, I will use AntiX. |
Quote:
Perhaps the unresponsiveness wasn't caused by CPU, but low RAM, because the build process takes place in tmpfs (/tmp/build-pkg...) - the unpacked Palemoon sources alone are 1GiB! I do recall that I did alter BUILD_DIR_PREFIX variable for that reason. So, maybe try something like: Code:
export BUILD_DIR_PREFIX=/path/to/some/ext?/partition Quote:
From what I recall (but it was 5 years ago), the confirmation email arrived in an instant. Greetings! |
Code:
/tmp/Pale-Moon-27.0.2_Release/palemoon-build-dir/_virtualenv/bin/python /tmp/Pale-Moon-27.0.2_Release/config/expandlibs_gen.py -o libdom_smil.a.desc Unified_cpp_dom_smil0.o Unified_cpp_dom_smil1.o |
I don't see the source of this error.
Could you please attach full log: Code:
./build-pkg.sh palemoon 2>&1 | tee pm.log |
3 Attachment(s)
I had to split the log file into thirds because of the infernal forum restrictions (i.e., 256Kb max text file size...).
Considering the technological advancements of late, you'd figure they could permit at least a megabyte's worth of data. Anyhow, they are numbered in order for your convenience. I was rushed to post the error codes, so time didn't allow for me to provide more meaningful details last post. Log files pm3.log or pm2.log should include the relevant portions. I apologize for the incompleteness of my previous post and thank you heartily for your support thus far. With your help, I may resolve this problem for both myself and others who follow in my footsteps. |
Thank you for the log.
Here's the culprit (in pm3): Code:
In file included from /tmp/Pale-Moon-27.0.2_Release/dom/base/nsStyledElement.h:18:0, There are many theories out there on the web: hardware (RAM) issue, faulty GCC version, out-of-memory condition, bad FLAGS, too many -j(obs), and so on... I don't suspect GCC or FLAGS, because it wouldn't work for me, too, unless it occurs in combination with specific hardware. Maybe try building with '-j1' by removing the indicated line from the recipe: Code:
# If you have a multicore machine you can speed up the build by running I have 4G ram, but also 2G swap, however I don't remember if it was used during compilation. You could also try building on a different machine, if possible. Greetings! |
1 Attachment(s)
Quote:
I attempted another compile without multicore support and came upon a new error in Unified_cpp_xpcom. This an excerpt of the log which is in a compressed .tzma and renamed as a .log to fool the attachment system. Remove the .log portion of the file extension and extract to read my log. Code:
Unified_cpp_xpcom_build1.o Quote:
|
I must admit I'm clueless...
Maybe you should build something else first, something smaller/simpler like 'galculator' or 'engrampa', just to make sure everything's ok with the setup itself. Or perhaps building in VirtualBox* or Qemu (the latter is a part of devx.sfs) might be worth giving a try - it would at least partially separate the build environment from the real hardware. *) FYI: if you're going to install VBox in Fatdog, you also need to load kernel-source-4.4.35.sfs. Also, the lastest branch (5.1.x) won't install properly, unless you delete /bin/readlink symlink (which points to busybox, there's still the "full" version in /usr/bin) before installing it. Greetings! |
Tying up loose ends.
According to Moonchild, Palemoon's lead developer & creator, my limited hardware setup restricts me being able to compile this software. As per their post here:
Quote:
I'm marking this thread as SOLVED, even though I'm disappointed with the answer found. Here is the answer: Don't EVER try to compile Palemoon on a laptop or limited hardware setup. Lesson learned. |
All times are GMT -5. The time now is 07:28 PM. |