Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 911715 - dev-qt/qtwebengine-5.15.10_p20230623 and dev-qt/qtwebengine-6.5.2 - ninja: error: Filename too long
Summary: dev-qt/qtwebengine-5.15.10_p20230623 and dev-qt/qtwebengine-6.5.2 - ninja: er...
Status: UNCONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Qt Bug Alias
URL: https://bugreports.qt.io/browse/QTBUG...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-08-04 16:53 UTC by Martin Mokrejš
Modified: 2023-08-08 16:51 UTC (History)
1 user (show)

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


Attachments
build.log (build.log,364.69 KB, text/plain)
2023-08-04 16:54 UTC, Martin Mokrejš
Details
qtwebengine-5.15.10_p20230623-filename-too-long.patch (qtwebengine-5.15.10_p20230623-filename-too-long.patch,886 bytes, patch)
2023-08-08 14:11 UTC, Martin Mokrejš
Details | Diff
qtwebengine-6.5.2-filename-too-long.patch (qtwebengine-6.5.2-filename-too-long.patch,888 bytes, patch)
2023-08-08 14:12 UTC, Martin Mokrejš
Details | Diff
qtwebengine-6.5.2-filename-too-long__build.log.bz2 (qtwebengine-6.5.2-filename-too-long__build.log.bz2,149.20 KB, application/octet-stream)
2023-08-08 14:17 UTC, Martin Mokrejš
Details
qtwebengine-5.15.10_p20230623-filename-too-long__build.log.bz2 (qtwebengine-5.15.10_p20230623-filename-too-long__build.log.bz2,25.29 KB, application/octet-stream)
2023-08-08 14:19 UTC, Martin Mokrejš
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Mokrejš 2023-08-04 16:53:05 UTC
On Gentoo::Prefix I have rather long $EPREFIX path. Some build system is brave and uses the full path to derive a filename, so it ends up with an
Error: Filename too long.


