You are not logged in.

#1 2021-10-28 07:30:32

beac0n
Member
From: Germany
Registered: 2016-08-21
Posts: 10

Can't build openvpn3

I'm trying to build openvpn3 (https://aur.archlinux.org/packages/openvpn3/), but each time I get the following build error:

/usr/bin/ld: src/ovpn3cli/commands/config.o: in function `openvpn::EncryptCHM<openvpn::OpenSSLCryptoAPI>::encrypt(openvpn::BufferAllocatedType<unsigned char, openvpn::thread_unsafe_refcount>&, long)':
config.cpp:(.text._ZN7openvpn10EncryptCHMINS_16OpenSSLCryptoAPIEE7encryptERNS_19BufferAllocatedTypeIhNS_22thread_unsafe_refcountEEEl[_ZN7openvpn10EncryptCHMINS_16OpenSSLCryptoAPIEE7encryptERNS_19BufferAllocatedTypeIhNS_22thread_unsafe_refcountEEEl]+0x57): undefined reference to `EVP_CIPHER_mode'
/usr/bin/ld: src/ovpn3cli/commands/config.o: in function `openvpn::DecryptCHM<openvpn::OpenSSLCryptoAPI>::decrypt(openvpn::BufferAllocatedType<unsigned char, openvpn::thread_unsafe_refcount>&, long)':
config.cpp:(.text._ZN7openvpn10DecryptCHMINS_16OpenSSLCryptoAPIEE7decryptERNS_19BufferAllocatedTypeIhNS_22thread_unsafe_refcountEEEl[_ZN7openvpn10DecryptCHMINS_16OpenSSLCryptoAPIEE7decryptERNS_19BufferAllocatedTypeIhNS_22thread_unsafe_refcountEEEl]+0x243): undefined reference to `EVP_CIPHER_mode'
collect2: Fehler: ld gab 1 als Ende-Status zurück
make[2]: *** [Makefile:2733: src/ovpn3cli/openvpn3] Fehler 1
make[2]: *** Es wird auf noch nicht beendete Prozesse gewartet....
make[2]: Verzeichnis „/home/beac0n/.cache/yay/openvpn3/src/openvpn3-linux“ wird verlassen
make[1]: *** [Makefile:3704: all-recursive] Fehler 1
make[1]: Verzeichnis „/home/beac0n/.cache/yay/openvpn3/src/openvpn3-linux“ wird verlassen
make: *** [Makefile:2335: all] Fehler 2
==> FEHLER: Ein Fehler geschah in build().
    Breche ab...
 -> error making: openvpn3

I tried building it with mbedtls, but this leads to other build errors.
Your help is very much appreciated.

Last edited by beac0n (2021-10-28 07:31:46)

Offline

#2 2021-10-28 07:37:09

graysky
Wiki Maintainer
From: :wq
Registered: 2008-12-01
Posts: 10,730
Website

Re: Can't build openvpn3

Built fine with makepkg.  Stop using AUR helpers, they rarely help.

Offline

#3 2021-10-28 07:49:05

beac0n
Member
From: Germany
Registered: 2016-08-21
Posts: 10

Re: Can't build openvpn3

graysky wrote:

Built fine with makepkg.

As expected: I get the same error when building with makepkg directly


graysky wrote:

Stop using AUR helpers, they rarely help.

I use yay because it makes my life easier. And every time I used yay in the past, I did not have any issues.
What do you mean by "they rarely help"? They automate manual steps I don't want to execute every time I install or update a package.

Offline

#4 2021-10-28 09:36:54

graysky
Wiki Maintainer
From: :wq
Registered: 2008-12-01
Posts: 10,730
Website

Re: Can't build openvpn3

In my experience reading posts and comments in the AUR itself, they are to blame for build failures.  For this case, building in a clean chroot root was successful for me.  Not sure why you cannot build.  You have provided zero data beyond "as expected: I get the same error ..."

Offline

#5 2021-10-28 09:57:49

beac0n
Member
From: Germany
Registered: 2016-08-21
Posts: 10

Re: Can't build openvpn3

graysky wrote:

Not sure why you cannot build.

Me neither, that's why I created this post :-)


graysky wrote:

You have provided zero data beyond "as expected: I get the same error ..."

What information would be helpful? the console output is exactly the same as in my first post.

judging by the error message, It seems like it has something todo with my openssl libs.
However, I installed openssl as described here: https://wiki.archlinux.org/title/OpenSSL#Installation

Maybe my openssl version is too new for openvpn3?

Offline

#6 2021-10-28 19:09:16

Ammako
Member
Registered: 2021-07-16
Posts: 267

