Slackware - ARM This forum is for the discussion of Slackware ARM. |
Notices |
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Are you new to LinuxQuestions.org? Visit the following links:
Site Howto |
Site FAQ |
Sitemap |
Register Now
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
|
 |
|
08-21-2021, 08:17 AM
|
#16
|
Member
Registered: Aug 2021
Location: Sweden
Distribution: Slackware
Posts: 123
Original Poster
Rep:
|
Quote:
Originally Posted by glorsplitz
I got it built but it fails
Code:
/usr/bin/chromium
cat: /etc/debian_version: No such file or directory
/usr/lib/chromium/chromium: error while loading shared libraries: libjsoncpp.so.24: cannot open shared object file: No such file or directory
I imagine I could fake out /etc/debian_version but will jsoncpp (1.9.2) take care of libjsoncpp.so.24?
@Desiderius which libjsoncpp.so you have installed?
|
Yes, if you install and build jsoncpp you will meet chromium's missing dependency and it should work fine.
Last edited by Minime_2003; 08-21-2021 at 08:27 AM.
|
|
2 members found this post helpful.
|
08-21-2021, 08:27 AM
|
#17
|
Member
Registered: Aug 2021
Location: Sweden
Distribution: Slackware
Posts: 123
Original Poster
Rep:
|
Quote:
Originally Posted by Exaga
Just to satisfy my curiosity, why Chromium? Is it specifically required for something you're doing/planning or simply your preferred browser?
|
Well yes, i like chromium, think its a good, stable, fast web browser and not to bloated.
Also figured if i managed to build chromium as a ungoogled (Sligtly slimed and trimmed version) so why not =)
Knock on wood, i think i have worked out all now, how to get it to build with systems own clang.
Allso found pre-built clang binarys with all the tools needed, actually borrowed missing lld from the pre-built llvm/clang packages.
Last edited by Minime_2003; 08-21-2021 at 04:46 PM.
|
|
1 members found this post helpful.
|
08-21-2021, 10:40 PM
|
#18
|
Senior Member
Registered: Dec 2002
Distribution: slackware!
Posts: 1,398
|
@Minime_2003, thank you for replying.
I did slackbuild for jsoncpp (1.9.2), I now have libjsoncpp.so.22 NOT libjsoncpp.so.24, what chromium says it wants.
I can get and change source for a slackbuild but I'm not how to do that with a library.
Did you do BrunoLafleur github slackbuild? Does chromium work for you, what do you have for libjsoncpp.so.??
Thanks
|
|
|
08-22-2021, 10:37 AM
|
#19
|
Member
Registered: Aug 2021
Location: Sweden
Distribution: Slackware
Posts: 123
Original Poster
Rep:
|
Quote:
Originally Posted by glorsplitz
@Minime_2003, thank you for replying.
I did slackbuild for jsoncpp (1.9.2), I now have libjsoncpp.so.22 NOT libjsoncpp.so.24, what chromium says it wants.
I can get and change source for a slackbuild but I'm not how to do that with a library.
Did you do BrunoLafleur github slackbuild? Does chromium work for you, what do you have for libjsoncpp.so.??
Thanks
|
Oh, sorry i did not see you used the script from SBo, thats the not the versions chromium wants.
I did try the BrunoLafleur github slackbuild and it works, noticed its really picky about dependency versions.
I recomend using the SBo builds BrunoLafleur has on his github.
Listed them for you below:
Yes it worked, but i could not add WideVineCDM as i supected and its a old version of Chromium.
apart from that i guess it works.
Im not really satisfied, so i'm still working on building chromium from my Raspberry Pi 4 with Slackware Arm natively.
Made a SlackBuild script for clang that targets ARM,x68 and Arch64 (As its not needed really for any other targets) and just the clang plugins needed to build chromium.
Seams to be building fine, however it takes about 5-6 hours to compile. (Still wating for the final result as we speak)
Then link the ARM clang build to AlienbobŽs slackbuild for chromium, think that should be the solution.
And if all goes well and as planned one should be able to build chromium-ungoogled for ARM too =)
If any luck with this, iŽll be adding this to my github.
|
|
|
08-22-2021, 01:10 PM
|
#20
|
Senior Member
Registered: Dec 2002
Distribution: slackware!
Posts: 1,398
|
SOLVED!
Minime_2003, thank you for all the help, it works now.
Do you get something like this and did you do something about it?
Quote:
Failed to load extension from: /usr/share/chromium/extensions/cimiefiiaegbelhefglklhhakcgmhkai.json. Manifest file is missing or unreadable
|
|
|
|
08-22-2021, 03:35 PM
|
#21
|
Member
Registered: Apr 2020
Location: France
Distribution: Slackware
Posts: 507
|
Quote:
Originally Posted by glorsplitz
I got it built but it fails
Code:
/usr/bin/chromium
cat: /etc/debian_version: No such file or directory
/usr/lib/chromium/chromium: error while loading shared libraries: libjsoncpp.so.24: cannot open shared object file: No such file or directory
I imagine I could fake out /etc/debian_version but will jsoncpp (1.9.2) take care of libjsoncpp.so.24?
@Desiderius which libjsoncpp.so you have installed?
|
There is some dependencies which are listed in the chromium.info file which is with the chromium.SlackBuild.
Those dependencies are also inside https://github.com/BrunoLafleur/pbsl...ter/builds/sbo
They can coexist with the Slackware current version of those libraries.
|
|
1 members found this post helpful.
|
08-22-2021, 04:43 PM
|
#22
|
Senior Member
Registered: Dec 2002
Distribution: slackware!
Posts: 1,398
|
chromium is working fine for me, thank you very much for providing what was needed.
|
|
|
08-22-2021, 04:47 PM
|
#23
|
Member
Registered: Aug 2021
Location: Sweden
Distribution: Slackware
Posts: 123
Original Poster
Rep:
|
Quote:
Originally Posted by glorsplitz
Minime_2003, thank you for all the help, it works now.
Do you get something like this and did you do something about it?
|
Cant remeber that i ever saw sutch a message from chromium.
From the looks of it, it looks like it has problem reading the json file.
Might be that you are missing some json dependency or other library?
If that's the case, you can see what library you are missing by doing a ldd command on the bin file.
Ex:
Quote:
ldd /usr/lib/chromium/chromium | grep "not found"
|
(Depending where the chromium binary now is located, if you catch my drift)
Also check the dependency packages as BrunoLafleur remommended from his github.
Last edited by Minime_2003; 08-22-2021 at 04:48 PM.
|
|
|
08-22-2021, 08:15 PM
|
#24
|
Senior Member
Registered: Dec 2002
Distribution: slackware!
Posts: 1,398
|
I found a few mentions of
Quote:
Make sure the manifest.json file is UTF-8 encoded. ANSI and other character encoded files do not work.
|
Code:
file -i /usr/share/chromium/extensions/cimiefiiaegbelhefglklhhakcgmhkai.json
/usr/share/chromium/extensions/cimiefiiaegbelhefglklhhakcgmhkai.json: application/json; charset=us-ascii
seems charset=us-ascii needs to be UTF-8
I tried vim :wq! ++enc=utf-8 and
Code:
iconv -f from-encoding -t to-encoding inputfile(s) -o outputfile
but file -i keeps saying charset=us-ascii
Last edited by glorsplitz; 08-22-2021 at 08:16 PM.
|
|
|
08-23-2021, 04:10 AM
|
#25
|
Member
Registered: Apr 2020
Location: France
Distribution: Slackware
Posts: 507
|
I don't remember seeing the message for the extension you speak of. I didn't do something about it.
Also Debian is apparently thinking about packaging the chromium version 92. I will update the SlackBuild when it will be done.
|
|
1 members found this post helpful.
|
08-23-2021, 02:04 PM
|
#26
|
Member
Registered: Aug 2021
Location: Sweden
Distribution: Slackware
Posts: 123
Original Poster
Rep:
|
Wrote a llvm.slackbuild script and built clang with the tools neede in order to beable to build chromium.
Added the feature to AlienBobŽs chromium slackbuild to use the customllvm/clang slackpackage and as far as i can see itŽs compiling fine now.
My llvm.Slackbuild is found at my github if anyone is interested.
Here is a diff of the changes i made to AlienBobs slackbuild.
Make sure to set the correct custom clang base path (The directory you have installed your llvm custom pakage)
Code:
--- chromium.SlackBuild.orig 2021-08-23 19:05:01.875178854 +0200
+++ chromium.SlackBuild 2021-08-23 19:17:05.958577793 +0200
@@ -23,7 +23,7 @@
#
# -----------------------------------------------------------------------------
#
-# Slackware SlackBuild script
+# Slackware SlackBuild script
# ===========================
# By: Eric Hameleers <alien@slackware.com>
# For: chromium
@@ -37,8 +37,8 @@
# - python3 >= 3.7, python3-setuptools;
# - java runtime
# - Internet access (for downloading toolchain bins)
-# Needs:
-# Changelog:
+# Needs:
+# Changelog:
# 31.0.1650.57-1: 18/nov/2013 by Eric Hameleers <alien@slackware.com>
# * Initial build.
# 31.0.1650.63-1: 18/Nov/2013 by Eric Hameleers <alien@slackware.com>
@@ -409,17 +409,21 @@
# * Update.
# 92.0.4515.159-1: 17/aug/2021 by Eric Hameleers <alien@slackware.com>
# * Update.
-#
+# 23/aug/2021 by Minime <slackinfo[at]slackwarelinux[dot]se>
+# * Added option to enable custom clang when compiling
+# Chromium, this should resolve issues when building
+# arm systems. (Default enabled if using ARM)
+# Note: Will enable custom clang when using arm
+#
# -----------------------------------------------------------------------------
-#
+#
# -----------------------------------------------------------------------------
-#
+#
# Run 'sh chromium.SlackBuild' to build a Slackware package.
# The package (.txz) and .txt file as well as build logs are created in /tmp .
# Install it using 'installpkg'.
#
# -----------------------------------------------------------------------------
-
# Build an ungoogled chromium package (default no):
USE_UNGOOGLED=${USE_UNGOOGLED:-0}
@@ -434,7 +438,7 @@
SRCNAM=chromium
PRGNAM=${SRCNAM}${SRCEXT} # chromium, chromium-dev, chromium-ungoogled, etc
VERSION=${VERSION:-92.0.4515.159}
-UNGOOGLED=${UNGOOGLED:-92.0.4515.131-1}
+UNGOOGLED=${UNGOOGLED:-92.0.4515.159-1}
BUILD=${BUILD:-1}
TAG=${TAG:-alien}
@@ -495,6 +499,19 @@
# can be supported (Google offers only 64bit pre-built clang for download0:
USE_CLANG=${USE_CLANG:-1}
+# Use custom clang instead of googles prebuilt
+# or to save time rather than trying to compile
+# googles clang for x86 and ARM64 systems
+# Be sure to set USE_CLANG to "0"
+# if USE_CUSTCLANG is set to "1"
+USE_CUSTCLANG=${USE_CUSTCLANG:-0}
+
+# If set custom clang is set USE_CUSTCLANG "1"
+# Make sure you to set correct clang base path
+# Path where you installed the custom clang package.
+# default is set to "/opt/llvm".
+CLANG_BASE_PATH="/opt/llvm"
+
# If you don't want to enable support for Widevine CDM
# (content decryption module) say "0" here.
USE_CDM=${USE_CDM:-1}
@@ -567,12 +584,12 @@
MARCH=$( uname -m )
if [ -z "$ARCH" ]; then
case "$MARCH" in
- i?86) export ARCH=i586 ;;
- armv7hl) export ARCH=$MARCH ;;
- armv6hl) export ARCH=$MARCH ;;
- arm*) export ARCH=arm ;;
+ i?86) export ARCH=i586 ;;
+ armv7*) export ARCH=armv7 ;;
+ armv6*) export ARCH=armv6 ;;
+ #arm*) export ARCH=$MARCH ;;
# Unless $ARCH is already set, use uname -m for all other archs:
- *) export ARCH=$MARCH ;;
+ *) export ARCH=$MARCH ;;
esac
fi
@@ -605,8 +622,9 @@
#DSSE="0"
DSSE="1"
;;
- armv7hl) SLKCFLAGS="-O2 -march=armv7-a -mfpu=vfpv3-d16"
- SLKLDFLAGS=""; LIBDIRSUFFIX=""
+ armv7*) SLKCFLAGS="-O2 -march=armv7-a -mtune=cortex-a72 -mfpu=vfpv3-d16 -mfloat-abi=hard"
+ # Fix for using lld while linking chromium in a 32bit chroot:
+ SLKLDFLAGS="-Wl,-z,notext"; LIBDIRSUFFIX=""
DSSE="1"
# Widevine not supported (no binary library available):
USE_CDM=0
@@ -615,8 +633,9 @@
SYSROOT_TARGET="arm"
PKGARCH="$ARCH"
;;
- armv6hl) SLKCFLAGS="-O2 -march=armv6 -mfpu=vfp -mfloat-abi=hard"
- SLKLDFLAGS=""; LIBDIRSUFFIX=""
+ armv6*) SLKCFLAGS="-O2 -march=armv6 -mfpu=vfp -mfloat-abi=hard"
+ # Fix for using lld while linking chromium in a 32bit chroot:
+ SLKLDFLAGS="-Wl,-z,notext"; LIBDIRSUFFIX=""
DSSE="1"
# Widevine not supported (no binary library available):
USE_CDM=0
@@ -638,10 +657,17 @@
esac
case "$ARCH" in
- arm*) TARGET=$ARCH-slackware-linux-gnueabi ;;
+ #arm*) TARGET=$ARCH-slackware-linux-gnueabi ;;
+ arm*) TARGET=$SYSROOT_TARGET-slackware-linux-gnueabihf ;;
*) TARGET=$ARCH-slackware-linux ;;
esac
+echo "------------------"
+echo "Arch: $ARCH"
+echo "SYS ARCH: $SYSROOT_TARGET"
+echo "Target: $TARGET"
+echo "------------------"
+
# Exit the script on errors:
set -e
trap 'echo "$0 FAILED at line ${LINENO}" | tee $OUTPUT/error-${PRGNAM}.log' ERR
@@ -844,7 +870,28 @@
echo Building ...
+# Arm is not supprted for googles build
+# disabling clang and using custom clang
+# as default.
+# ARM does not support vaapi.
+if [[ ! $ARCH =~ arm.* ]]; then
+ do_lld=true
+ do_vaapi=true
+else
+ # As its not possible to compile googles clang version on arm
+ # make sure to disble it and use custom clang version.
+ # Documentation from:
+ # https://chromium.googlesource.com/chromium/src/+/refs/tags/92.0.4515.159/docs/clang.md#Using-a-custom-clang-binary
+ USE_CLANG=0
+ USE_CUSTCLANG=1
+ do_lld=true
+ do_vaapi=false
+fi
+
[ ${USE_CLANG} -eq 1 ] && do_clang=true || do_clang=false
+[ ${USE_CLANG} -eq 1 ] && do_clang_plug=true || do_clang_plug=false
+[ ${USE_CUSTCLANG} -eq 1 ] && do_clang=true || do_clang=false
+[ ${USE_CUSTCLANG} -eq 1 ] && do_clang_plug=false || do_clang_plug=false
[ ${USE_CDM} -eq 1 ] && do_cdm=true || do_cdm=false
[ ${USE_HOTWORD} -eq 1 ] && do_hotword=true || do_hotword=false
[ ${USE_PA} -eq 1 ] && do_pa=true || do_pa=false
@@ -860,6 +907,7 @@
# After building gn, run:
# "./out/Release/gn args out/Release --list"
# for a list of all variables.
+#
_chromium_conf=(
'enable_hidpi=true'
"enable_platform_hevc=${do_hevc}"
@@ -873,6 +921,7 @@
'fatal_linker_warnings=false'
"ffmpeg_branding=\"${FFMPEG_BRANDING}\""
"is_clang=${do_clang}"
+ "clang_use_chrome_plugins=${do_clang_plug}"
'is_debug=false'
"is_component_build=${SHARED_FFMPEG}"
"is_component_ffmpeg=${SHARED_FFMPEG}"
@@ -896,22 +945,30 @@
'use_custom_libcxx=true'
'use_gconf=false'
'use_kerberos=false'
- 'use_lld=true'
+ 'use_lld=${do_lld}'
'use_ozone=true'
"use_pulseaudio=${do_pa}"
"use_sysroot=${do_sysroot}"
- 'use_vaapi=true'
+ "use_vaapi=${do_vaapi}"
"use_xkbcommon=${do_wayland}"
"extra_cxxflags=\"${CXXFLAGS}\""
"extra_ldflags=\"${LDFLAGS}\""
)
+
+# Set base path for clang when
+# custom clang is enabled
+if [ "$USE_CUSTCLANG" = "1" ]; then
+ _chromium_conf+=(
+ "clang_base_path=\"${CLANG_BASE_PATH}\""
+ )
+fi
+
if [ ${USE_UNGOOGLED} -ne 0 ]; then
# Add ungoogled flags if requested:
readarray -t -O ${#_chromium_conf[@]} _chromium_conf < ${UGDIR}/flags.gn
else
# Add remainder of standard chromium flags:
_chromium_conf+=(
- "clang_use_chrome_plugins=${do_clang}"
'enable_hangout_services_extension=true'
"enable_hotwording=${do_hotword}"
'enable_js_type_check=true'
@@ -924,6 +981,7 @@
'logging_like_official_build=true'
)
fi
+
# Add Google API key if defined:
if [ -n "$_google_api_key" ]; then
_chromium_conf+=(
@@ -938,6 +996,8 @@
if [ "$ARCH" == "i586" ] || [ "${CROSS32}" = "YES" ]; then
_chromium_conf=("${_chromium_conf[@]}" 'target_cpu="x86"')
+elif [[ "$ARCH" =~ arm.* ]]; then
+ _chromium_conf=("${_chromium_conf[@]}" 'target_cpu="arm"')
fi
# Change this back when CRBUG 592268 is fixed (error during final link:
@@ -1027,13 +1087,23 @@
# Take care of Debian/Ubuntu related linker issues:
echo "/usr/lib/${SYSROOT_TARGET}-linux-gnu/nss" >> \
build/linux/${SYSROOTDIR}/etc/ld.so.conf.d/${SYSROOT_TARGET}-linux-gnu.conf
- ln -s libsqlite3.so.0 \
- build/linux/${SYSROOTDIR}/usr/lib/${SYSROOT_TARGET}-linux-gnu/libsqlite3.so
+ #ln -s libsqlite3.so.0 \
+ # build/linux/${SYSROOTDIR}/usr/lib/${SYSROOT_TARGET}-linux-gnueabihf/libsqlite3.so
+
+ case "$ARCH" in
+ arm*) ln -s libsqlite3.so.0 \
+ build/linux/${SYSROOTDIR}/usr/lib/${SYSROOT_TARGET}-linux-gnueabihf/libsqlite3.so
+ ;;
+ *) ln -s libsqlite3.so.0 \
+ build/linux/${SYSROOTDIR}/usr/lib/${SYSROOT_TARGET}-linux-gnu/libsqlite3.so
+ ;;
+ esac
fi
# Do not make the build fail on stripping chromedriver,
# because Chromium installs a 64bit version of eu-strip on the 32bit OS:
-if [ "$ARCH" == "i586" ]; then
+#if [ "$ARCH" == "i586" ]; then
+if [[ "$ARCH" =~ arm.* ]] || [ "$ARCH" == "i586" ]; then
if ! file $TMP/tmp-$PRGNAM/${SRCNAM}-${VERSION}/buildtools/third_party/eu-strip/bin/eu-strip 2>/dev/null | grep -q "ELF 32-bit" ; then
install -D -m0755 -t $TMP/tmp-$PRGNAM/${SRCNAM}-${VERSION}/buildtools/third_party/eu-strip/bin /usr/bin/eu-strip
fi
@@ -1062,11 +1132,15 @@
--without-fuchsia \
2>&1 | tee $OUTPUT/clang_build-${PRGNAM}.log
#--llvm-force-head-revision \
-fi
-# Ensure that only this new clang is used, ignoring the system version:
-MYCLANG_PATH="$TMP/tmp-$PRGNAM/${SRCNAM}-${VERSION}/third_party/llvm-build/Release+Asserts/bin"
-export PATH="$MYCLANG_PATH:$PATH"
+ # Ensure that only this new clang is used, ignoring the system version:
+ MYCLANG_PATH="$TMP/tmp-$PRGNAM/${SRCNAM}-${VERSION}/third_party/llvm-build/Release+Asserts/bin"
+ export PATH="$MYCLANG_PATH:$PATH"
+elif [ "$USE_CUSTCLANG" = "1" ]; then
+ # Ensure correct path for custom clang version:
+ MYCLANG_PATH="${CLANG_BASE_PATH}/bin"
+ export PATH="$MYCLANG_PATH:$PATH"
+fi
# For Chromium 92, disable ffmpeg re-configuration on 32bit OS to avoid linking errors like:
# "FAILED: v8_context_snapshot_generator - ld.lld: error: undefined symbol: ff_psdsp_init_x86"
@@ -1106,14 +1180,20 @@
echo "-- Bootstrapping 'gn'."
# Symlink ld to lld to make gn linking stage succeed:
-cd $MYCLANG_PATH ; ln -s lld ld ; cd - 1>/dev/null
+#if [ "$USE_CLANG" = "1" ]; then
+if [ "$USE_CLANG" = "1" ] || [ "$USE_CUSTCLANG" = "1" ]; then
+ cd $MYCLANG_PATH ; ln -s lld ld ; cd - 1>/dev/null
+fi
LDFLAGS="$LDFLAGS" python3 tools/gn/bootstrap/bootstrap.py \
2>&1 | tee $OUTPUT/gyp-${PRGNAM}.log
#--use-custom-libcxx \
# Remove symlink again:
-rm $MYCLANG_PATH/ld
+#if [ "$USE_CLANG" = "1" ]; then
+if [ "$USE_CLANG" = "1" ] || [ "$USE_CUSTCLANG" = "1" ]; then
+ rm $MYCLANG_PATH/ld
+fi
echo "-- Generating ninja build files."
out/Release/gn gen out/Release -v --args="${_chromium_conf[*]}" \
@@ -1122,7 +1202,8 @@
# Compile everything:
echo "-- Compiling the lot."
-if [ "$USE_CLANG" = "1" ]; then
+#if [ "$USE_CLANG" = "1" ]; then
+if [ "$USE_CLANG" = "1" ] || [ "$USE_CUSTCLANG" = "1" ]; then
# Use the clang that we build in-tree instead of using the system version:
export CC="$MYCLANG_PATH/clang"
export CXX="$MYCLANG_PATH/clang++"
|
|
|
08-23-2021, 02:34 PM
|
#27
|
Member
Registered: Aug 2021
Location: Sweden
Distribution: Slackware
Posts: 123
Original Poster
Rep:
|
No...i should not have said hallo before crossing the river...
I ran in to two errors:
1.
Code:
[10844/49671] CXX obj/third_party/swiftshader/src/OpenGL/libGLESv2/swiftshader_libGLESv2_static/Program.o
[10845/49671] CXX obj/third_party/swiftshader/src/OpenGL/libGLESv2/swiftshader_libGLESv2/entry_points.o
[10846/49671] SOLINK swiftshader/libEGL.so
FAILED: swiftshader/libEGL.so swiftshader/libEGL.so.TOC
python3 "../../build/toolchain/gcc_solink_wrapper.py" --readelf="arm-linux-gnueabihf-readelf" --nm="../../../../../../opt/llvm/bin/llvm-nm" --sofile="swiftshader/li>
Traceback (most recent call last):
File "/tmp/build/tmp-chromium/chromium-92.0.4515.159/out/Release/../../build/toolchain/gcc_solink_wrapper.py", line 198, in <module>
sys.exit(main())
File "/tmp/build/tmp-chromium/chromium-92.0.4515.159/out/Release/../../build/toolchain/gcc_solink_wrapper.py", line 176, in main
result, toc = CollectTOC(args)
File "/tmp/build/tmp-chromium/chromium-92.0.4515.159/out/Release/../../build/toolchain/gcc_solink_wrapper.py", line 50, in CollectTOC
result, toc = CollectSONAME(args)
File "/tmp/build/tmp-chromium/chromium-92.0.4515.159/out/Release/../../build/toolchain/gcc_solink_wrapper.py", line 25, in CollectSONAME
readelf = subprocess.Popen(wrapper_utils.CommandToRun(
File "/usr/lib/python3.9/subprocess.py", line 951, in __init__
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.9/subprocess.py", line 1821, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'arm-linux-gnueabihf-readelf'
[10847/49671] CXX obj/third_party/swiftshader/src/OpenGL/libGLESv2/swiftshader_libGLESv2_static/Renderbuffer.o
[10848/49671] CXX obj/third_party/swiftshader/src/OpenGL/libGLESv2/swiftshader_libGLESv2_static/libGLESv2.o
[10849/49671] CXX obj/third_party/swiftshader/src/OpenGL/libGLESv2/swiftshader_libGLESv2_static/Shader.o
[10850/49671] CXX obj/third_party/swiftshader/src/OpenGL/libGLESv2/swiftshader_libGLESv2_static/ResourceManager.o
[10851/49671] CC obj/third_party/sqlite/chromium_sqlite3/sqlite3_shim.o
ninja: build stopped: subcommand failed.
ninja: Entering directory `out/Release'
[1/1176] STAMP obj/third_party/zlib/zlib_common_headers.stamp
[2/1176] CC obj/third_party/zlib/zlib/uncompr.o
2.
Code:
[612/1176] CXX obj/base/base/pooled_sequenced_task_runner.o
[613/1176] CXX obj/base/base/message_pump_default.o
[614/1176] CXX obj/base/base/message_pump_glib.o
FAILED: obj/base/base/message_pump_glib.o
../../../../../../opt/llvm/bin/clang++ -MMD -MF obj/base/base/message_pump_glib.o.d -DPA_PCSCAN_STACK_SUPPORTED -DUSE_SYMBOLIZE -DUSE_UDEV -DUSE_AURA=1 -DUSE_GLIB=1 >
In file included from ../../base/message_loop/message_pump_glib.cc:8:
In file included from ../../build/linux/debian_sid_arm-sysroot/usr/include/glib-2.0/glib.h:30:
In file included from ../../build/linux/debian_sid_arm-sysroot/usr/include/glib-2.0/glib/galloca.h:32:
../../build/linux/debian_sid_arm-sysroot/usr/include/glib-2.0/glib/gtypes.h:32:10: fatal error: 'glibconfig.h' file not found
#include <glibconfig.h>
^~~~~~~~~~~~~~
1 error generated.
[615/1176] CXX obj/base/base/pooled_parallel_task_runner.o
[616/1176] CXX obj/base/base/timer_slack.o
[617/1176] CXX obj/base/base/job_task_source.o
[618/1176] CXX obj/base/base/pooled_single_thread_task_runner_manager.o
[619/1176] CXX obj/base/base/work_id_provider.o
ninja: build stopped: subcommand failed.
Maybe should try running llvm-13.0.0 as google is using?
If i havent messed up some flags somewhere...i donno?
Well, i guess iŽll have to set it to compile... =)
|
|
|
08-24-2021, 05:07 PM
|
#28
|
Member
Registered: Aug 2021
Location: Sweden
Distribution: Slackware
Posts: 123
Original Poster
Rep:
|
Quote:
Originally Posted by Minime_2003
No...i should not have said hallo before crossing the river...
I ran in to two errors:
1.
Code:
[10844/49671] CXX obj/third_party/swiftshader/src/OpenGL/libGLESv2/swiftshader_libGLESv2_static/Program.o
[10845/49671] CXX obj/third_party/swiftshader/src/OpenGL/libGLESv2/swiftshader_libGLESv2/entry_points.o
[10846/49671] SOLINK swiftshader/libEGL.so
FAILED: swiftshader/libEGL.so swiftshader/libEGL.so.TOC
python3 "../../build/toolchain/gcc_solink_wrapper.py" --readelf="arm-linux-gnueabihf-readelf" --nm="../../../../../../opt/llvm/bin/llvm-nm" --sofile="swiftshader/li>
Traceback (most recent call last):
File "/tmp/build/tmp-chromium/chromium-92.0.4515.159/out/Release/../../build/toolchain/gcc_solink_wrapper.py", line 198, in <module>
sys.exit(main())
File "/tmp/build/tmp-chromium/chromium-92.0.4515.159/out/Release/../../build/toolchain/gcc_solink_wrapper.py", line 176, in main
result, toc = CollectTOC(args)
File "/tmp/build/tmp-chromium/chromium-92.0.4515.159/out/Release/../../build/toolchain/gcc_solink_wrapper.py", line 50, in CollectTOC
result, toc = CollectSONAME(args)
File "/tmp/build/tmp-chromium/chromium-92.0.4515.159/out/Release/../../build/toolchain/gcc_solink_wrapper.py", line 25, in CollectSONAME
readelf = subprocess.Popen(wrapper_utils.CommandToRun(
File "/usr/lib/python3.9/subprocess.py", line 951, in __init__
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.9/subprocess.py", line 1821, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'arm-linux-gnueabihf-readelf'
[10847/49671] CXX obj/third_party/swiftshader/src/OpenGL/libGLESv2/swiftshader_libGLESv2_static/Renderbuffer.o
[10848/49671] CXX obj/third_party/swiftshader/src/OpenGL/libGLESv2/swiftshader_libGLESv2_static/libGLESv2.o
[10849/49671] CXX obj/third_party/swiftshader/src/OpenGL/libGLESv2/swiftshader_libGLESv2_static/Shader.o
[10850/49671] CXX obj/third_party/swiftshader/src/OpenGL/libGLESv2/swiftshader_libGLESv2_static/ResourceManager.o
[10851/49671] CC obj/third_party/sqlite/chromium_sqlite3/sqlite3_shim.o
ninja: build stopped: subcommand failed.
ninja: Entering directory `out/Release'
[1/1176] STAMP obj/third_party/zlib/zlib_common_headers.stamp
[2/1176] CC obj/third_party/zlib/zlib/uncompr.o
|
Found a patch " chromium-swiftshader-export.patch".
Might resolve the first error?
I am trying it out anyhow to see if this might hopfully resolve the Error " FAILED: swiftshader/libEGL.so swiftshader/libEGL.so.TOC".
|
|
|
08-24-2021, 06:10 PM
|
#29
|
Slackware Contributor
Registered: Sep 2005
Location: Eindhoven, The Netherlands
Distribution: Slackware
Posts: 8,559
|
Quote:
Originally Posted by Minime_2003
Ex. if one uses x86_64 the script downloads googles prebuilt llvm/clang binaries to compile chromium.
If you use i686 the script downloads googles llvm/clang source code and compiles it with gcc i think, then after it has compiled llvm/clang it
switches to googles llvm/clang to compile chromium.
|
Incorrect. My script will always compile llvm/clang from downloaded sources, even if the host is a x64_64 system (using the system gcc), then compiles Chromium using the freshly compiled clang.
|
|
2 members found this post helpful.
|
08-24-2021, 07:46 PM
|
#30
|
Member
Registered: Aug 2021
Location: Sweden
Distribution: Slackware
Posts: 123
Original Poster
Rep:
|
Quote:
Originally Posted by Alien Bob
Incorrect. My script will always compile llvm/clang from downloaded sources, even if the host is a x64_64 system (using the system gcc), then compiles Chromium using the freshly compiled clang.
|
Oh, sorry i guess i stand corrected.
Thanks for the information and clarification.
|
|
|
All times are GMT -5. The time now is 01:12 PM.
|
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.
|
Latest Threads
LQ News
|
|