Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 636758 - www-client/chromium-62.0.3202.75: install fails on arm64
Summary: www-client/chromium-62.0.3202.75: install fails on arm64
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Chromium Project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-11-07 02:20 UTC by Alexey Korepanov
Modified: 2018-01-17 13:26 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge --info (emerge.info,5.49 KB, text/plain)
2017-11-07 02:20 UTC, Alexey Korepanov
Details
emerge -pqv (emerge.pqv,440 bytes, text/plain)
2017-11-07 02:21 UTC, Alexey Korepanov
Details
tail -1000 build.log (build.log.1000,151.89 KB, text/plain)
2017-11-07 02:24 UTC, Alexey Korepanov
Details
tail -500 build.log (build.log.500,131.91 KB, text/plain)
2017-11-07 08:46 UTC, Alexey Korepanov
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alexey Korepanov 2017-11-07 02:20:57 UTC
Created attachment 502890 [details]
emerge --info

I managed to compile chromium-62.0.3202.75 on a low end arm64 machine, but it failed to install with
/usr/bin/install: cannot stat 'out/Release/swiftshader/*.so': No such file or directory
!!! doins: out/Release/swiftshader/*.so does not exist

After I deleted the corresponding lines in the ebuild, the install proceeded fine, and chromium works.
Comment 1 Alexey Korepanov 2017-11-07 02:21:44 UTC
Created attachment 502892 [details]
emerge -pqv
Comment 2 Alexey Korepanov 2017-11-07 02:24:25 UTC
Created attachment 502894 [details]
tail -1000 build.log
Comment 3 Alexey Korepanov 2017-11-07 08:46:36 UTC
Created attachment 502902 [details]
tail -500 build.log
Comment 4 Marcus Comstedt 2018-01-12 18:54:17 UTC
Also affects chromium-63.  Probably chromium-64 and chromium-65 as well (they have the same line in their ebuilds).
Comment 5 Alexey Korepanov 2018-01-12 19:06:52 UTC
What about a fix like this:

local ss_f
for ss_f in out/Release/swiftshader/*.so; do
	if [ -f "${ss_f}" ]; then
		insinto "${CHROMIUM_HOME}/swiftshader"
		doins "${ss_f}"
	fi
done
Comment 6 Mike Gilbert gentoo-dev 2018-01-12 19:18:45 UTC
Does the out/Release/swiftshader directory exist after the src_compile phase when you build for arm64?

I'm thinking of adding the following:

if [[ -d out/Release/swiftshader ]]; then
    insinto "${CHROMIUM_HOME}/swiftshader"
    doins out/Release/swiftshader/*.so
fi

In other words, if the swiftshader directory does not exist, skip installing those files.

If that wont work then the code from comment 5 would be my next choice.
Comment 7 Alexey Korepanov 2018-01-12 19:22:42 UTC
I think that 

if [[ -d out/Release/swiftshader ]]; then
    insinto "${CHROMIUM_HOME}/swiftshader"
    doins out/Release/swiftshader/*.so
fi

is not good enough: if the directory exists but has no *.so files, it will fail
Comment 8 Mike Gilbert gentoo-dev 2018-01-12 19:32:18 UTC
(In reply to Alexey Korepanov from comment #7)

That's why I asked you to check if the directory exists or not. I suspect it does not.
Comment 9 Alexey Korepanov 2018-01-12 19:36:41 UTC
ok, I will run the compilation soon. This may take a few days or weeks, so if anybody can do it quicker, let us know.
Comment 10 Larry the Git Cow gentoo-dev 2018-01-12 19:43:10 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a4209ad7aa7c3334cf47a76feb89609358b09369

commit a4209ad7aa7c3334cf47a76feb89609358b09369
Author:     Mike Gilbert <floppym@gentoo.org>
AuthorDate: 2018-01-12 19:42:50 +0000
Commit:     Mike Gilbert <floppym@gentoo.org>
CommitDate: 2018-01-12 19:42:50 +0000

    www-client/chromium: skip swiftshader install if it wasn't built
    
    Bug: https://bugs.gentoo.org/636758
    Package-Manager: Portage-2.3.19_p11, Repoman-2.3.6_p45

 www-client/chromium/chromium-63.0.3239.108.ebuild | 6 ++++--
 www-client/chromium/chromium-64.0.3282.71.ebuild  | 6 ++++--
 www-client/chromium/chromium-65.0.3298.3.ebuild   | 6 ++++--
 3 files changed, 12 insertions(+), 6 deletions(-)}
Comment 11 Mike Gilbert gentoo-dev 2018-01-12 19:44:08 UTC
I'm going to optimistically assume the directory does not exist. If this change doesn't fix the problem for you, please let me know.
Comment 12 Alexey Korepanov 2018-01-12 20:12:02 UTC
thank you! I will test.
Comment 13 Marcus Comstedt 2018-01-13 11:23:13 UTC
Hi.

While waiting for the OP, I did a test build of the patched chromium-63.0.3239.108.ebuild on my Jetson TX2.  It built and installed ok.

Here are the contents of the out/Release directory:

momoka / # ls /var/tmp/portage/www-client/chromium-63.0.3239.108/work/chromium-63.0.3239.108/out/Release/
angledata                               libVkLayer_threading.so
args.gn                                 libVkLayer_threading.so.TOC
brotli                                  libVkLayer_unique_objects.so
build.ninja                             libVkLayer_unique_objects.so.TOC
build.ninja.d                           locales
character_data_generator                mksnapshot
chrome                                  mus_app_resources_100.pak
chrome-wrapper                          mus_app_resources_100.pak.info
chrome_100_percent.pak                  mus_app_resources_200.pak
chrome_100_percent.pak.info             mus_app_resources_200.pak.info
chrome_200_percent.pak                  mus_app_resources_strings.pak
chrome_200_percent.pak.info             mus_app_resources_strings.pak.info
chrome_sandbox                          natives_blob.bin
chromedriver                            obj
flatc                                   product_logo_48.png
font_service.service                    proto_zero_plugin
gen                                     protoc
gn                                      pyproto
headless_lib.pak                        resources
headless_lib.pak.info                   resources.pak
keyboard_resources.pak                  resources.pak.info
libEGL.so                               snapshot_blob.bin
libEGL.so.TOC                           test_ime_driver.service
libGLESv2.so                            toolchain.ninja
libGLESv2.so.TOC                        transport_security_state_generator
libVkLayer_core_validation.so           ui.service
libVkLayer_core_validation.so.TOC       v8_build_config.json
libVkLayer_object_tracker.so            v8_context_snapshot.bin
libVkLayer_object_tracker.so.TOC        v8_context_snapshot_generator
libVkLayer_parameter_validation.so      views_mus_resources.pak
libVkLayer_parameter_validation.so.TOC  views_mus_resources.pak.info
libVkLayer_swapchain.so                 xdg-mime
libVkLayer_swapchain.so.TOC             xdg-settings
momoka / # 

Thanks!
Comment 14 Alexey Korepanov 2018-01-17 13:26:10 UTC
I confirm that the fix works, at least with chromium-63.0.3239.132.