Re: Can't build openvpn3

beac0n wrote:

However, I installed openssl as described here: https://wiki.archlinux.org/title/OpenSSL#Installation

Why? What did you actually install?

Offline

#7 2021-10-29 07:02:29

beac0n
Member
From: Germany
Registered: 2016-08-21
Posts: 10

Re: Can't build openvpn3

Ammako wrote:
beac0n wrote:

However, I installed openssl as described here: https://wiki.archlinux.org/title/OpenSSL#Installation

Why? What did you actually install?

https://archlinux.org/packages/core/x86_64/openssl/ with "sudo pacman -S openssl"

Imo it must have smth todo with the openssl libs used, because the error message says so. Also EVP_CIPHER_mode is listed here https://www.openssl.org/docs/man1.0.2/m … _mode.html

Anyway, here is the full build log:

beac0n@beac0n-arch ~/tmp/aur/openvpn3                                                                                                                                             
> $ makepkg                                                                                                                                                            
==> Erstelle Paket: openvpn3 15_beta-1 (Fr 29 Okt 2021 08:54:02 CEST)
==> Prüfe Laufzeit-Abhängigkeiten...
==> Prüfe Buildtime-Abhängigkeiten...
==> Empfange Quellen...
  -> Klone das openvpn3-linux git Repo...
Klone in Bare-Repository '/home/beac0n/tmp/aur/openvpn3/openvpn3-linux' ...
remote: Enumerating objects: 8041, done.
remote: Counting objects: 100% (2392/2392), done.
remote: Compressing objects: 100% (1031/1031), done.
remote: Total 8041 (delta 1750), reused 1939 (delta 1342), pack-reused 5649
Empfange Objekte: 100% (8041/8041), 3.10 MiB | 7.21 MiB/s, fertig.
Löse Unterschiede auf: 100% (5966/5966), fertig.
==> Überprüfe source Dateien mit sha256sums...
    openvpn3-linux ... Übersprungen
==> Entpacke Quellen...
  -> Erstelle Arbeitskopie des openvpn3-linux git Repos...
