[cfarm-users] Two problems on the gcc119 machine
Bruno Haible
bruno at clisp.org
Wed Sep 21 17:08:02 CEST 2022
David Edelsohn wrote:
> Someone created a huge file in /var/tmp. I have removed it, so there now
> is space.
Thank you!
> > 2) A symbolic link for /usr/lib/libncurses.a exists, but linking with
> > this library produces a non-functional program:
> >
> > $ cat conftest.c
> > extern int tgetent (char *, const char *);
> >
> > int
> > main (void)
> > {
> > return tgetent ((char *) 0, "xterm");
> > }
> >
> > $ xlc -q64 -lncurses conftest.c
> >
> > $ ./a.out
> > exec(): 0509-036 Cannot load program ./a.out because of the following
> > errors:
> > 0509-022 Cannot load module
> > /opt/freeware/lib/libncurses.a(libncurses.so.6).
> > 0509-150 Dependent module libgcc_s.a(shr.o) could not be loaded.
> > 0509-022 Cannot load module libgcc_s.a(shr.o).
> > 0509-026 System error: A file or directory in the path name does
> > not exist.
> > 0509-022 Cannot load module a.out.
> > 0509-150 Dependent module
> > /opt/freeware/lib/libncurses.a(libncurses.so.6) could not be loaded.
> >
> > $ ldd ./a.out
> > ./a.out needs:
> > /usr/lib/libc.a(shr_64.o)
> > /usr/lib/libncurses.a(libncurses.so.6)
> > /unix
> > /usr/lib/libcrypt.a(shr_64.o)
> > Cannot find libgcc_s.a(shr.o)
> >
> > Probably another symlink /usr/lib/libgcc_s.a ->
> > /opt/freeware/lib/libgcc_s.a
> > will fix this problem.
> >
>
> This is because you are combining a program compiled with XLC and a library
> compiled with GCC. You should add the LD_LIBRARY_PATH environment variable
> so that the library knows where to find libgcc_s.a.
Yes, I know that I can use 'LD_LIBRARY_PATH=/opt/freeware/lib', as a workaround.
But it feels like the wrong cure, because
* I didn't specify to link with libgcc_s, only with libncurses, and I didn't
use gcc.
* libncurses.a is symlinked into /usr/lib, where xlc will find it. What was
the intent of this symlink? Apparently that compilations with xlc that use
-lncurses succeed. But when such compilations produce dysfunctional
programs, that goal has not been 100% achieved, IMHO.
Bruno
More information about the cfarm-users
mailing list