Error building sys* databases
Posted in 2020
Jessica Flores installed 14.10.FC3 on RHEL 8.1 and sysmaster build failed with 'libncurses.so.5: wrong ELF class: ELFCLASS32'. Paul Watson, Vladimir Kolobrodov and Art Kagel pointed to a missing or 32-bit ncurses; Vladimir named the 64-bit ncurses-compat-libs package. SangGyu Jeong also suggested symlinks for libncurses and libtinfo 5 to 6. Jessica fixed it after adding the libtinfo link.
Auto-generated by Claude from the posts below — may be imperfect; read the full thread.
Topics: Installation, Setup & Upgrades, Server Administration, Platform-Specific Issues
Hello everybody!
We installed informix 14.10,FC3 on a Red Hat Linux 8.1 distribution (Ootpa), the installation log didn't have warnings or errors, but, when We try initialized the instance for the first Time, it cannot to build sys* databases, we tried manually to build it with shell
$INFORMIXDIR/etc/buildsmi without success..
The principal error is:
dbaccess: error while loading shared libraries: libncurses.so.5: wrong ELF class: ELFCLASS32
Cleaning up whatever was successfully created
dbaccess: error while loading shared libraries: libncurses.so.5: wrong ELF class: ELFCLASS32
We review all the prerequisites in machine notes and it was validated. Though the same machine notes didn't refer RH8 as a certified distribution, but in the
Informix Server System Requirements
it does.
Some ideas? thanks in advance
------------------------------
Jessica Flores
------------------------------
#Informix
You sure you have the Linux version ? Paul Watson Oninit LLC +1-913-387-7529 www.oninit.com Oninit® is a registered trademark of Oninit LLC
Hi, Jessica, on RedHat 8.x "libncurses.so.5" is provided by ncurses-compat-libs-6.x, exact package version will depend on the current level of the O/S, for example on RH 8.0 I see ncurses-compat-libs-6.1-7.20180224.el8.x86_64 Make sure the 64-bit version (x86_64) is installed. Hope it helps. ------------------------------ Vladimir Kolobrodov ------------------------------
Hi Jessica, As I tested on Red Hat 8.1, if ncurses6 is already installed, the bulidsmi script works fine after creating a symbolic link for ncurses5 as shown below. ln -s /usr/lib64/libncurses.so.6 /usr/lib64/libncurses.so.5 ln -s /usr/lib64/libtinfo.so.6 /usr/lib64/libtinfo.so.5 However, it is recommended to install the compatibility library. Installing ncurses-compat-libs with yum or dnf doesn't give any errors and buildsmi works fine. [root@localhost BaseOS]# cat /etc/redhat-release Red Hat Enterprise Linux release 8.1 (Ootpa) [root@localhost BaseOS]# yum install ncurses-compat-libs Updating Subscription Management repositories. Unable to read consumer identity This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register. Last metadata expiration check: 0:01:13 ago on Thu 26 Mar 2020 09:22:48 PM PDT. Dependencies resolved. ================================================================================ Package Arch Version Repository Size ================================================================================ Installing: ncurses-compat-libs x86_64 6.1-7.20180224.el8 rhel8_BaseOS 331 k Transaction Summary ================================================================================ Install 1 Package Total size: 331 k Installed size: 1.2 M Is this ok [y/N]: y Downloading Packages: warning: /mnt/BaseOS/Packages/ncurses-compat-libs-6.1-7.20180224.el8.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY rhel8_BaseOS 60 kB/s | 5.0 kB 00:00 Importing GPG key 0xFD431D51: Userid : "Red Hat, Inc. (release key 2) < security@redhat.com >" Fingerprint: 567E 347A D004 4ADE 55BA 8A5F 199E 2F91 FD43 1D51 From : /mnt/RPM-GPG-KEY-redhat-release Is this ok [y/N]: y Key imported successfully Importing GPG key 0xD4082792: Userid : "Red Hat, Inc. (auxiliary key) < security@redhat.com >" Fingerprint: 6A6A A7C9 7C88 90AE C6AE BFE2 F76F 66C3 D408 2792 From : /mnt/RPM-GPG-KEY-redhat-release Is this ok [y/N]: y Key imported successfully Running transaction check Transaction check succeeded. Running transaction test Transaction test succeeded. Running transaction Preparing : 1/1 Installing : ncurses-compat-libs-6.1-7.20180224.el8.x86_64 1/1 Running scriptlet: ncurses-compat-libs-6.1-7.20180224.el8.x86_64 1/1 Verifying : ncurses-compat-libs-6.1-7.20180224.el8.x86_64 1/1 Installed products updated. Installed: ncurses-compat-libs-6.1-7.20180224.el8.x86_64 Complete! [root@localhost BaseOS]# ls -la /usr/lib64/libncurses.so.5* lrwxrwxrwx. 1 root root 17 Jan 16 2019 /usr/lib64/libncurses.so.5 -> libncurses.so.5.9 -rwxr-xr-x. 1 root root 195776 Jan 16 2019 /usr/lib64/libncurses.so.5.9 [root@localhost BaseOS]# ls -la /usr/lib64/libtinfo.so.5* lrwxrwxrwx. 1 root root 15 Jan 16 2019 /usr/lib64/libtinfo.so.5 -> libtinfo.so.5.9 -rwxr-xr-x. 1 root root 200000 Jan 16 2019 /usr/lib64/libtinfo.so.5.9 ------------------------------ SangGyu Jeong Software Engineer Infrasoft Seoul Korea, Republic of ------------------------------
Jessica:
The problem is in this message:
dbaccess: error while loading shared libraries: libncurses.so.5: wrong ELF class: ELFCLASS32
Apparently you have a 32bit copy of the ncurses package installed and the Informix engine is a 64bit engine (v14.10 does not support a 32bit release any longer BTW). Install the 64bit ncurses package. If your Linux is 32bit, then you will have to reinstall a 64bit Linux instead.
Art
Art S. Kagel, President and Principal Consultant
ASK Database Management
www.askdbmgt.com
Blog:
http://informix-myview.blogspot.com/
Disclaimer: Please keep in mind that my own opinions are my own opinions and do not reflect on the IIUG, nor any other organization with which I am associated either explicitly, implicitly, or by inference. Neither do those opinions reflect those of other individuals affiliated with any entity with which I am affiliated nor those of the entities themselves.
We hadn't considered the second link to libtinfo. It's done. Thank you everybody! ------------------------------ Jessica Flores ------------------------------