wazuh-packages icon indicating copy to clipboard operation
wazuh-packages copied to clipboard

Cannot generate AIX package due curl dependencies problems

Open jnasselle opened this issue 3 years ago • 0 comments

Wazuh version Install type Action performed Platform
4.3 Agent Package generation (compilation step) AIX 6.1 TL9

Description

Currently it's not possible to generate AIX package due curl dependencies problems

bash-4.4$ gmake deps TARGET=agent
grep: can't open /etc/os-release
curl -so external/cJSON.tar.gz https://packages.wazuh.com/deps/16-9913/libraries/aix/powerpc/cJSON.tar.gz || true
Could not load program curl:
Symbol resolution failed for /opt/freeware/lib/libldap.a(libldap-2.4.so.2) because:
        Symbol strcmp (number 134) is not exported from dependent
          module /opt/freeware/lib/libcrypto.a(libcrypto.so.1.0.2).
        Symbol strncpy (number 160) is not exported from dependent
          module /opt/freeware/lib/libcrypto.a(libcrypto.so.1.0.2).
        Symbol strcpy (number 168) is not exported from dependent
          module /opt/freeware/lib/libcrypto.a(libcrypto.so.1.0.2).
        Symbol strcat (number 180) is not exported from dependent
          module /opt/freeware/lib/libcrypto.a(libcrypto.so.1.0.2).
System error: Error 0
Examine .loader section symbols with the 'dump -Tv' command.
cd external && test -e cJSON.tar.gz && gunzip cJSON.tar.gz || true
cd external && test -e cJSON.tar && tar -xf cJSON.tar || true
test -e external/cJSON.tar && rm external/cJSON.tar || true
test -d external/cJSON ||\
(curl -so external/cJSON.tar.gz https://packages.wazuh.com/deps/16-9913/libraries/sources/cJSON.tar.gz &&\
cd external && gunzip cJSON.tar.gz && tar -xf cJSON.tar && rm cJSON.tar)
Could not load program curl:
Symbol resolution failed for /opt/freeware/lib/libldap.a(libldap-2.4.so.2) because:
        Symbol strcmp (number 134) is not exported from dependent
          module /opt/freeware/lib/libcrypto.a(libcrypto.so.1.0.2).
        Symbol strncpy (number 160) is not exported from dependent
          module /opt/freeware/lib/libcrypto.a(libcrypto.so.1.0.2).
        Symbol strcpy (number 168) is not exported from dependent
          module /opt/freeware/lib/libcrypto.a(libcrypto.so.1.0.2).
        Symbol strcat (number 180) is not exported from dependent
          module /opt/freeware/lib/libcrypto.a(libcrypto.so.1.0.2).
System error: Error 0
Examine .loader section symbols with the 'dump -Tv' command.
gmake: *** [Makefile:1384: external/cJSON.tar.gz] Error 255

Also this can be reproduced by any curl execution

bash-4.4$ curl --version
Could not load program curl:
Symbol resolution failed for /opt/freeware/lib/libldap.a(libldap-2.4.so.2) because:
        Symbol strcmp (number 134) is not exported from dependent
          module /opt/freeware/lib/libcrypto.a(libcrypto.so.1.0.2).
        Symbol strncpy (number 160) is not exported from dependent
          module /opt/freeware/lib/libcrypto.a(libcrypto.so.1.0.2).
        Symbol strcpy (number 168) is not exported from dependent
          module /opt/freeware/lib/libcrypto.a(libcrypto.so.1.0.2).
        Symbol strcat (number 180) is not exported from dependent
          module /opt/freeware/lib/libcrypto.a(libcrypto.so.1.0.2).
System error: Error 0
Examine .loader section symbols with the 'dump -Tv' command.

Extra information

bash-4.4$ uname -a
AIX soaxp176 1 6 00CADA644C00
bash-4.4$ ldd /usr/bin/curl
/usr/bin/curl needs:
         /usr/lib/libs.a(shr.o)
         /usr/lib/libpthreads.a(shr_comm.o)
         /usr/lib/libpthreads.a(shr_xpg5.o)
         /opt/freeware/lib/libcurl.a(libcurl.so.4)
         /opt/freeware/lib/libz.a(libz.so.1)
         /unix
         /usr/lib/libcrypt.a(shr.o)
         /usr/lib/threads/libc.a(shr.o)
         /opt/freeware/lib/libcrypto.a(libcrypto.so.1.0.2)
         /opt/freeware/lib/libssl.a(libssl.so.1.0.2)
         /opt/freeware/lib/libldap.a(libldap-2.4.so.2)
         /opt/freeware/lib/liblber.a(liblber-2.4.so.2)
         /opt/freeware/lib/libgcc_s.a(shr.o)
bash-4.4$
bash-4.4$ rpm -qi openssl
Name        : openssl                      Relocations: (not relocateable)
Version     : 1.0.2u                            Vendor: (none)
Release     : 1                             Build Date: Thu Jan  9 08:27:23 2020
Install date: Mon May  2 12:07:47 2022      Build Host: aix51.perzl.org
Group       : System Environment/Libraries   Source RPM: openssl-1.0.2u-1.src.rpm
Size        : 75301849                         License: OpenSSL License
URL         : http://www.openssl.org/
Summary     : Secure Sockets Layer and cryptography libraries and tools
Description :
The OpenSSL Project is a collaborative effort to develop a robust,
commercial-grade, fully featured, and Open Source toolkit implementing the
Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1)
protocols as well as a full-strength general purpose cryptography library.
The project is managed by a worldwide community of volunteers that use the
Internet to communicate, plan, and develop the OpenSSL tookit and its related
documentation.

OpenSSL is based on the excellent SSLeay library developed from Eric A. Young
and Tim J. Hudson.  OpenSSL is licensed under the OpenSSL License, included in
this package.

This package contains the base OpenSSL cryptography and SSL/TLS libraries and
tools.

You should also install a pseudo-random number generator such as EGD or prngd
if you do not have a /dev/urandom and /dev/random.

The library is available as 32-bit and 64-bit
bash-4.4$ rpm -qi curl   
Name        : curl                         Relocations: (not relocateable)
Version     : 7.72.0                            Vendor: (none)
Release     : 1                             Build Date: Mon Aug 24 08:04:34 2020
Install date: Mon May  2 09:54:41 2022      Build Host: aix51.perzl.org
Group       : Applications/Internet         Source RPM: curl-7.72.0-1.src.rpm
Size        : 4658733                          License: MIT
URL         : http://curl.haxx.se/
Summary     : A utility for getting files from remote servers (FTP, HTTP, and others)
Description :
cURL is a tool for getting files from FTP, HTTP, Gopher, Telnet, and
Dict servers, using any of the supported protocols. cURL is designed
to work without user interaction or any kind of interactivity. cURL
offers many useful capabilities, like proxy support, user
authentication, FTP upload, HTTP post, and file transfer resume.

The library is available as 32-bit and 64-bit.

jnasselle avatar May 03 '22 12:05 jnasselle