Closed processor286 closed 1 year ago
I might add, I've seen posts about filesystem in C++ and suggesting adding -lstdc++fs but this doesn't help, I don't have that library installed anywhere, and 'yum' did not bring in a dependency for it when I did:
yum -y install https://github.com/mridoni/gixsql/releases/download/v1.0.20b/gixsql-1.0.20b-1.el8.x86_64.rpm
This may be kind of a duplicate to #18; along with a possible broken el8 rpm.
Also see the note in the README about that: https://github.com/mridoni/gixsql/blob/fe866af4c648da9f79c457b6b2e5f977f5e12c1d/README.md?plain=1#L416
I installed gcc-toolset-11 and it seems to not help:
scl enable gcc-toolset-11 bash
gcc --version
gcc (GCC) 11.2.1 20220127 (Red Hat 11.2.1-9.1.0.3)
Copyright (C) 2021 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
cobc -x T2.cbl -lgixsql
/opt/rh/gcc-toolset-11/root/usr/bin/ld: /lib/../lib64/libgixsql.so: undefined reference to `std::filesystem::__cxx11::path::_M_split_cmpts()'
collect2: error: ld returned 1 exit status
Still not trying to compile GixSQL, just use the provided el8 rpm to precompile and link a cobol program
The important question is how the el8 RPM was built - and fix the missing dependency in there; I suggest to edit the issue title to point out that the el8 rpm is not functional
Done. The workflow file that built the rpm doesn't appear to use an esoteric version of gcc, just EL8 from Alma and epel.
Might try running the steps from the workflow in my own el8 container to build it in my own environment and see if that helps.
Yes, the workflow is actually a very simple, but I don't have a lot of experience with RPMs/RHEL/etc. so I might easily have missed something. I will try to make more tests during the next week.
I reproduced it, in the next few days I will start working on a fix
I have just uploaded new RHEL/AlmaLinux packages (package version is 1.0.20b-4); these should solve the install/link problems mentioned here.
@processor286 Can you please verify that this can be closed?
@GitMensch yes, it is solved, can be closed, sorry for delay.
Please click on close then. Thank you.
Trying to test a simple program am faced with the following error, here are some details of the software and platform.
gixsql was installed from the distribution RPM using yum
OS Version cat /etc/redhat-release Red Hat Enterprise Linux release 8.7 (Ootpa)
COBOL version cobc --version cobc (GnuCOBOL) 4.0.0 Copyright (C) 2022 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later https://gnu.org/licenses/gpl.html This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Written by Keisuke Nishida, Roger While, Ron Norman, Simon Sobisch, Edward Hart Built May 19 2023 14:58:32 Packaged May 19 2023 14:57:59 UTC C version "8.5.0 20210514 (Red Hat 8.5.0-16.0.2)"
GIX SQL version gixsql --version gixpp - the ESQL preprocessor for Gix-IDE/GixSQL Version: 1.0.20b libgixpp version: 1.0.20b
installed RPM rpm -qa | grep gix gixsql-1.0.20b-1.el8.x86_64
Compilation and link attempt cobc -x T2.cbl -lgixsql /usr/lib/gcc/x86_64-redhat-linux/8/../../../../lib64/libgixsql.so: undefined reference to `std::filesystem::__cxx11::path::_M_split_cmpts()' collect2: error: ld returned 1 exit status
I've probably done something silly here, but appreciate a pointer in the right direction :)