Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 904387 - app-office/libreoffice-7.4.4.2: build failure with dev-libs/xmlsec-1.3.0 (SecurityEnvironment.cxx:165:8: error: ‘xmlSecBase64Decode’ was not declared in this scope)
Summary: app-office/libreoffice-7.4.4.2: build failure with dev-libs/xmlsec-1.3.0 (Sec...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Gentoo Office Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-04-16 03:31 UTC by ncaq
Modified: 2023-04-16 04:53 UTC (History)
1 user (show)

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


Attachments
emerge --info (emerge---info.txt,21.78 KB, text/plain)
2023-04-16 03:31 UTC, ncaq
Details
/var/tmp/portage/app-office/libreoffice-7.4.4.2/temp/build.log (build.log.xz,231.59 KB, application/x-xz)
2023-04-16 03:34 UTC, ncaq
Details

Note You need to log in before you can comment on or make changes to this bug.
Description ncaq 2023-04-16 03:31:42 UTC
Created attachment 860175 [details]
emerge --info

I only allow stable to reduce the number of builds because LibreOffice takes a long time to build.
However, if I only build stable, the number of packages I can use is quite limited, so I set up the whole system to allow unstable.
This time, when xmlsec was version 1.3.0 of the latest unstable version, the latest libreoffice stable version 7.4.4.2 could not be built.

As a suggestion, I think it would be good to define the upper limit of dependencies for the time being.
This may be due to the addition of the http USE flag in xmlsec 1.3.0.
By default this is turned off, and I feel that base64-related functions are no longer present.

I attach the entire build log with additional comments.
Only errors that might be of interest are also noted here.

[build CXX] sfx2/source/doc/objitem.cxx
S=/var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2 && I=$S/instdir && W=$S/workdir &&  mkdir -p $W/CxxObject/sfx2/source/doc/ $W/Dep/CxxObject/sfx2/source/doc/ && cd /var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2 &&   	 x86_64-pc-linux-gnu-g++ -DBOOST_ERROR_CODE_HEADER_ONLY -DBOOST_SYSTEM_NO_DEPRECATED -DCPPU_ENV=gcc3 -DLINUX -DNDEBUG -DOSL_DEBUG_LEVEL=0 -DUNIX -DUNX -DX86_64 -D_PTHREADS -D_REENTRANT  -DSFX2_DLLIMPLEMENTATION -DENABLE_CUPS  -DSYSTEM_LIBXML   -fvisibility=hidden    -Wall -Wno-missing-braces -Wnon-virtual-dtor -Wendif-labels -Wextra -Wundef -Wunreachable-code -Wshadow -Wunused-macros  -finput-charset=UTF-8 -fmessage-length=0 -fno-common -pipe -fstack-protector-strong  -Wdeprecated-copy-dtor -Wduplicated-cond -Wlogical-op -Wshift-overflow=2 -Wunused-const-variable=1 -Wno-cast-function-type -fvisibility-inlines-hidden -fPIC -Wshadow -Woverloaded-virtual -std=c++17 -pthread  -pipe -O2 -fomit-frame-pointer -march=native  -DEXCEPTIONS_ON -fexceptions -fno-enforce-eh-specs    -DLIBO_INTERNAL_ONLY  -c $S/sfx2/source/doc/objitem.cxx -o $W/CxxObject/sfx2/source/doc/objitem.o  -I$S/sfx2/inc -I$S/sfx2/source/inc -I$W/SdiTarget/sfx2/sdi -I$S/include  -I$S/config_host  -I$W/CustomTarget/officecfg/registry -I$W/UnoApiHeadersTarget/udkapi/normal -I$W/UnoApiHeadersTarget/offapi/normal  -I/usr/include     -isystem /usr/include/libxml2      -isystem /usr/include/liborcus-0.17     
/var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/xmlsecurity/source/gpg/SecurityEnvironment.cxx: In member function ‘virtual com::sun::star::uno::Reference<com::sun::star::security::XCertificate> SecurityEnvironmentGpg::getCertificate(const rtl::OUString&, const com::sun::star::uno::Sequence<signed char>&)’:
/var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/xmlsecurity/source/gpg/SecurityEnvironment.cxx:165:8: error: ‘xmlSecBase64Decode’ was not declared in this scope; did you mean ‘xmlSecBase64Encode’?
  165 |     if(xmlSecBase64Decode(strKeyId, const_cast<xmlSecByte*>(strKeyId), xmlStrlen(strKeyId)) < 0)
      |        ^~~~~~~~~~~~~~~~~~
      |        xmlSecBase64Encode
[build CXX] sfx2/source/doc/objmisc.cxx
S=/var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2 && I=$S/instdir && W=$S/workdir &&  mkdir -p $W/CxxObject/sfx2/source/doc/ $W/Dep/CxxObject/sfx2/source/doc/ && cd /var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2 &&   	 x86_64-pc-linux-gnu-g++ -DBOOST_ERROR_CODE_HEADER_ONLY -DBOOST_SYSTEM_NO_DEPRECATED -DCPPU_ENV=gcc3 -DLINUX -DNDEBUG -DOSL_DEBUG_LEVEL=0 -DUNIX -DUNX -DX86_64 -D_PTHREADS -D_REENTRANT  -DSFX2_DLLIMPLEMENTATION -DENABLE_CUPS  -DSYSTEM_LIBXML   -fvisibility=hidden    -Wall -Wno-missing-braces -Wnon-virtual-dtor -Wendif-labels -Wextra -Wundef -Wunreachable-code -Wshadow -Wunused-macros  -finput-charset=UTF-8 -fmessage-length=0 -fno-common -pipe -fstack-protector-strong  -Wdeprecated-copy-dtor -Wduplicated-cond -Wlogical-op -Wshift-overflow=2 -Wunused-const-variable=1 -Wno-cast-function-type -fvisibility-inlines-hidden -fPIC -Wshadow -Woverloaded-virtual -std=c++17 -pthread  -pipe -O2 -fomit-frame-pointer -march=native  -DEXCEPTIONS_ON -fexceptions -fno-enforce-eh-specs    -DLIBO_INTERNAL_ONLY  -c $S/sfx2/source/doc/objmisc.cxx -o $W/CxxObject/sfx2/source/doc/objmisc.o  -I$S/sfx2/inc -I$S/sfx2/source/inc -I$W/SdiTarget/sfx2/sdi -I$S/include  -I$S/config_host  -I$W/CustomTarget/officecfg/registry -I$W/UnoApiHeadersTarget/udkapi/normal -I$W/UnoApiHeadersTarget/offapi/normal  -I/usr/include     -isystem /usr/include/libxml2      -isystem /usr/include/liborcus-0.17     
[build CXX] sfx2/source/doc/objserv.cxx
make[1]: *** [/var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/solenv/gbuild/LinkTarget.mk:337: /var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/workdir/CxxObject/xmlsecurity/source/gpg/SecurityEnvironment.o] Error 1
make[1]: *** Waiting for unfinished jobs....
/var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/xmlsecurity/source/gpg/xmlsignature_gpgimpl.cxx: In member function ‘virtual com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSignatureTemplate> XMLSignature_GpgImpl::generate(const com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSignatureTemplate>&, const com::sun::star::uno::Reference<com::sun::star::xml::crypto::XSecurityEnvironment>&)’:
/var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/xmlsecurity/source/gpg/xmlsignature_gpgimpl.cxx:193:8: error: ‘xmlSecBase64Decode’ was not declared in this scope; did you mean ‘xmlSecBase64Encode’?
  193 |     if(xmlSecBase64Decode(pKey, reinterpret_cast<xmlSecByte*>(pKey), xmlStrlen(pKey)) < 0)
      |        ^~~~~~~~~~~~~~~~~~
      |        xmlSecBase64Encode
/var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/xmlsecurity/source/gpg/xmlsignature_gpgimpl.cxx: In member function ‘virtual com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSignatureTemplate> XMLSignature_GpgImpl::validate(const com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSignatureTemplate>&, const com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSecurityContext>&)’:
/var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/xmlsecurity/source/gpg/xmlsignature_gpgimpl.cxx:361:24: error: ‘xmlSecBase64Decode’ was not declared in this scope; did you mean ‘xmlSecBase64Encode’?
  361 |         int nSigSize = xmlSecBase64Decode(pSignatureValue, reinterpret_cast<xmlSecByte*>(pSignatureValue), xmlStrlen(pSignatureValue));
      |                        ^~~~~~~~~~~~~~~~~~
      |                        xmlSecBase64Encode
make[1]: *** [/var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/solenv/gbuild/LinkTarget.mk:334: /var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/workdir/CxxObject/xmlsecurity/source/gpg/xmlsignature_gpgimpl.o] Error 1
/var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/xmlsecurity/source/xmlsec/nss/securityenvironment_nssimpl.cxx: In member function ‘virtual com::sun::star::uno::Reference<com::sun::star::security::XCertificate> SecurityEnvironment_NssImpl::createCertificateFromAscii(const rtl::OUString&)’:
/var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/xmlsecurity/source/xmlsec/nss/securityenvironment_nssimpl.cxx:477:20: error: ‘xmlSecBase64Decode’ was not declared in this scope; did you mean ‘xmlSecBase64Encode’?
  477 |     int certSize = xmlSecBase64Decode( chCert, reinterpret_cast<xmlSecByte*>(chCert), xmlStrlen( chCert ) ) ;
      |                    ^~~~~~~~~~~~~~~~~~
      |                    xmlSecBase64Encode
make[1]: *** [/var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/solenv/gbuild/LinkTarget.mk:334: /var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/workdir/CxxObject/xmlsecurity/source/xmlsec/nss/securityenvironment_nssimpl.o] Error 1
rm /var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/workdir/CustomTarget/i18npool/breakiterator/line.brk /var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/workdir/CustomTarget/i18npool/breakiterator/dict_word_hu.txt /var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/workdir/CustomTarget/i18npool/breakiterator/dict_word_he.txt /var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/workdir/CustomTarget/i18npool/breakiterator/dict_word_prepostdash.txt /var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/workdir/CustomTarget/i18npool/breakiterator/edit_word.brk /var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/workdir/CustomTarget/i18npool/breakiterator/dict_word_hu.brk /var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/workdir/CustomTarget/i18npool/breakiterator/count_word.brk /var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/workdir/CustomTarget/i18npool/breakiterator/dict_word.brk /var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/workdir/CustomTarget/i18npool/breakiterator/dict_word_prepostdash.brk /var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/workdir/CustomTarget/i18npool/breakiterator/dict_word_nodash.txt /var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/workdir/CustomTarget/i18npool/breakiterator/dict_word.txt /var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/workdir/CustomTarget/i18npool/breakiterator/edit_word_hu.brk /var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/workdir/CustomTarget/i18npool/breakiterator/sent.txt /var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/workdir/CustomTarget/i18npool/breakiterator/edit_word_hu.txt /var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/workdir/CustomTarget/i18npool/breakiterator/dict_word_nodash.brk /var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/workdir/CustomTarget/i18npool/breakiterator/dict_word_he.brk /var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/workdir/CustomTarget/i18npool/breakiterator/sent.brk /var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/workdir/CustomTarget/i18npool/breakiterator/edit_word_he.brk /var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/workdir/CustomTarget/i18npool/breakiterator/edit_word.txt /var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/workdir/CustomTarget/i18npool/breakiterator/edit_word_he.txt /var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/workdir/CustomTarget/i18npool/breakiterator/count_word.txt /var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2/workdir/CustomTarget/i18npool/breakiterator/line.txt
make[1]: Leaving directory '/var/tmp/portage/app-office/libreoffice-7.4.4.2/work/libreoffice-7.4.4.2'
make: *** [Makefile:289: build] Error 2
 * ERROR: app-office/libreoffice-7.4.4.2::gentoo failed (compile phase):
 *   emake failed
Comment 1 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-04-16 03:33:48 UTC
Please attach the full compressed build.log.
Comment 2 ncaq 2023-04-16 03:34:36 UTC
Created attachment 860176 [details]
/var/tmp/portage/app-office/libreoffice-7.4.4.2/temp/build.log
Comment 3 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-04-16 03:36:32 UTC
https://github.com/LibreOffice/core/commit/75e16fdc9d111aad9663b7de1b229fbd2a61b51e is relevant too.

Can you show me emerge -pvO dev-libs/xmlsec?
Comment 4 ncaq 2023-04-16 03:41:39 UTC
2023-04-16T12:41:10 ❯ \sudo emerge -pvO dev-libs/xmlsec
 * --tree is broken with --nodeps. Disabling...

These are the packages that would be merged, in order:

[ebuild     U  ] dev-libs/xmlsec-1.3.0:0/1.3::gentoo [1.2.37:0/0::gentoo] USE="nss openssl -doc -gcrypt -gnutls -http% -static-libs -test" 0 KiB

Total: 1 package (1 upgrade), Size of downloads: 0 KiB
Comment 5 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-04-16 04:50:23 UTC
$ nm -D /usr/lib64/libxmlsec1.so.1.3.0 | grep -i xmlSecBase64Encode
000000000001c609 T xmlSecBase64Encode

But actually, https://github.com/LibreOffice/core/commit/19e998aa98d966cffca98bed9408d5758d91d9be says xmlSecBase64Decode is deprecated and it got replaced for 7.5.x.

Unless we want to patch LO (and I'm not really keen to do it), LO 7.4.x will need to stay on <1.3.0.
Comment 6 Larry the Git Cow gentoo-dev 2023-04-16 04:53:38 UTC
The bug has been closed via the following commit(s):

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

commit 903cdd1bdee4adfba34f63d23aac65c7f910884d
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2023-04-16 04:52:33 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2023-04-16 04:52:33 +0000

    app-office/libreoffice: <libreoffice-7.5 needs <xmlsec-1.3
    
    Needs deprecated xmlSecBase64Encode. Patch is a bit too big for me to
    quickly backport and xmlsec-1.3 won't be stabled any time soon anyway.
    
    Closes: https://bugs.gentoo.org/904387
    Signed-off-by: Sam James <sam@gentoo.org>

 app-office/libreoffice/libreoffice-7.3.7.2.ebuild    | 2 ++
 app-office/libreoffice/libreoffice-7.4.4.2.ebuild    | 2 ++
 app-office/libreoffice/libreoffice-7.4.6.2-r1.ebuild | 2 ++
 app-office/libreoffice/libreoffice-7.4.9999.ebuild   | 2 ++
 4 files changed, 8 insertions(+)