[667/24160] touch obj/components/download/public/common/interfaces__generate_message_ids.stamp
[668/24160] /auto/vestec1-elixir/projects/biocev/gentoo/var/tmp/portage/dev-qt/qtwebengine-5.15.10_p20230623/temp/python3.11/bin/python ../../../../qtwebengine-5.15.10_p20230623/src/3rdparty/chromium/mojo/public/tools/bindings/mojom_bindings_generator.py --use_bundled_pylibs -o gen generate -d ../../../../qtwebengine-5.15.10_p20230623/src/3rdparty/chromium/ -I ../../../../qtwebengine-5.15.10_p20230623/src/3rdparty/chromium/ --bytecode_path gen/mojo/public/tools/bindings --export_attribute COMPONENTS_DOWNLOAD_EXPORT --export_header components/download/public/common/download_export.h --filelist=__components_download_public_common_interfaces__generator__auto_vestec1-elixir_projects_biocev_gentoo_var_tmp_portage_dev-qt_qtwebengine-5.15.10_p20230623_work_qtwebengine-5.15.10_p20230623_build_src_toolchain_target__rule..rsp -g c++ --typemap gen/components/download/public/common/interfaces__type_mappings --scrambled_message_id_salt_path ../../../../qtwebengine-5.15.10_p20230623/src/3rdparty/chromium/chrome/VERSION
[669/24160] touch obj/components/download/public/common/interfaces__generator.stamp
[670/24160] /auto/vestec1-elixir/projects/biocev/gentoo/var/tmp/portage/dev-qt/qtwebengine-5.15.10_p20230623/temp/python3.11/bin/python ../../../../qtwebengine-5.15.10_p20230623/src/3rdparty/chromium/mojo/public/tools/bindings/mojom_bindings_generator.py --use_bundled_pylibs -o gen generate -d ../../../../qtwebengine-5.15.10_p20230623/src/3rdparty/chromium/ -I ../../../../qtwebengine-5.15.10_p20230623/src/3rdparty/chromium/ --bytecode_path gen/mojo/public/tools/bindings --filelist=__components_download_public_common_interfaces_shared__generator__auto_vestec1-elixir_projects_biocev_gentoo_var_tmp_portage_dev-qt_qtwebengine-5.15.10_p20230623_work_qtwebengine-5.15.10_p20230623_build_src_toolchain_target__rule..rsp --generate_non_variant_code -g c++ --export_attribute COMPONENT_EXPORT\(MOJOM_SHARED_COMPONENTS_DOWNLOAD_EXPORT\) --export_header base/component_export.h
[671/24160] touch obj/components/download/public/common/interfaces_shared__generator.stamp
[672/24160] /auto/vestec1-elixir/projects/biocev/gentoo/var/tmp/portage/dev-qt/qtwebengine-5.15.10_p20230623/temp/python3.11/bin/python ../../../../qtwebengine-5.15.10_p20230623/src/3rdparty/chromium/mojo/public/tools/bindings/mojom_bindings_generator.py --use_bundled_pylibs -o gen generate -d ../../../../qtwebengine-5.15.10_p20230623/src/3rdparty/chromium/ -I ../../../../qtwebengine-5.15.10_p20230623/src/3rdparty/chromium/ --bytecode_path gen/mojo/public/tools/bindings --filelist=__components_media_router_common_mojom_logger_js__generator__auto_vestec1-elixir_projects_biocev_gentoo_var_tmp_portage_dev-qt_qtwebengine-5.15.10_p20230623_work_qtwebengine-5.15.10_p20230623_build_src_toolchain_target__rule..rsp -g javascript --js_bindings_mode=new --scrambled_message_id_salt_path ../../../../qtwebengine-5.15.10_p20230623/src/3rdparty/chromium/chrome/VERSION
[673/24160] touch obj/components/media_router/common/mojom/logger_js__generator.stamp
ninja: error: WriteFile(__components_metrics_public_mojom_single_sample_metrics_mojo_bindings__generate_message_ids__auto_vestec1-elixir_projects_biocev_gentoo_var_tmp_portage_dev-qt_qtwebengine-5.15.10_p20230623_work_qtwebengine-5.15.10_p20230623_build_src_toolchain_target__rule..rsp): Unable to create file. File name too long
ninja: build stopped: .
make[3]: *** [Makefile.gn_run:377: run_ninja] Error 1
make[3]: Leaving directory '/auto/vestec1-elixir/projects/biocev/gentoo/var/tmp/portage/dev-qt/qtwebengine-5.15.10_p20230623/work/qtwebengine-5.15.10_p20230623_build/src/core'
make[2]: *** [Makefile:82: sub-gn_run-pro-make_first] Error 2
make[2]: Leaving directory '/auto/vestec1-elixir/projects/biocev/gentoo/var/tmp/portage/dev-qt/qtwebengine-5.15.10_p20230623/work/qtwebengine-5.15.10_p20230623_build/src/core'
make[1]: *** [Makefile:78: sub-core-make_first] Error 2
make[1]: Leaving directory '/auto/vestec1-elixir/projects/biocev/gentoo/var/tmp/portage/dev-qt/qtwebengine-5.15.10_p20230623/work/qtwebengine-5.15.10_p20230623_build/src'
make: *** [Makefile:49: sub-src-make_first] Error 2
 * ERROR: dev-qt/qtwebengine-5.15.10_p20230623::gentoo failed (compile phase):
 *   emake failed
 * 
 * If you need support, post the output of `emerge --info '=dev-qt/qtwebengine-5.15.10_p20230623::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=dev-qt/qtwebengine-5.15.10_p20230623::gentoo'`.
 * The complete build log is located at '/auto/vestec1-elixir/projects/biocev/gentoo/var/tmp/portage/dev-qt/qtwebengine-5.15.10_p20230623/temp/build.log'.
 * The ebuild environment file is located at '/auto/vestec1-elixir/projects/biocev/gentoo/var/tmp/portage/dev-qt/qtwebengine-5.15.10_p20230623/temp/environment'.
 * Working directory: '/auto/vestec1-elixir/projects/biocev/gentoo/var/tmp/portage/dev-qt/qtwebengine-5.15.10_p20230623/work/qtwebengine-5.15.10_p20230623_build'
 * S: '/auto/vestec1-elixir/projects/biocev/gentoo/var/tmp/portage/dev-qt/qtwebengine-5.15.10_p20230623/work/qtwebengine-5.15.10_p20230623'



