Bug #326
offengwbuild failure when using configure --enable-local-install and custom install location
Beschreibung
With recent aqbanking source (git commit 592017ef5df8a02824fd16c890c39417ce00af5b) gwbuild fails to build. gwbuild has been build from actual gwenhyfwar sources. See the log below:
cd ~/src git clone git@github.com:aqbanking/aqbanking.git mkdir ~/src/aqbanking-gwbuild cd ~/src/aqbanking-gwbuild ~/src/gwenhywfar/tools/gwenbuild/gwbuild -s ../aqbanking 3:2025/12/01 19-20-35:gwenbuild(2505):c_setup.c: 350: Tool "avra" not available (-51) option prefix: /usr/local option backends: aqhbci aqofxconnect aqebics aqpaypal aqgivve aqnone option imexporters: csv eri2 ofx openhbci1 swift xmldb yellownet sepa ctxfile q43 camt xml option parsers: swift option bankinfos: de option enable_testcode: TRUE option enable_gui_tests: TRUE option local_install: FALSE option debug: TRUE dep gwenhywfar: found dep gtk3: found dep xmlsec: found dep xml: found dep xslt: found dep zlib: found lib gmp: found compiler args has_symbol_visibility: TRUE header locale.h: found header libintl.h: found header iconv.h: found header fcntl.h: found header stdlib.h: found header string.h: found header unistd.h: found header assert.h: found header ctype.h: found header errno.h: found header stdio.h: found header strings.h: found header netinet/in.h: found header signal.h: found function setlocale: found function memmove: found function memset: found function strcasecmp: found function strdup: found function strerror: found function snprintf: found prog xmlmerge: found prog xgettext: found prog astyle: found prog msgmerge: found Entering folder "po" Adding language catalog "de" Leaving folder "po" Entering folder "src" Entering folder "libs" Entering folder "aqbanking" Entering folder "types" Leaving folder "types" Entering folder "gui" Leaving folder "gui" Entering folder "backendsupport" Leaving folder "backendsupport" Entering folder "dialogs" Leaving folder "dialogs" Entering folder "typemaker2" Entering folder "c" Leaving folder "c" Leaving folder "typemaker2" 4:2025/12/01 19-20-36:gwenbuild(2505):parser.c: 918: Warning: Empty value for DB var "AQBANKING_VERSION_TAG" Leaving folder "aqbanking" Entering folder "plugins" Entering folder "bankinfo" Entering folder "generic" Leaving folder "generic" Entering folder "de" Leaving folder "de" Leaving folder "bankinfo" Entering folder "imexporters" Entering folder "camt" Leaving folder "camt" Entering folder "csv" Entering folder "profiles" Leaving folder "profiles" Leaving folder "csv" Entering folder "ctxfile" Leaving folder "ctxfile" Entering folder "eri2" Leaving folder "eri2" Entering folder "ofx" Entering folder "parser" Leaving folder "parser" Leaving folder "ofx" Entering folder "openhbci1" Leaving folder "openhbci1" Entering folder "q43" Leaving folder "q43" Entering folder "sepa" Leaving folder "sepa" Entering folder "swift" Entering folder "profiles" Leaving folder "profiles" Leaving folder "swift" Entering folder "xml" Entering folder "data" Leaving folder "data" Entering folder "profiles" Leaving folder "profiles" Leaving folder "xml" Entering folder "xmldb" Leaving folder "xmldb" Entering folder "yellownet" Leaving folder "yellownet" Leaving folder "imexporters" Entering folder "backends" Entering folder "aqhbci" Entering folder "admjobs" Leaving folder "admjobs" Entering folder "ajobs" Leaving folder "ajobs" Entering folder "applayer" Entering folder "xml" Leaving folder "xml" Leaving folder "applayer" Entering folder "banking" Leaving folder "banking" Entering folder "control" Leaving folder "control" Entering folder "dialogs" Leaving folder "dialogs" Entering folder "joblayer" Leaving folder "joblayer" Entering folder "msglayer" Leaving folder "msglayer" Entering folder "tan" Leaving folder "tan" Leaving folder "aqhbci" Entering folder "aqnone" Leaving folder "aqnone" Entering folder "aqofxconnect" Entering folder "common" Leaving folder "common" Entering folder "control" Leaving folder "control" Entering folder "dialogs" Leaving folder "dialogs" Entering folder "libofxhome" Leaving folder "libofxhome" Entering folder "v1" Leaving folder "v1" Entering folder "v2" Leaving folder "v2" 4:2025/12/01 19-20-36:gwenbuild(2505):parser.c: 918: Warning: Empty value for DB var "AQOFXCONNECT_VERSION_STRING" Leaving folder "aqofxconnect" Entering folder "aqpaypal" Entering folder "control" Leaving folder "control" 4:2025/12/01 19-20-36:gwenbuild(2505):parser.c: 918: Warning: Empty value for DB var "AQPAYPAL_VERSION_STRING" Leaving folder "aqpaypal" Entering folder "aqebics" Entering folder "client" Leaving folder "client" Entering folder "dialogs" Leaving folder "dialogs" Entering folder "msg" Leaving folder "msg" Entering folder "requests" Leaving folder "requests" Entering folder "control" Leaving folder "control" 4:2025/12/01 19-20-36:gwenbuild(2505):parser.c: 918: Warning: Empty value for DB var "AQEBICS_VERSION_STRING" 4:2025/12/01 19-20-36:gwenbuild(2505):parser.c: 918: Warning: Empty value for DB var "AQEBICS_VERSION_STRING" Leaving folder "aqebics" Entering folder "aqfints" Entering folder "banking" Entering folder "control" Leaving folder "control" Leaving folder "banking" Entering folder "libaqfints" Entering folder "msg" Leaving folder "msg" Entering folder "parser" Leaving folder "parser" Entering folder "service" Entering folder "bpd" Leaving folder "bpd" Entering folder "upd" Leaving folder "upd" Entering folder "xml" Leaving folder "xml" Leaving folder "service" Entering folder "session" Entering folder "hbci" Leaving folder "hbci" Entering folder "pintan" Leaving folder "pintan" Leaving folder "session" Entering folder "transport" Leaving folder "transport" Entering folder "typemaker2" Leaving folder "typemaker2" Leaving folder "libaqfints" Leaving folder "aqfints" Entering folder "aqgivve" Leaving folder "aqgivve" Leaving folder "backends" Entering folder "parsers" Entering folder "swift" Leaving folder "swift" Leaving folder "parsers" Leaving folder "plugins" Leaving folder "libs" Entering folder "tools" Entering folder "aqbanking-cli" Leaving folder "aqbanking-cli" Entering folder "mkdeinfo" Leaving folder "mkdeinfo" Leaving folder "tools" Leaving folder "src" Entering folder "admin" Leaving folder "admin" 4:2025/12/01 19-20-36:gwenbuild(2505):parser.c: 918: Warning: Empty value for DB var "all_includes" 4:2025/12/01 19-20-36:gwenbuild(2505):parser.c: 918: Warning: Empty value for DB var "AQBANKING_VERSION_TAG" 3:2025/12/01 19-20-36:gwenbuild(2505):gbuilderdescr.c: 169: here (-51) 3:2025/12/01 19-20-36:gwenbuild(2505):gwenbuild.c: 1078: Builder "msgfmt" not found 3:2025/12/01 19-20-36:gwenbuild(2505):gwenbuild.c: 1193: Could not create builder for type "I18nCatalog" ERROR: Error making builders for targets. ERROR: Error on setup build environment.
Von rhabacker vor 13 Tagen aktualisiert
With actual aqbanking source (commit a997fede) gwbuild build from actual gwenhywfar source fails with:
7:2025/12/10 22-45-42:gwenbuild(12001):../../../../gwenhywfar/tools/gwenbuild/parser/parser.c:179: Reading file ..//home/user/src/aqbanking/po/0BUILD 3:2025/12/10 22-45-42:gwen(12001):../../../../gwenhywfar/src/os/posix/syncio_file.c:268: open(..//home/user/src/aqbanking/po/0BUILD, 0): Datei oder Verzeichnis nicht gefunden 3:2025/12/10 22-45-42:gwenbuild(12001):../../../../gwenhywfar/tools/gwenbuild/parser/parser.c:182: Error in XML file "..//home/user/src/aqbanking/po/0BUILD" (-51) 3:2025/12/10 22-45-42:gwenbuild(12001):../../../../gwenhywfar/tools/gwenbuild/parser/parser.c:423: No valid node found in build file of subdir "po" 6:2025/12/10 22-45-42:gwenbuild(12001):../../../../gwenhywfar/tools/gwenbuild/parser/parser.c:396: here (-101) 3:2025/12/10 22-45-42:gwen(12001):../../../../gwenhywfar/tools/gwenbuild/parser/p_project.c:266: Error in element "subdirs", aborting 6:2025/12/10 22-45-42:gwenbuild(12001):../../../../gwenhywfar/tools/gwenbuild/parser/p_project.c:82: here (-101) 3:2025/12/10 22-45-42:gwenbuild(12001):../../../../gwenhywfar/tools/gwenbuild/parser/parser.c:106: Error parsing build tree in folder "/home/user/src/aqbanking"
Von rhabacker vor 13 Tagen aktualisiert
- actual gwenhywfar build is installed into ~/src/gwenhywfar-install
- actual aqbanking sources are checked out into ~/src/aqbanking
- The command line used is
cd ~/src/aqbanking mkdir ../aqbanking-gwbuild (cd ../aqbanking-gwbuild/; PKG_CONFIG_PATH=~/src/gwenhywfar-install/usr/local/lib64/pkgconfig ~/src/gwenhywfar-install/usr/local/bin/gwbuild -Ldebug -s ~/src/aqbanking)
Von martin vor 13 Tagen aktualisiert
rhabacker schrieb (#note-3):
With actual aqbanking source (commit a997fede) gwbuild build from actual gwenhywfar source fails with:
[...]
3:2025/12/10 22-45-42:gwenbuild(12001):../../../../gwenhywfar/tools/gwenbuild/parser/parser.c:182: Error in XML file "..//home/user/src/aqbanking/po/0BUILD" (-51)
[...]
Does that file exist? Is it correct? It works fine here (all latest sources).
Von rhabacker vor 13 Tagen aktualisiert
Using a subdirectory below aqbanking source dir as
cd ~/src/aqbanking mkdir gwbuild (cd gwbuild; PKG_CONFIG_PATH=~/src/gwenhywfar-install/usr/local/lib64/pkgconfig ~/src/gwenhywfar-install/usr/local/bin/gwbuild -Ldebug -s ..)
returns the issue initial reported here:
3:2025/12/10 22-58-06:gwenbuild(18878):../../../../gwenhywfar/tools/gwenbuild/builders/gbuilderdescr.c:169: here (-51) 3:2025/12/10 22-58-06:gwenbuild(18878):../../../../gwenhywfar/tools/gwenbuild/types/gwenbuild.c:1078: Builder "msgfmt" not found 3:2025/12/10 22-58-06:gwenbuild(18878):../../../../gwenhywfar/tools/gwenbuild/types/gwenbuild.c:1193: Could not create builder for type "I18nCatalog" 6:2025/12/10 22-58-06:gwenbuild(18878):../../../../gwenhywfar/tools/gwenbuild/types/gwenbuild.c:514: here)
Von rhabacker vor 13 Tagen aktualisiert
~/src/aqbanking> find -name 'msgfmt.gwb' ~/src/aqbanking> find -name '*.gwb' ~/src/aqbanking> find ../gwenhywfar -name 'msgfmt.gwb' ../gwenhywfar/tools/gwenbuild/builders/posix/msgfmt.gwb ~/src/aqbanking> find ../gwenhywfar-install/ -name 'msgfmt.gwb' ../gwenhywfar-install/usr/local/share/gwenhywfar/gwenbuild/builders/posix/msgfmt.gwb
Von rhabacker vor 13 Tagen aktualisiert
cd ~ mkdir src cd src git clone https://git.aquamaniac.de/git/gwenhywfar cd gwenhywfar mkdir ../gwenhywfar-build (cd ../gwenhywfar-build; ../gwenhywfar/configure --enable-local-install --with-qmake=/usr/bin/qmake-qt5) make -C ../gwenhywfar-build/ make -C ../gwenhywfar-build/ install DESTDIR=~/src/gwenhywfar-install
Von martin vor 13 Tagen aktualisiert
gwenbuild uses static paths to find its data files (see tools/gwenbuild/types/Makefile.am: DEFS=-DBUILDERDATADIR=\"$(datadir)/gwenhywfar/gwenbuild/builders\").
--enable-local-install doesn't do anything here (yet). So when installing it with DESTDIR= it will still look for its files in the configured paths.
I wonder how you even got gwenbuild to start in that scenario (did you add ~/src/gwenhywfar-install to the system library path?).
Von rhabacker vor 13 Tagen aktualisiert
martin schrieb (#note-16):
I wonder how you even got gwenbuild to start in that scenario (did you add ~/src/gwenhywfar-install to the system library path?).
There is a relative update to date gwenhywfar package installed
$ ldd ~/src/gwenhywfar-install/usr/local/bin/gwbuild
...
libgwenhywfar.so.79 => /usr/lib64/libgwenhywfar.so.79 (0x00007f04883bd000)
...
$ rpm -qf /usr/lib64/libgwenhywfar.so.79
libgwenhywfar79-5.12.0-lp156.24.1.x86_64
Using LD_LIBRARY_PATH does not show any differences:
$ LD_LIBRARY_PATH=~/src/gwenhywfar-install/usr/local/lib64/ ldd ~/src/gwenhywfar-install/usr/local/bin/gwbuild
...
libgwenhywfar.so.79 => /home/.../src/gwenhywfar-install/usr/local/lib64/libgwenhywfar.so.79 (0x00007f8e09a0f000)
...
$ (cd gwbuild; LD_LIBRARY_PATH=~/src/gwenhywfar-install/usr/local/lib64/ PKG_CONFIG_PATH=~/src/gwenhywfar-install/usr/local/lib64/pkgconfig GWEN_LOGLEVEL=info ldd ~/src/gwenhywfar-install/usr/local/bin/gwbuild -Ldebug -s ..)
Von martin vor 13 Tagen aktualisiert
This is not a bug.
You ./configure gwen (and thus gwenbuild) with prefix /usr/local but then move the files to a different location. But moving the files around doesn't change the expected location of datafiles, because that is defined by the ./configure process.
"--enable-local-install" doesn't do match here except defining the paths as relatives, to use those paths gwenbuild would need to use binreloc to find it's files which it doesn't. I'm fine with the way this is right now because I use gwenbuild as a system tool.
If you want to install gwenbuild (and gwen) to your private folder just omit --enable-local-install and give the prefix to "./configure --prefix=/home/...".
Regards
Martin