Klone nach 'openvpn3-linux' ...
Fertig.
Zu neuem Branch 'makepkg' gewechselt
==> Beginne build()...
** Initializing git submodules ...
Submodul 'openvpn3-core' (git://github.com/OpenVPN/openvpn3) für Pfad 'openvpn3-core' in die Konfiguration eingetragen.
Submodul 'ovpn-dco' (https://gitlab.com/openvpn/ovpn-dco.git) für Pfad 'ovpn-dco' in die Konfiguration eingetragen.
Submodul 'asio' (git://github.com/chriskohlhoff/asio) für Pfad 'vendor/asio' in die Konfiguration eingetragen.
Submodul 'googletest' (git://github.com/google/googletest.git) für Pfad 'vendor/googletest' in die Konfiguration eingetragen.
Klone nach '/home/beac0n/tmp/aur/openvpn3/src/openvpn3-linux/openvpn3-core' ...
Klone nach '/home/beac0n/tmp/aur/openvpn3/src/openvpn3-linux/ovpn-dco' ...
Klone nach '/home/beac0n/tmp/aur/openvpn3/src/openvpn3-linux/vendor/asio' ...
Klone nach '/home/beac0n/tmp/aur/openvpn3/src/openvpn3-linux/vendor/googletest' ...
Submodul-Pfad: 'openvpn3-core': 'fce979ec99cb9fbeb49b539fe345ac09023659d4' ausgecheckt
Submodul-Pfad: 'ovpn-dco': '6ae3b85f7bee7d9435dc0404868929bf71d97703' ausgecheckt
Submodul-Pfad: 'vendor/asio': 'a4d820dd69b37fb8daee275d20eb162054453414' ausgecheckt
Submodul-Pfad: 'vendor/googletest': '703bd9caab50b139428cea1aaff9974ebee5742e' ausgecheckt

** Updating version.m4 ...
Version: v15_beta

** Running autoreconf ...
autoreconf: export WARNINGS=
autoreconf: Entering directory '.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal -I m4
autoreconf: configure.ac: tracing
autoreconf: configure.ac: not using Libtool
autoreconf: configure.ac: not using Intltool
autoreconf: configure.ac: not using Gtkdoc
autoreconf: running: /usr/bin/autoconf
autoreconf: running: /usr/bin/autoheader
autoreconf: running: automake --add-missing --copy --no-force
configure.ac:27: installing './compile'
configure.ac:24: installing './install-sh'
configure.ac:24: installing './missing'
Makefile.am: installing './depcomp'
parallel-tests: installing './test-driver'
src/python/Makefile.am:35: installing './py-compile'
autoreconf: Leaving directory '.'

checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking how to create a pax tar archive... gnutar
checking whether make supports nested variables... (cached) yes
checking for g++... g++
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C++... yes
checking whether g++ accepts -g... yes
checking for g++ option to enable C++11 features... none needed
checking whether make supports the include directive... yes (GNU style)
checking dependency style of g++... gcc3
checking for gcc... gcc
checking whether the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C11 features... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking how to run the C preprocessor... gcc -E
checking for ranlib... ranlib
checking whether ln -s works... yes
checking for a sed that does not truncate output... /usr/bin/sed
checking whether make sets $(MAKE)... (cached) yes
checking whether g++ supports C++11 features by default... yes
checking whether g++ supports C++14 features by default... yes
checking for a Python interpreter with version >= 3.5... python
checking for python... /usr/bin/python
checking for python version... 3.9
checking for python platform... linux
checking for GNU default python prefix... ${prefix}
checking for GNU default python exec_prefix... ${exec_prefix}
checking for python script directory (pythondir)... ${PYTHON_PREFIX}/lib/python3.9/site-packages
checking for python extension module directory (pyexecdir)... ${PYTHON_EXEC_PREFIX}/lib/python3.9/site-packages
checking for LIBLZ4... yes
checking for LIBJSONCPP... yes
checking for LIBGLIBGIO... yes
checking for LIBGLIBGIOUNIX... yes
checking for LIBUUID... yes
checking for LIBCAPNG... yes
checking for OPENSSL... yes
configure: Using ASIO source directory: ./vendor/asio
configure: Using OpenVPN 3 Core Library directory: ./openvpn3-core
checking OpenVPN 3 Core Library version... 3.git:HEAD:fce979ec
configure: Found /etc/os-release ... parsing it
configure: Operating system: Arch Linux 15_beta
configure: Default DNS resolver configuration: --resolv-conf /etc/resolv.conf
configure: Using ovpn-dco source directory: ./ovpn-dco
checking for LIBNL_GENL... yes
checking for PROTOBUF... yes
checking for protoc... protoc
configure: Checking for SELinux policy development files
checking for /usr/share/selinux/devel/Makefile... no
checking for /usr/share/selinux/devel... no
checking for rst2man... rst2man
checking for git... git
checking if this is a git checkout ... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating distro/systemd/Makefile
config.status: creating doxygen/Makefile
config.status: creating doxygen/openvpn3-linux.doxy
config.status: creating docs/man/Makefile
config.status: creating src/policy/Makefile
config.status: creating src/python/Makefile
config.status: creating src/selinux/Makefile
config.status: creating src/service-autostart/Makefile
config.status: creating addons/aws/Makefile
config.status: creating config.h
config.status: executing depfiles commands
protoc --proto_path=. --cpp_out=. src/netcfg/dco-keyconfig.proto
replacing config-version.h
make  all-recursive
make[1]: Verzeichnis „/home/beac0n/tmp/aur/openvpn3/src/openvpn3-linux“ wird betreten
Making all in src/python
make[2]: Verzeichnis „/home/beac0n/tmp/aur/openvpn3/src/openvpn3-linux/src/python“ wird betreten
  CXX      openvpn3/gen-python-constants.o
  CXXLD    openvpn3/gen-python-constants
  GEN      openvpn3/constants.py
make  all-am
make[3]: Verzeichnis „/home/beac0n/tmp/aur/openvpn3/src/openvpn3-linux/src/python“ wird betreten
make[3]: Für das Ziel „all-am“ ist nichts zu tun.
make[3]: Verzeichnis „/home/beac0n/tmp/aur/openvpn3/src/openvpn3-linux/src/python“ wird verlassen
make[2]: Verzeichnis „/home/beac0n/tmp/aur/openvpn3/src/openvpn3-linux/src/python“ wird verlassen
Making all in distro/systemd
make[2]: Verzeichnis „/home/beac0n/tmp/aur/openvpn3/src/openvpn3-linux/distro/systemd“ wird betreten
  GEN      openvpn3-autoload.service
make[2]: Verzeichnis „/home/beac0n/tmp/aur/openvpn3/src/openvpn3-linux/distro/systemd“ wird verlassen
Making all in src/service-autostart
make[2]: Verzeichnis „/home/beac0n/tmp/aur/openvpn3/src/openvpn3-linux/src/service-autostart“ wird betreten
  GEN      net.openvpn.v3.backends.service
  GEN      net.openvpn.v3.configuration.service
  GEN      net.openvpn.v3.sessions.service
  GEN      net.openvpn.v3.netcfg.service
  GEN      net.openvpn.v3.log.service
make[2]: Verzeichnis „/home/beac0n/tmp/aur/openvpn3/src/openvpn3-linux/src/service-autostart“ wird verlassen
Making all in src/policy
make[2]: Verzeichnis „/home/beac0n/tmp/aur/openvpn3/src/openvpn3-linux/src/policy“ wird betreten
  GEN      net.openvpn.v3.conf
  GEN      net.openvpn.v3.client.conf
  GEN      net.openvpn.v3.configuration.conf
  GEN      net.openvpn.v3.log.conf
  GEN      net.openvpn.v3.netcfg.conf
  GEN      net.openvpn.v3.sessions.conf
  GEN      net.openvpn.v3.rules
make[2]: Verzeichnis „/home/beac0n/tmp/aur/openvpn3/src/openvpn3-linux/src/policy“ wird verlassen
Making all in doxygen
make[2]: Verzeichnis „/home/beac0n/tmp/aur/openvpn3/src/openvpn3-linux/doxygen“ wird betreten
make[2]: Für das Ziel „all“ ist nichts zu tun.
make[2]: Verzeichnis „/home/beac0n/tmp/aur/openvpn3/src/openvpn3-linux/doxygen“ wird verlassen
Making all in docs/man
make[2]: Verzeichnis „/home/beac0n/tmp/aur/openvpn3/src/openvpn3-linux/docs/man“ wird betreten
  GEN      openvpn2.1
  GEN      openvpn3.1
  GEN      openvpn3-as.1
  GEN      openvpn3-config-acl.1
  GEN      openvpn3-config-manage.1
  GEN      openvpn3-config-remove.1
  GEN      openvpn3-config-import.1
  GEN      openvpn3-config-show.1
  GEN      openvpn3-configs-list.1
  GEN      openvpn3-log.1
  GEN      openvpn3-session-acl.1
  GEN      openvpn3-session-manage.1
  GEN      openvpn3-session-start.1
  GEN      openvpn3-session-stats.1
  GEN      openvpn3-sessions-list.1
  GEN      openvpn3-linux.7
  GEN      openvpn3-admin.8
  GEN      openvpn3-admin-log-service.8.rst
  GEN      openvpn3-admin-netcfg-service.8
  GEN      openvpn3-autoload.8
  GEN      openvpn3-service-backendstart.8.rst
  GEN      openvpn3-service-client.8.rst
  GEN      openvpn3-service-configmgr.8.rst
  GEN      openvpn3-service-logger.8
  GEN      openvpn3-service-netcfg.8.rst
  GEN      openvpn3-service-sessionmgr.8.rst
  GEN      openvpn3-admin-log-service.8
  GEN      openvpn3-service-backendstart.8
  GEN      openvpn3-service-client.8
  GEN      openvpn3-service-configmgr.8
  GEN      openvpn3-service-netcfg.8
  GEN      openvpn3-service-sessionmgr.8
make[2]: Verzeichnis „/home/beac0n/tmp/aur/openvpn3/src/openvpn3-linux/docs/man“ wird verlassen
make[2]: Verzeichnis „/home/beac0n/tmp/aur/openvpn3/src/openvpn3-linux“ wird betreten
  CXX      src/common/tests_misc_netcfg_dns_direct_file_selftest-timestamp.o
  CXX      src/netcfg/dns/tests_misc_netcfg_dns_direct_file_selftest-resolvconf-file.o
  CXX      src/netcfg/dns/tests_misc_netcfg_dns_direct_file_selftest-resolver-settings.o
  CXX      src/netcfg/dns/tests_misc_netcfg_dns_direct_file_selftest-settings-manager.o
  CXX      src/netcfg/tests_misc_netcfg_dns_direct_file_selftest-netcfg-changeevent.o
  CXX      src/tests/misc/open-uri-test.o
  CXX      src/tests/misc/syslog-facility-mapping-test.o
  CXX      src/netcfg/proxy-netcfg.o
  CXX      src/netcfg/dco-keyconfig.pb.o
  CXX      src/tests/dbus/netcfg-systemd-resolved-basic.o
  CXX      src/netcfg/dns/proxy-systemd-resolved.o
  CXX      src/tests/dbus/signal-listener.o
  CXX      src/tests/dbus/statusevent-selftest.o
  CXX      src/tests/dbus/proc-wait-for.o
  CXX      src/tests/dbus/proc-wait-for-pid.o
  CXX      src/tests/dbus/proxy-checkserviceavail.o
  CXX      src/tests/dbus/request-queue-client.o
  CXX      src/tests/dbus/request-queue-client2.o
  CXX      src/tests/dbus/request-queue-service.o
  CXX      src/configmgr/openvpn3-service-configmgr.o
  CXX      src/sessionmgr/openvpn3-service-sessionmgr.o
  CXX      src/netcfg/openvpn3-service-netcfg.o
  CXX      src/netcfg/core-tunbuilder.o
  CXX      src/netcfg/netcfg-dco.o
  CXX      src/netcfg/netcfg-subscriptions.o
  CXX      src/netcfg/dns/resolvconf-file.o
  CXX      src/netcfg/dns/systemd-resolved.o
  CXX      src/ovpn3cli/openvpn3_admin-openvpn3-admin.o
  CXX      src/ovpn3cli/openvpn3_admin-arghelpers.o
  CXX      src/ovpn3cli/commands/openvpn3_admin-variables.o
  CXX      src/ovpn3cli/commands/openvpn3_admin-version.o
  CXX      src/ovpn3cli/commands/openvpn3_admin-log-service.o
  CXX      src/ovpn3cli/commands/openvpn3_admin-netcfg-service.o
  CXX      src/common/ovpn3cli_openvpn3_admin-cmdargparser.o
  CXX      src/common/ovpn3cli_openvpn3_admin-configfileparser.o
  CXX      src/common/ovpn3cli_openvpn3_admin-machineid.o
  CXX      src/common/ovpn3cli_openvpn3_admin-utils.o
  CXX      src/netcfg/ovpn3cli_openvpn3_admin-proxy-netcfg.o
  CXX      src/netcfg/ovpn3cli_openvpn3_admin-dco-keyconfig.pb.o
test -d `dirname src/shell/bash-completion/openvpn2` || /usr/bin/mkdir -p `dirname src/shell/bash-completion/openvpn2`
test . != . && cp -vr ./src/python/openvpn3 ./src/python/ || true
  GEN      src/shell/bash-completion/openvpn2
  CXX      src/ovpn3cli/openvpn3.o
  CXX      src/ovpn3cli/arghelpers.o
  CXX      src/common/lookup.o
  CXX      src/ovpn3cli/commands/version.o
  CXX      src/ovpn3cli/commands/config.o
  CXX      src/ovpn3cli/commands/log.o
  CXX      src/ovpn3cli/commands/log-service.o
  CXX      src/ovpn3cli/commands/session.o
  CXX      src/configmgr/overrides.o
  CXX      src/sessionmgr/sessionmgr-events.o
  CXX      src/common/cmdargparser.o
  CXX      src/common/configfileparser.o
  CXX      src/common/open-uri.o
  CXX      src/common/requiresqueue.o
  CXX      src/common/timestamp.o
  CXX      src/common/utils.o
  CXX      src/common/machineid.o
  CXX      src/netcfg/netcfg-changeevent.o
  CXX      src/netcfg/netcfg-changetype.o
  CXX      src/netcfg/dns/resolver-settings.o
  CXX      src/netcfg/dns/settings-manager.o
  CXX      src/tests/unit/configfileparser.o
  CXX      src/tests/unit/timestamp.o
  CXX      src/tests/unit/logevent.o
  CXX      src/tests/unit/lookup.o
  CXX      src/tests/unit/netcfg-changeevent.o
  CXX      src/tests/unit/sessionmgr-events.o
  CXX      src/tests/unit/statusevent.o
  CXX      src/tests/unit/syslog-facility-mapping.o
  CXX      src/tests/unit/dns-settings-manager-test.o
  CXX      src/tests/unit/dns-resolver-settings.o
  CXX      src/tests/unit/machine-id.o
  CXX      vendor/googletest/googletest/src/gtest-all.o
  CXX      vendor/googletest/googletest/src/gtest_main.o
  CXX      src/tests/command-parser/cmdparser.o
  CXX      src/tests/ovpn3-core/profilemerge-optionlist.o
  CXX      src/tests/misc/config-export-json-test.o
  CXX      src/tests/misc/gettimestamp.o
  CXX      src/tests/misc/json-config-import-test.o
  CXX      src/tests/misc/log-prefix-selftest.o
  CXX      src/tests/misc/logwriter-tests.o
  CXX      src/tests/misc/lookup-tests.o
  CXX      src/tests/misc/machineid-test.o
  CXX      src/tests/misc/netcfg_dns_direct_file_selftest-netcfg-dns-direct-file-selftest.o
  CXXLD    src/tests/misc/open-uri-test
  CXXLD    src/tests/misc/syslog-facility-mapping-test
  CXX      src/tests/dbus/config-lock-down.o
  CXX      src/tests/dbus/config-override-selftest.o
  CXX      src/tests/dbus/conncreds.o
  CXX      src/tests/dbus/enable-logging.o
  CXX      src/tests/dbus/fetch-avail-config-paths.o
  CXX      src/tests/dbus/fetch-avail-session-paths.o
  CXX      src/tests/dbus/fetch-config.o
  CXX      src/tests/dbus/fetch-config2.o
  CXX      src/tests/dbus/get-acl.o
  CXX      src/tests/dbus/get-config-overrides.o
  CXX      src/tests/dbus/get-service-version-prop.o
  CXX      src/tests/dbus/getlastlogevent.o
  CXX      src/tests/dbus/getlaststatus.o
  CXX      src/tests/dbus/getconnectionstats.o
  CXX      src/tests/dbus/log-listener.o
  CXX      src/tests/dbus/log-listener2.o
  CXX      src/tests/dbus/logevent-selftest.o
  CXX      src/tests/dbus/logservice1.o
  CXX      src/tests/dbus/manager-lookupconfigname.o
  CXX      src/tests/dbus/netcfg-changeevent-selftest.o
  CXX      src/tests/dbus/netcfg-proxy-unit.o
  CXXLD    src/tests/dbus/netcfg-systemd-resolved-basic
  CXXLD    src/tests/dbus/signal-listener
  CXXLD    src/tests/dbus/statusevent-selftest
  CXXLD    src/tests/dbus/proc-wait-for
  CXXLD    src/tests/dbus/proc-wait-for-pid
  CXXLD    src/tests/dbus/proxy-checkserviceavail
  CXXLD    src/tests/dbus/request-queue-client
  CXXLD    src/tests/dbus/request-queue-client2
  CXXLD    src/tests/dbus/request-queue-service
  CXX      src/tests/netcfg/cli.o
  CXX      src/client/openvpn3-service-client.o
  CXX      src/client/openvpn3-service-backendstart.o
  CXXLD    src/configmgr/openvpn3-service-configmgr
  CXXLD    src/sessionmgr/openvpn3-service-sessionmgr
  CXXLD    src/netcfg/openvpn3-service-netcfg
  CXX      src/log/openvpn3-service-logger.o
  CXXLD    src/ovpn3cli/openvpn3-admin
  AR       src/tests/unit/libgtest.a
ar: `u' modifier ignored since `D' is the default (see `U')
  CXXLD    src/tests/command-parser/cmdparser
  CXXLD    src/tests/misc/config-export-json-test
  CXXLD    src/tests/misc/gettimestamp
  CXXLD    src/tests/misc/json-config-import-test
  CXXLD    src/tests/misc/log-prefix-selftest
  CXXLD    src/tests/misc/logwriter-tests
  CXXLD    src/tests/misc/lookup-tests
  CXXLD    src/tests/misc/machineid-test
  CXXLD    src/tests/misc/netcfg-dns-direct-file-selftest
  CXXLD    src/tests/dbus/config-lock-down
  CXXLD    src/tests/dbus/config-override-selftest
  CXXLD    src/tests/dbus/conncreds
  CXXLD    src/tests/dbus/enable-logging
  CXXLD    src/tests/dbus/fetch-avail-config-paths
  CXXLD    src/tests/dbus/fetch-avail-session-paths
  CXXLD    src/tests/dbus/fetch-config
  CXXLD    src/tests/dbus/fetch-config2
  CXXLD    src/tests/dbus/get-acl
  CXXLD    src/tests/dbus/get-config-overrides
  CXXLD    src/tests/dbus/get-service-version-prop
  CXXLD    src/tests/dbus/getlastlogevent
  CXXLD    src/tests/dbus/getlaststatus
  CXXLD    src/tests/dbus/getconnectionstats
  CXXLD    src/tests/dbus/log-listener
  CXXLD    src/tests/dbus/log-listener2
  CXXLD    src/tests/dbus/logevent-selftest
  CXXLD    src/tests/dbus/logservice1
  CXXLD    src/tests/dbus/manager-lookupconfigname
  CXXLD    src/tests/dbus/netcfg-changeevent-selftest
  CXXLD    src/tests/dbus/netcfg-proxy-unit
  CXXLD    src/tests/unit/unit-tests
  CXXLD    src/client/openvpn3-service-backendstart
  CXXLD    src/log/openvpn3-service-logger
  CXXLD    src/ovpn3cli/openvpn3
/usr/bin/ld: src/ovpn3cli/commands/config.o: in function `openvpn::EncryptCHM<openvpn::OpenSSLCryptoAPI>::encrypt(openvpn::BufferAllocatedType<unsigned char, openvpn::thread_unsafe_refcount>&, long)':
config.cpp:(.text._ZN7openvpn10EncryptCHMINS_16OpenSSLCryptoAPIEE7encryptERNS_19BufferAllocatedTypeIhNS_22thread_unsafe_refcountEEEl[_ZN7openvpn10EncryptCHMINS_16OpenSSLCryptoAPIEE7encryptERNS_19BufferAllocatedTypeIhNS_22thread_unsafe_refcountEEEl]+0x57): undefined reference to `EVP_CIPHER_mode'
/usr/bin/ld: src/ovpn3cli/commands/config.o: in function `openvpn::DecryptCHM<openvpn::OpenSSLCryptoAPI>::decrypt(openvpn::BufferAllocatedType<unsigned char, openvpn::thread_unsafe_refcount>&, long)':
config.cpp:(.text._ZN7openvpn10DecryptCHMINS_16OpenSSLCryptoAPIEE7decryptERNS_19BufferAllocatedTypeIhNS_22thread_unsafe_refcountEEEl[_ZN7openvpn10DecryptCHMINS_16OpenSSLCryptoAPIEE7decryptERNS_19BufferAllocatedTypeIhNS_22thread_unsafe_refcountEEEl]+0x243): undefined reference to `EVP_CIPHER_mode'
collect2: Fehler: ld gab 1 als Ende-Status zurück
make[2]: *** [Makefile:2733: src/ovpn3cli/openvpn3] Fehler 1
make[2]: *** Es wird auf noch nicht beendete Prozesse gewartet....
make[2]: Verzeichnis „/home/beac0n/tmp/aur/openvpn3/src/openvpn3-linux“ wird verlassen
make[1]: *** [Makefile:3704: all-recursive] Fehler 1
make[1]: Verzeichnis „/home/beac0n/tmp/aur/openvpn3/src/openvpn3-linux“ wird verlassen
make: *** [Makefile:2335: all] Fehler 2
==> FEHLER: Ein Fehler geschah in build().
    Breche ab...

Last edited by beac0n (2021-10-29 07:02:45)

Offline

#8 2021-10-29 07:36:57

arojas
Developer
From: Spain
Registered: 2011-10-09
Posts: 2,283

Re: Can't build openvpn3

Please post the output of

pacman -Qkk openssl

and

pkgconf --libs --cflags "openssl >= 1.0.2"

Offline

#9 2021-10-29 07:38:51

beac0n
Member
From: Germany
Registered: 2016-08-21
Posts: 10

Re: Can't build openvpn3

arojas wrote:

Please post the output of

pacman -Qkk openssl

and

pkgconf --libs --cflags "openssl >= 1.0.2"
> $ pacman -Qkk openssl                                                                                                                                                 
openssl: 4115 Dateien gesamt, 0 veränderte Dateien

"Dateien gesamt" == "Total files"
"veränderte Dateien" == "Changed files"

> $ pkgconf --libs --cflags "openssl >= 1.0.2"                                                                                                                          
-lssl -lcrypto 

Last edited by beac0n (2021-10-29 07:42:57)

Offline

#10 2021-10-29 07:48:37

arojas
Developer
From: Spain
Registered: 2011-10-09
Posts: 2,283

Re: Can't build openvpn3

And

ls -l /usr/local/lib/

Offline

#11 2021-10-29 07:49:36

beac0n
Member
From: Germany
Registered: 2016-08-21
Posts: 10

Re: Can't build openvpn3

arojas wrote:

And

ls -l /usr/local/lib/
> $ ls -l /usr/local/lib/
drwxr-xr-x    - root 24 Mär 09:40 baumer
drwxr-xr-x    - root  2 Okt  2015 dtrace
drwxr-xr-x    - root 29 Nov  2017 engines-1.1
drwxr-xr-x    - root 28 Apr  2019 engines-3
lrwxrwxrwx   16 root 25 Nov  2014 libcminpack.so -> libcminpack.so.1
lrwxrwxrwx   20 root 25 Nov  2014 libcminpack.so.1 -> libcminpack.so.1.3.4
.rwxr-xr-x 150k root 25 Nov  2014 libcminpack.so.1.3.4
.rw-r--r-- 6,1M root 28 Apr  2019 libcrypto.a
lrwxrwxrwx   14 root 28 Apr  2019 libcrypto.so -> libcrypto.so.3
.rwxr-xr-x 3,0M root 29 Nov  2017 libcrypto.so.1.1
.rwxr-xr-x 3,6M root 28 Apr  2019 libcrypto.so.3
.rw-r--r-- 3,5M root 15 Aug  2017 libgutenprint.a
.rwxr-xr-x  963 root 15 Aug  2017 libgutenprint.la
lrwxrwxrwx   22 root 15 Aug  2017 libgutenprint.so -> libgutenprint.so.2.5.0
lrwxrwxrwx   22 root 15 Aug  2017 libgutenprint.so.2 -> libgutenprint.so.2.5.0
.rwxr-xr-x 2,5M root 15 Aug  2017 libgutenprint.so.2.5.0
.rw-r--r-- 556k root 15 Aug  2017 libgutenprintui2.a
.rwxr-xr-x 1,2k root 15 Aug  2017 libgutenprintui2.la
lrwxrwxrwx   25 root 15 Aug  2017 libgutenprintui2.so -> libgutenprintui2.so.1.0.0
lrwxrwxrwx   25 root 15 Aug  2017 libgutenprintui2.so.1 -> libgutenprintui2.so.1.0.0
.rwxr-xr-x 279k root 15 Aug  2017 libgutenprintui2.so.1.0.0
.rw-r--r-- 406k root 28 Apr  2019 libsecp256k1.a
.rwxr-xr-x  966 root 28 Apr  2019 libsecp256k1.la
lrwxrwxrwx   21 root 28 Apr  2019 libsecp256k1.so -> libsecp256k1.so.0.0.0
lrwxrwxrwx   21 root 28 Apr  2019 libsecp256k1.so.0 -> libsecp256k1.so.0.0.0
.rwxr-xr-x 495k root 28 Apr  2019 libsecp256k1.so.0.0.0
.rw-r--r-- 1,0M root 28 Apr  2019 libssl.a
lrwxrwxrwx   11 root 28 Apr  2019 libssl.so -> libssl.so.3
.rwxr-xr-x 529k root 29 Nov  2017 libssl.so.1.1
.rwxr-xr-x 689k root 28 Apr  2019 libssl.so.3
drwxr-xr-x    - root  2 Okt  2015 node_modules
drwxr-xr-x    - root  6 Apr 08:35 pkgconfig

Offline

#12 2021-10-29 07:50:49

arojas
Developer
From: Spain
Registered: 2011-10-09
Posts: 2,283

Re: Can't build openvpn3

So there you go. You have an unsupported openssl version installed there. In general, build AUR packages in a clean chroot to avoid this sort of issues.

Last edited by arojas (2021-10-29 07:52:12)

Offline

#13 2021-10-29 07:56:28

beac0n
Member
From: Germany
Registered: 2016-08-21
Posts: 10

Re: Can't build openvpn3

arojas wrote:

So there you go. You have an unsupported openssl version installed there. In general, build AUR packages in a clean chroot to avoid this sort of issues.

Thank you for your answer and your help. I still have some questions, if you don't mind smile:
- openvpn3 is using libs from "/usr/local/lib/", which contains unsupported (for openvpn3) libraries and because of this the build error happens?
- which are the unsupported libs? How do you know?
- are my libs out of date somhow or are they "too new"? How do I prevent this kind of issue in the future, aside from building packages in a clean chroot?

Thank you smile

// Edit:

I was able to install the package using these instructions: https://wiki.archlinux.org/title/Develo … ean_chroot

Last edited by beac0n (2021-10-29 08:06:55)

Offline

#14 2021-10-29 08:37:54

arojas
Developer
From: Spain
Registered: 2011-10-09
Posts: 2,283

Re: Can't build openvpn3

beac0n wrote:

- openvpn3 is using libs from "/usr/local/lib/", which contains unsupported (for openvpn3) libraries and because of this the build error happens?

Not exactly. The compiler is picking up the headers from the system openssl, but the linker finds the custom openssl library from /usr/local first, so there is a mismatch which causes the error.

- which are the unsupported libs? How do you know?

libcrypto.so and libssl.so

- are my libs out of date somhow or are they "too new"? How do I prevent this kind of issue in the future, aside from building packages in a clean chroot?

Judging from the so.3 soname, I assume you installed openssl 3, so that would be "too new". I don't know if there is a way to tell the linker to ignore libraries from /usr/local, generally I would avoid installing alternative versions of official packages in /usr/local.

Offline

#15 2021-10-29 08:42:31

beac0n
Member
From: Germany
Registered: 2016-08-21
Posts: 10

Re: Can't build openvpn3

Thank you for the explanation smile. I learned something today.

arojas wrote:

generally I would avoid installing alternative versions of official packages in /usr/local.

I'm not sure how these versions ended up in /usr/local ... But that's something for me to research smile

Again thanks a lot.

Offline

Board footer

Powered by FluxBB