$ emerge --info '=dev-qt/qtwebengine-5.15.10_p20230623::gentoo'
Portage 3.0.49 (python 3.11.4-final-0, default/linux/amd64/17.1/no-multilib/prefix/kernel-3.2+, gcc-13, glibc-2.37-r4, 5.10.0-13-amd64 x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-5.10.0-13-amd64-x86_64-Intel-R-_Xeon-R-_Platinum_8260_CPU_@_2.40GHz-with-glibc2.37
KiB Mem:  3169357408 total,2296096188 free
KiB Swap:   16383996 total,  16383996 free
Timestamp of repository gentoo: Fri, 04 Aug 2023 13:30:01 +0000
Head commit of repository gentoo: 1e49ef432d39dbb2265475d03352e3f206a2aab0
Head commit of repository jgenco: f7db3d0c0fda0da728b3a4ed2a20abdfce00d359

sh bash 5.2_p15-r6
ld GNU ld (Gentoo 2.40 p6) 2.40.0
app-misc/pax-utils:        1.3.7::gentoo
app-shells/bash:           5.2_p15-r6::gentoo
dev-java/java-config:      2.3.1-r1::gentoo
dev-lang/perl:             5.38.0-r1::gentoo
dev-lang/python:           3.11.4::gentoo, 3.12.0_beta4_p1::gentoo
dev-lang/rust:             1.71.0::gentoo
dev-lang/rust-bin:         1.71.0::gentoo
dev-util/cmake:            3.27.1::gentoo
dev-util/meson:            1.2.0::gentoo
sys-apps/baselayout:       2.14::gentoo
sys-apps/sandbox:          2.37::gentoo
sys-devel/autoconf:        2.71-r7::gentoo
sys-devel/automake:        1.16.5-r1::gentoo
sys-devel/binutils:        2.40-r7::gentoo, 2.41::gentoo
sys-devel/binutils-config: 5.5::gentoo
sys-devel/clang:           16.0.6::gentoo
sys-devel/gcc:             13.2.0::gentoo
sys-devel/gcc-config:      2.11::gentoo
sys-devel/libtool:         2.4.7-r1::gentoo
sys-devel/llvm:            16.0.6::gentoo
sys-devel/make:            4.4.1-r1::gentoo
sys-kernel/linux-headers:  6.4::gentoo (virtual/os-headers)
sys-libs/glibc:            2.37-r4::gentoo
Repositories:

gentoo
    location: /auto/vestec1-elixir/projects/biocev/gentoo/var/db/repos/gentoo
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: -1000
    volatile: True
    sync-rsync-extra-opts: 
    sync-rsync-verify-max-age: 24
    sync-rsync-verify-metamanifest: no
    sync-rsync-verify-jobs: 1

jgenco
    location: /auto/vestec1-elixir/projects/biocev/gentoo/var/db/repos/jgenco
    sync-type: git
    sync-uri: https://github.com/jgenco/jgenco-overlay
    masters: gentoo
    volatile: True

ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="@FREE dlj-1.1 sun-bcla-java-vm Oracle-BCLA-JavaSE IBM-J1.6 NPSL RAR Intel-SDP fasta vienna-rna unafold GRL MSttfEULA hplip-plugin meme mRNAmarkup ApE ICS ipw3945 finchtv modeller gmap abyss swiss-prot Aladdin AVASYS pyvcf Non-profit-OSL-3.0 estscan bcca_2010 oncotator Adobe blat staden CeCILL-1.1 phrap STRIDE cctbx-2.0 bh-luxi ARIADNE unRAR all-rights-reserved trf annovar_personal_only stampy-academic BSD-BroadInstitute UPennState freedist free-noncomm blasr sun-jlfgr FLI-Jena PSTT netperf sun-jsr67 xv vim.org OSGi-Specification-2.0 colt google-chrome ACE AFL churchill genscan no-source-code ISSL JSON MPEG-4 Apache-2.0 BSD MIT BSD-2 FSFAP unicode Subversion PSF-2.4 merlin android julius CROSSOVER-3 lha PUEL-11"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe -O2 -pipe -march=native -ftree-vectorize"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/auto/vestec1-elixir/projects/biocev/gentoo/etc /etc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/auto/vestec1-elixir/projects/biocev/gentoo/etc/env.d /etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CONFIG_SHELL="/auto/vestec1-elixir/projects/biocev/gentoo/bin/bash"
CXXFLAGS="-O2 -pipe -O2 -pipe -march=native -ftree-vectorize"
DISTDIR="/auto/vestec1-elixir/projects/biocev/gentoo/var/cache/distfiles"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GDK_PIXBUF_MODULE_FILE GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR XDG_STATE_HOME"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs binpkg-multi-instance buildpkg-live config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news nostrip parallel-fetch pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sfperms splitdebug strict unknown-features-warn unmerge-logs unmerge-orphans unprivileged"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LC_ALL="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LEX="flex"
MAKEOPTS="-j64"
PKGDIR="/auto/vestec1-elixir/projects/biocev/gentoo/var/cache/binpkgs"
PORTAGE_CONFIGROOT="/auto/vestec1-elixir/projects/biocev/gentoo/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/auto/vestec1-elixir/projects/biocev/gentoo/var/tmp"
SHELL="/auto/vestec1-elixir/projects/biocev/gentoo/bin/bash"
USE="X a52 aac acl acpi alsa amd64 amr amrenc aom apache apache2 archive armadillo asm audit av1 avx avx2 berkdb blas bluray bmp boost bz2 bzip2 cairo caps cdda cdio cdr cdrom cgi chromium cli codec2 coin cpudetection cracklib crypt cryptlib cryptsetup cups curl cxx dav1d dbus device-mapper dhcp directfb directx dri dri3 drm dvbpsi dvd dvda dxf dxva2 egl elogind emboss encode eselect-ldso exif faad fax fbcon fdk ffmpeg fftw flac fontconfig foomatic fortran gbm gcrypt gd gdal gdbm geoip geolocation georeferencer geos gimp glpk gml gmp gnutls gps grass gstreamer gtk gtk3 gui h.264 h.265 h264 h265 hal haptic hdf5 heif hevc hpijs hwdb iconv icu id3tag imaging innodb inotify iproute2 ipv6 java javafx javascript jbig jce jpeg jpeg2k jpg js jscript kdrive keymap kms ladspa lapack laptop las lcms libaom libdrm libkms libnotify librtmp libsoxr libtesseract libtirpc libv4l libxml2 live lm-sensors lm_sensors lz4 lzma mad mariadb matroska mjpeg mmal mmx modemmanager mp3 mpeg mtp mysql ncurses netcdf networkmanager nfs nls nptl nptlonly nscd nss ntfsprogs nvenc objc ocr odbc ogdi ogg openal opencl opengl openh264 openmp openssl opus parport pbs pcre pcre16 pcsc-lite pdal pdf perl php png polar polkit postgres ppds pppd prefix python qemu qml qt3support qt4 qt5 rav1e readline rendering resolvconf romio rubberband scanner seccomp server session sha slideshow smartcard sndfile sndio split-usr sqlite srt sse sse2 sse3 sse4_1 sse4_2 ssh ssl sslv3 ssse3 startup-notification suexec svg svt-av1 syslog tcl tcpd test-rust threads tiff tk tkip tools truetype twolame udev unicode unwind upnp usb v4l v4l2 vaapi vidstab vim-syntax virtualbox vmaf vnc vorbis vp8 vp9 vpx vulkan wavpack wayland webp widgets wifi x11 x264 x265 xa xcb xephyr xft xls xml xmp xorg xrandr xv xvfb xvid xvmc zip zlib zstd" ABI_X86="64" ADA_TARGET="gnat_2021" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 avx512f avx512dq avx512cd avx512bw avx512vl f16c fma3 mmx mmxext pclmul popcnt rdrand sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="libinput" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php8-1" POSTGRES_TARGETS="postgres15" PYTHON_SINGLE_TARGET="python3_11" PYTHON_TARGETS="python3_11" RUBY_TARGETS="ruby31" VIDEO_CARDS="amdgpu fbdev intel nouveau radeon radeonsi vesa dummy v4l" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq proto steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  ADDR2LINE, AR, ARFLAGS, AS, ASFLAGS, CC, CCLD, CPP, CPPFLAGS, CTARGET, CXX, CXXFILT, ELFEDIT, EMERGE_DEFAULT_OPTS, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, INSTALL_MASK, LANG, LD, LFLAGS, LIBTOOL, LINGUAS, MAKE, MAKEFLAGS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, RANLIB, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS
Comment 1 Martin Mokrejš 2023-08-04 16:54:17 UTC
Created attachment 867035 [details]
build.log
Comment 2 Martin Mokrejš 2023-08-08 14:11:37 UTC
Created attachment 867409 [details, diff]
qtwebengine-5.15.10_p20230623-filename-too-long.patch
Comment 3 Martin Mokrejš 2023-08-08 14:12:02 UTC
Created attachment 867410 [details, diff]
qtwebengine-6.5.2-filename-too-long.patch
Comment 4 Martin Mokrejš 2023-08-08 14:17:35 UTC
Created attachment 867411 [details]
qtwebengine-6.5.2-filename-too-long__build.log.bz2

I spoke too early. It applies but fails in another place.
Comment 5 Martin Mokrejš 2023-08-08 14:19:18 UTC
Created attachment 867412 [details]
qtwebengine-5.15.10_p20230623-filename-too-long__build.log.bz2

Also fails.
Comment 6 Martin Mokrejš 2023-08-08 14:42:14 UTC
>>> len('__services_data_decoder_public_mojom_mojom_resource_snapshot_for_web_bundle__parser__auto_vestec1-elixir_projects_biocev_gentoo_var_tmp_portage_dev-qt_qtwebengine-6.5.2_work_qtwebengine-everywhere-src-6.5.2_build_src_core_target_toolchain_target__rule..rsp')
256
>>> 

Is that because there are two dots before the file extension?
Comment 7 Martin Mokrejš 2023-08-08 14:43:33 UTC
BTW I am on NFSv4 filesystem:

nfs4 rw,relatime,vers=4.2,rsize=1048576,wsize=1048576,namlen=255,hard
Comment 8 Martin Mokrejš 2023-08-08 15:26:11 UTC
A workaround for me is to use a different filesystem

mkdir /dev/shm/mmokrejs; PORTAGE_TMPDIR=/dev/shm/mmokrejs emerge ${crap}


The above patch indeed works if one reserves a position for the erroneous extra dot character. So I decreased the number from 251 to 250 and now the patch work on NFS too.

BTW, it introduces a warning but luckily works:

[123/195] CXX src/gn/ninja_action_target_writer.o
../../../../qtwebengine-everywhere-src-6.5.2/src/3rdparty/gn/src/gn/ninja_action_target_writer.cc: In member function ‘std::string NinjaActionTargetWriter::WriteRuleDefinition()’:
../../../../qtwebengine-everywhere-src-6.5.2/src/3rdparty/gn/src/gn/ninja_action_target_writer.cc:130:78: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const std::__cxx11::basic_string<char>::size_type’ {aka ‘const long unsigned int’} [-Wsign-compare]
  130 |     while (rspfile.length() > 250 && (pos = rspfile.find_last_of(delimiter)) != std::string::npos)
      |                                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
Comment 9 Martin Mokrejš 2023-08-08 16:51:10 UTC
The extra dot issue is fixed by https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/495236 patch.