Fails during build of standard-reports.scm
Created attachment 651230 [details] build.log
Created attachment 651250 [details] gnucash-4,1.build.log
Fails here also.
Please amend the bug's summary line with "In procedure module-lookup: Unbound variable: _", i.e. the actual error message. That will help others to find the bug report and CC themselves, instead of creating duplicates.
I'm seeing this error on an old laptop, but a newer desktop and an even newer laptop managed to build Gnucash 4.1 just fine, even though they should all have similar configurations and are all running recently updated ~amd64 and have the same versions of dev-scheme/guile-2.2.6.
I get this error too. I tried to rebuild guile - it does not help.
The problem occurs when updating a package. If you uninstall and install again, then everything is fine.
(In reply to alexandrl from comment #7) > The problem occurs when updating a package. > If you uninstall and install again, then everything is fine. I can confirm this; weird.
Please follow the instruction in the post-error output: * If you need support, post the output of `emerge --info '=app-office/gnucash-4.1::gentoo'`, * the complete build log and the output of `emerge -pqv '=app-office/gnucash-4.1::gentoo'`. * The complete build log is located at '/var/tmp/portage/app-office/gnucash-4.1/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/app-office/gnucash-4.1/temp/environment'. * Working directory: '/var/tmp/portage/app-office/gnucash-4.1/work/gnucash-4.1_build' * S: '/var/tmp/portage/app-office/gnucash-4.1/work/gnucash-4.1' That said, I'm currently unable to reproduce this error.
Created attachment 651840 [details] build.log [ebuild U ] app-office/gnucash-4.1 [4.0] USE="gui nls postgres quotes -aqbanking -debug -doc -examples -gnome-keyring -mysql -ofx -python -register2 -smartcard -sqlite -test" PYTHON_SINGLE_TARGET="python3_7 -python3_6 -python3_8" # emerge --info '=app-office/gnucash-4.1::gentoo' Portage 3.0.1 (python 3.7.8-final-0, default/linux/amd64/17.1/hardened, gcc-10.2.0, glibc-2.31-r6, 5.7.10-gentoo x86_64) ================================================================= System Settings ================================================================= System uname: Linux-5.7.10-gentoo-x86_64-Intel-R-_Core-TM-_i7-3770K_CPU_@_3.50GHz-with-gentoo-2.7 KiB Mem: 32814572 total, 8857752 free KiB Swap: 0 total, 0 free Timestamp of repository gentoo: Fri, 31 Jul 2020 04:30:01 +0000 Head commit of repository gentoo: b56d72b1a33034be14e23854374fd236f31f8136 sh bash 5.0_p18 ld GNU ld (Gentoo 2.34 p4) 2.34.0 app-shells/bash: 5.0_p18::gentoo dev-java/java-config: 2.3.1::gentoo dev-lang/perl: 5.30.3-r1::gentoo dev-lang/python: 2.7.18-r1::gentoo, 3.6.11-r2::gentoo, 3.7.8-r2::gentoo, 3.8.5::gentoo, 3.9.0_beta5::gentoo dev-util/cmake: 3.18.0::gentoo dev-util/pkgconfig: 0.29.2::gentoo sys-apps/baselayout: 2.7::gentoo sys-apps/openrc: 0.42.1::gentoo sys-apps/sandbox: 2.20::gentoo sys-devel/autoconf: 2.13-r1::gentoo, 2.69-r5::gentoo sys-devel/automake: 1.16.2::gentoo sys-devel/binutils: 2.34-r1::gentoo sys-devel/gcc: 9.3.0::gentoo, 10.2.0::gentoo sys-devel/gcc-config: 2.3.1::gentoo sys-devel/libtool: 2.4.6-r6::gentoo sys-devel/make: 4.3::gentoo sys-kernel/linux-headers: 5.7::gentoo (virtual/os-headers) sys-libs/glibc: 2.31-r6::gentoo Repositories: gentoo location: /usr/portage sync-type: rsync sync-uri: rsync://rsync.gentoo.org/gentoo-portage priority: -1000 sync-rsync-vcs-ignore: true sync-rsync-verify-max-age: 24 sync-rsync-verify-metamanifest: yes sync-rsync-extra-opts: sync-rsync-verify-jobs: 1 fordfrog location: /usr/src/fordfrog.git masters: gentoo priority: 0 local location: /usr/local/portage masters: gentoo maven location: /usr/src/spark-overlay.git masters: gentoo priority: 1 audio-overlay location: /var/lib/layman/audio-overlay masters: gentoo priority: 50 brother-overlay location: /var/lib/layman/brother-overlay masters: gentoo priority: 50 ceamac location: /var/lib/layman/ceamac masters: gentoo priority: 50 qt location: /var/lib/layman/qt masters: gentoo priority: 50 raiagent location: /var/lib/layman/raiagent masters: gentoo priority: 50 waebbl location: /var/lib/layman/waebbl masters: gentoo raiagent priority: 50 ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="* -@EULA" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=native -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /opt/brother/scanner/brscan4/brsanenetdevice4.cfg /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/maven-bin-3.0/conf /usr/share/maven-bin-3.1/conf /usr/share/maven-bin-3.2/conf /usr/share/maven-bin-3.3/conf /usr/share/maven-bin-3.6/conf" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php7.4/ext-active/ /etc/php/cgi-php7.4/ext-active/ /etc/php/cli-php7.4/ext-active/ /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" CXXFLAGS="-march=native -O2 -pipe" DISTDIR="/usr/portage/distfiles" EMERGE_DEFAULT_OPTS="--misspell-suggestions n" ENV_UNSET="DBUS_SESSION_BUS_ADDRESS DISPLAY 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" FCFLAGS="-O2 -pipe" FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr" FFLAGS="-O2 -pipe" GENTOO_MIRRORS="http://distfiles.gentoo.org" LANG="cs_CZ.utf8" LDFLAGS="-Wl,-O1 -Wl,--as-needed" LINGUAS="cs cs_CZ en en_US en_UK" MAKEOPTS="-j9" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" 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="/var/tmp" USE="X a52 aac acl alsa amd64 aubio bzip2 cdda cddb cdr color-management colord crypt cups d3d9 dbus dia dssi dvb dvd elogind exif ffmpeg flac gegl gif gphoto2 gsm gtk gtk3 hardened hddtemp http2 ibus iconv icu id3tag ipv6 jack jack-dbus jacksession javafx jpeg ladspa lastfm latex lcms libass libnotify libproxy libsamplerate libtirpc lilypond lm-sensors lv2 mad modplug mp3 mpeg mpi mtp multilib musepack ncurses nls nptl ocr ogg opencl openexr opengl openmp opus osc pam pcre pdf pie png policykit pulseaudio qt5 raw readline rubberband samba scanner seccomp sf2 sndfile soundio speex spell split-usr ssl ssp startup-notification svg svg2 taglib theora tiff timidity tk tray truetype udev unicode usb vaapi vdpau visio vorbis vpx vst wavpack webp widevine wmf x264 x265 xattr xinerama xmp xtpax xv xvid zlib" ABI_X86="32 64" ADA_TARGET="gnat_2018" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="alias auth_basic authn_core authn_file authz_core authz_host authz_user cgi cgid deflate dir expires filter headers http2 include info log_config mime mime_magic negotiation proxy proxy_ajp rewrite setenvif socache_shmcb status unixd vhost_alias" APACHE2_MPMS="event" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx f16c mmx mmxext popcnt 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="evdev libinput synaptics wacom" KERNEL="linux" L10N="cs cs-CZ en en-US en-UK" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php7-2 php7-3" POSTGRES_TARGETS="postgres10 postgres11" PYTHON_SINGLE_TARGET="python3_7" PYTHON_TARGETS="python3_6 python3_7 python3_8 python3_9" RUBY_TARGETS="ruby25 ruby27" SANE_BACKENDS="genesys" USERLAND="GNU" VIDEO_CARDS="intel i915 i965 radeon radeonsi" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CC, CPPFLAGS, CTARGET, CXX, INSTALL_MASK, LC_ALL, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Also seeing this. GnuCash 4.0 is currently installed. Let me know if additional logs would be helpful besides those already uploaded.
I experienced the same behavior: emerging gnucash-4.1 fails when gnucash-4.0 is installed. Unmerging gnucash-4.0 and then emerging gnucash-4.1 works. chris on #gnucash pointed me to this lines: https://github.com/Gnucash/gnucash/blob/maint/bindings/guile/core-utils.scm#L49
(In reply to Giuseppe Foti from comment #12) > I experienced the same behavior: emerging gnucash-4.1 fails when gnucash-4.0 > is installed. > Unmerging gnucash-4.0 and then emerging gnucash-4.1 works. > chris on #gnucash pointed me to this lines: > https://github.com/Gnucash/gnucash/blob/maint/bindings/guile/core-utils. > scm#L49 So GnuCash uses the wrong code? It loads the version that is installed into the system instead of the one in the source directory?
(In reply to Dennis Schridde from comment #13) > (In reply to Giuseppe Foti from comment #12) > > I experienced the same behavior: emerging gnucash-4.1 fails when gnucash-4.0 > > is installed. > > Unmerging gnucash-4.0 and then emerging gnucash-4.1 works. > > chris on #gnucash pointed me to this lines: > > https://github.com/Gnucash/gnucash/blob/maint/bindings/guile/core-utils. > > scm#L49 > > So GnuCash uses the wrong code? It loads the version that is installed into > the system instead of the one in the source directory? That was my impression. Somewhere there is an incompatability. However, I couldn't see anything obvious as between the log files of the failing 'upgrade' as opposed to the successful 'new install'. As the only differences between the 4.0 and the 4.1 ebuilds relate to guile, in particular the loss of the deprecated USE flag in 4.1, I imagine that would likely impact on the upgrade experience; i.e. the problem is always present, just masked in different scenarios depending on what the user previously had configured. --- gnucash-4.0.ebuild 2020-07-21 17:10:55.142250035 +0100 +++ gnucash-4.1.ebuild 2020-07-27 11:09:28.590919457 +0100 @@ -26,12 +26,11 @@ smartcard? ( aqbanking )" # dev-libs/boost must always be built with nls enabled. -# dev-scheme/guile[deprecated] because of SCM_LIST*() use. # net-libs/aqbanking dropped gtk with v6. So, to simplify the # dependency, we just rely on that. RDEPEND=" >=dev-libs/glib-2.56.1:2 - >=dev-scheme/guile-2.2.0:12=[deprecated,regex] + >=dev-scheme/guile-2.2.0:=[regex] >=sys-libs/zlib-1.1.4 dev-libs/boost:=[icu,nls] dev-libs/icu:=
Seems to me this behavior displays either a bug in the ebuild or in the build system (Portage) itself.
(In reply to Adrian Bassett from comment #14) > As the only differences between the 4.0 and the 4.1 ebuilds relate to guile, > in particular the loss of the deprecated USE flag in 4.1, I imagine that > would likely impact on the upgrade experience; i.e. the problem is always > present, just masked in different scenarios depending on what the user > previously had configured. As a modification, I ought to add that 'deprecated' is an inherited (IUSE) flag in the guile ebuilds. As such, removing it as an explicit guile requirement for gnucash probably doesn't change anything.
I haven't been able to reproduce this issue. I just bumped GnuCash to 4.2 in the tree. Before I emerged GnuCash 4.2 on my system, I upgraded Guile to 2.2.6 and disabled the deprecated USE flag. Everything went just as it should.
(In reply to Aaron W. Swenson from comment #17) > I haven't been able to reproduce this issue. > > I just bumped GnuCash to 4.2 in the tree. > > Before I emerged GnuCash 4.2 on my system, I upgraded Guile to 2.2.6 and > disabled the deprecated USE flag. > > Everything went just as it should. Indeed, gnucash-4.2 fixes the issue. Thank you!
(In reply to Dennis Schridde from comment #18) > (In reply to Aaron W. Swenson from comment #17) > > I haven't been able to reproduce this issue. > > > > I just bumped GnuCash to 4.2 in the tree. > > > > Before I emerged GnuCash 4.2 on my system, I upgraded Guile to 2.2.6 and > > disabled the deprecated USE flag. > > > > Everything went just as it should. > > Indeed, gnucash-4.2 fixes the issue. Thank you! Thank you for following up!
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=72dbf2ec4049df11ad63576971883ee239eadb7f commit 72dbf2ec4049df11ad63576971883ee239eadb7f Author: Sam James <sam@gentoo.org> AuthorDate: 2024-12-26 09:41:40 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2024-12-26 09:55:46 +0000 app-office/gnucash: don't use installed copy of gnucash for build or tests Per https://www.gnu.org/software/guile/manual/html_node/Foreign-Libraries.html, newer guile (>= 3.0.6) will respect GUILE_EXTENSIONS_PATH when looking up paths for `dlopen` for `load-extension` -> `load-foreign-library`. Older guiles will use `LTDL_LIBRARY_PATH` instead. Without this set, the system paths are checked instead (maybe falling back to another variable if not found on the system, unclear), and we end up with build failures when we try to mix system and just-built gnucash (this is also obviously a problem for testing as well). For tests, we additionally have to do a "fake install" in ${BUILD_DIR}/whatever and we set the path to that in the ebuild with GENTOO_TEMPORARY_TEST_INSTALLDIR. https://www.gnu.org/software/guile/manual/html_node/Load-Paths.html and https://www.gnu.org/software/guile/manual/html_node/Environment-Variables.html were also a lot of help. (When testing w/ guile-2.2 briefly, it didn't seem that we needed to set LTDL_LIBRARY_PATH, but someone can add that if it turns out to be needed, or I may later.) (With regard to GUILE_AUTO_COMPILE=0, dropped that as it doesn't seem necessary. Plan is to also add GUILE_AUTO_COMPILE=fresh to the eclass, am discussing it w/ Arsen.) Bug: https://bugs.gnucash.org/show_bug.cgi?id=799159 Bug: https://bugs.gentoo.org/359033 Bug: https://bugs.gentoo.org/371264 Bug: https://bugs.gentoo.org/734286 Bug: https://bugs.gentoo.org/946927 Closes: https://bugs.gentoo.org/941426 Signed-off-by: Sam James <sam@gentoo.org> .../files/gnucash-5.10-guile-load-path.patch | 96 ++++++++++++++++++++++ app-office/gnucash/gnucash-5.10.ebuild | 33 ++++++-- 2 files changed, 120 insertions(+), 9 deletions(-)