LinuxQuestions.org
Share your knowledge at the LQ Wiki.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware > Slackware - ARM
User Name
Password
Slackware - ARM This forum is for the discussion of Slackware ARM.

Notices


Reply
  Search this Thread
Old 08-21-2021, 07:17 AM   #16
Minime_2003
Member
 
Registered: Aug 2021
Location: Sweden
Distribution: Slackware
Posts: 123

Original Poster
Rep: Reputation: 40

Quote:
Originally Posted by glorsplitz View Post
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 07:27 AM.
 
2 members found this post helpful.
Old 08-21-2021, 07:27 AM   #17
Minime_2003
Member
 
Registered: Aug 2021
Location: Sweden
Distribution: Slackware
Posts: 123

Original Poster
Rep: Reputation: 40
Quote:
Originally Posted by Exaga View Post
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 03:46 PM.
 
1 members found this post helpful.
Old 08-21-2021, 09:40 PM   #18
glorsplitz
Senior Member
 
Registered: Dec 2002
Distribution: slackware!
Posts: 1,314

Rep: Reputation: 368Reputation: 368Reputation: 368Reputation: 368
@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
 
Old 08-22-2021, 09:37 AM   #19
Minime_2003
Member
 
Registered: Aug 2021
Location: Sweden
Distribution: Slackware
Posts: 123

Original Poster
Rep: Reputation: 40
Quote:
Originally Posted by glorsplitz View Post
@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.
 
Old 08-22-2021, 12:10 PM   #20
glorsplitz
Senior Member
 
Registered: Dec 2002
Distribution: slackware!
Posts: 1,314

Rep: Reputation: 368Reputation: 368Reputation: 368Reputation: 368
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
 
Old 08-22-2021, 02:35 PM   #21
BrunoLafleur
Member
 
Registered: Apr 2020
Location: France
Distribution: Slackware
Posts: 409

Rep: Reputation: 369Reputation: 369Reputation: 369Reputation: 369
Quote:
Originally Posted by glorsplitz View Post
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.
Old 08-22-2021, 03:43 PM   #22
glorsplitz
Senior Member
 
Registered: Dec 2002
Distribution: slackware!
Posts: 1,314

Rep: Reputation: 368Reputation: 368Reputation: 368Reputation: 368
chromium is working fine for me, thank you very much for providing what was needed.
 
Old 08-22-2021, 03:47 PM   #23
Minime_2003
Member
 
Registered: Aug 2021
Location: Sweden
Distribution: Slackware
Posts: 123

Original Poster
Rep: Reputation: 40
Quote:
Originally Posted by glorsplitz View Post
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 03:48 PM.
 
Old 08-22-2021, 07:15 PM   #24
glorsplitz
Senior Member
 
Registered: Dec 2002
Distribution: slackware!
Posts: 1,314

Rep: Reputation: 368Reputation: 368Reputation: 368Reputation: 368
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 07:16 PM.
 
Old 08-23-2021, 03:10 AM   #25
BrunoLafleur
Member
 
Registered: Apr 2020
Location: France
Distribution: Slackware
Posts: 409

Rep: Reputation: 369Reputation: 369Reputation: 369Reputation: 369
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.
Old 08-23-2021, 01:04 PM   #26
Minime_2003
Member
 
Registered: Aug 2021
Location: Sweden
Distribution: Slackware
Posts: 123

Original Poster
Rep: Reputation: 40
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++"
 
Old 08-23-2021, 01:34 PM   #27
Minime_2003
Member
 
Registered: Aug 2021
Location: Sweden
Distribution: Slackware
Posts: 123

Original Poster
Rep: Reputation: 40
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... =)
 
Old 08-24-2021, 04:07 PM   #28
Minime_2003
Member
 
Registered: Aug 2021
Location: Sweden
Distribution: Slackware
Posts: 123

Original Poster
Rep: Reputation: 40
Quote:
Originally Posted by Minime_2003 View Post
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".
 
Old 08-24-2021, 05:10 PM   #29
Alien Bob
Slackware Contributor
 
Registered: Sep 2005
Location: Eindhoven, The Netherlands
Distribution: Slackware
Posts: 8,559

Rep: Reputation: 8106Reputation: 8106Reputation: 8106Reputation: 8106Reputation: 8106Reputation: 8106Reputation: 8106Reputation: 8106Reputation: 8106Reputation: 8106Reputation: 8106
Quote:
Originally Posted by Minime_2003 View Post
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.
Old 08-24-2021, 06:46 PM   #30
Minime_2003
Member
 
Registered: Aug 2021
Location: Sweden
Distribution: Slackware
Posts: 123

Original Poster
Rep: Reputation: 40
Quote:
Originally Posted by Alien Bob View Post
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.
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
[Double post]Problem compiling Chromium on a raspberry pi 4 with SARPI (SlackWare ARM-Current RPI) Minime_2003 Slackware - ARM 0 08-19-2021 06:54 PM
Pure Alsa Ungoogled Chromium fcv623 Slackware 11 06-17-2020 02:56 PM
[SOLVED] Sarpi / Raspberry (RPi 3) - sound issue under 5.4.18-v7-arm eduardr Slackware - ARM 11 02-28-2020 04:12 AM
[SOLVED] Sarpi / Raspberry (RPi 3) - touchscreen input not working since kernel 5.4.x eduardr Slackware - ARM 9 02-13-2020 12:08 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware > Slackware - ARM

All times are GMT -5. The time now is 02:01 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration