Re: Oralcle 9i for Linux: Installation linking problem

From: steinert <stefan.steinert_at_intralab.de>
Date: 24 Sep 2001 13:03:00 -0700
Message-ID: <6deb47bd.0109241203.11693824_at_posting.google.com>


Hi blurg et al,

after working on this problem for a while again I found an interesting posting on comp.database.oracle.misc with the subject 'Oracle 9i and RHLinux 7.1 linking errors'. The solution mentioned there is quite simple: Upgrade your binutils to 2.10.91.0.4-1. I got my copy from ftp.de.kernel.org/pub/linux/devel/binutils, installed it and guess what. Linking works perfect (at least for me).

bye,
stefan


blurg_at_gluipzak.nl (blurg) wrote in message news:<e3d01a7f.0109231554.7868c337_at_posting.google.com>...
> stefan.steinert_at_intralab.de (steinert) wrote in message news:<6deb47bd.0109230931.4423a8a0_at_posting.google.com>...
> > Hi all,
> >
> > today I tried to install the Oracle 9i database for Linux. After
> > properly setting up the environment and tuning the kernel params as
> > described in the quick installation manual the installation works as
> > expected.
> >
> > But when it comes to linking the oracle db components (this is the
> > second part of the installation process) I run into problems. The
> > compiler claims about undefined references. Here is an example taken
> > from the install logfile $ORACLE_HOME/install/make.log:
> >
> > ---cut here---
> > /usr/bin/make -f ins_net_client.mk client_sharedlib
> > ORACLE_HOME=/opt/oracle/product/9.0.1
> > /opt/oracle/product/9.0.1/bin/genclntsh
> > /opt/oracle/product/9.0.1/lib/libgeneric9.a(skgfr.o): In function
> > `skgfrpini':
> > skgfr.o(.text+0x125): undefined reference to `__cmpdi2'
> > /lib/libc.so.6: undefined reference to `_dl_lazy_at_GLIBC_2.1.1'
> > /lib/libc.so.6: undefined reference to
> > `_dl_dst_substitute_at_GLIBC_2.1.1'
> > /lib/libc.so.6: undefined reference to `_dl_out_of_memory_at_GLIBC_2.2'
> > /lib/libc.so.6: undefined reference to `_dl_relocate_object_at_GLIBC_2.0'
> > /lib/libc.so.6: undefined reference to `_dl_clktck_at_GLIBC_2.2'
> > /lib/libc.so.6: undefined reference to
> > `__libc_enable_secure_at_GLIBC_2.0'
> > /lib/libc.so.6: undefined reference to `_dl_catch_error_at_GLIBC_2.0'
> > /lib/libc.so.6: undefined reference to `_dl_platformlen_at_GLIBC_2.1.1'
> > /lib/libc.so.6: undefined reference to
> > `_dl_lookup_versioned_symbol_skip_at_GLIBC_2.0'
> > /lib/libc.so.6: undefined reference to
> > `_dl_lookup_versioned_symbol_at_GLIBC_2.0'
> > /lib/libc.so.6: undefined reference to `_dl_mcount_at_GLIBC_2.1'
> > /lib/libc.so.6: undefined reference to `_dl_dst_count_at_GLIBC_2.1.1'
> > /lib/libc.so.6: undefined reference to
> > `_dl_initial_searchlist_at_GLIBC_2.1'
> > /lib/libc.so.6: undefined reference to `_dl_start_profile_at_GLIBC_2.1'
> > /lib/libc.so.6: undefined reference to `_dl_lookup_symbol_at_GLIBC_2.0'
> > /lib/libc.so.6: undefined reference to `__libc_stack_end_at_GLIBC_2.1'
> > /lib/libc.so.6: undefined reference to `_dl_argv_at_GLIBC_2.2'
> > /lib/libc.so.6: undefined reference to `_dl_loaded_at_GLIBC_2.1'
> > /lib/libc.so.6: undefined reference to `_dl_origin_path_at_GLIBC_2.1.1'
> > /lib/libc.so.6: undefined reference to
> > `_dl_check_map_versions_at_GLIBC_2.2'
> > /lib/libc.so.6: undefined reference to `_dl_map_object_at_GLIBC_2.0'
> > /lib/libc.so.6: undefined reference to `_dl_main_searchlist_at_GLIBC_2.1'
> > /lib/libc.so.6: undefined reference to `_dl_debug_mask_at_GLIBC_2.2.3'
> > /lib/libc.so.6: undefined reference to `_dl_load_lock_at_GLIBC_2.2'
> > /lib/libc.so.6: undefined reference to `_dl_profile_at_GLIBC_2.1'
> > /lib/libc.so.6: undefined reference to `_dl_debug_state_at_GLIBC_2.0'
> > /lib/libc.so.6: undefined reference to `_dl_init_all_dirs_at_GLIBC_2.2'
> > /lib/libc.so.6: undefined reference to `_r_debug_at_GLIBC_2.0'
> > /lib/libc.so.6: undefined reference to `_dl_unload_cache_at_GLIBC_2.1'
> > /lib/libc.so.6: undefined reference to `_dl_signal_error_at_GLIBC_2.0'
> > /lib/libc.so.6: undefined reference to `_dl_debug_printf_at_GLIBC_2.2.3'
> > /lib/libc.so.6: undefined reference to `_dl_init_at_GLIBC_2.2'
> > /lib/libc.so.6: undefined reference to `_dl_all_dirs_at_GLIBC_2.2'
> > /lib/libc.so.6: undefined reference to `_dl_map_object_deps_at_GLIBC_2.0'
> > /lib/libc.so.6: undefined reference to `_dl_nloaded_at_GLIBC_2.2'
> > /lib/libc.so.6: undefined reference to `_dl_profile_map_at_GLIBC_2.1'
> > /lib/libc.so.6: undefined reference to `_dl_profile_output_at_GLIBC_2.1'
> > /lib/libc.so.6: undefined reference to `_dl_pagesize_at_GLIBC_2.2'
> > /lib/libc.so.6: undefined reference to
> > `_dl_lookup_symbol_skip_at_GLIBC_2.0'
> > /lib/libc.so.6: undefined reference to `_dl_fpu_control_at_GLIBC_2.1'
> > /usr/lib/libdl.so: undefined reference to `_dl_catch_error'
> > /lib/libc.so.6: undefined reference to
> > `_dl_global_scope_alloc_at_GLIBC_2.1'
> > Created /opt/oracle/product/9.0.1/lib/libclntst9.a
> > /opt/oracle/product/9.0.1/bin/genagtsh
> > /opt/oracle/product/9.0.1/lib/libagtsh.so 1.0
> > /usr/bin/make -f ins_plsql.mk install
> > ORACLE_HOME=/opt/oracle/product/9.0.1
> > chmod 755 /opt/oracle/product/9.0.1/bin
> > rm -f wrap
> > Linking wrap
> > gcc -o wrap -L/opt/oracle/product/9.0.1/plsql/lib/
> > -L/opt/oracle/product/9.0.1/lib/
> > /opt/oracle/product/9.0.1/plsql/lib/s0plsw.o -l
> > psa9 -lpls9 -lplp9 -lclntsh `cat
> > /opt/oracle/product/9.0.1/lib/ldflags` -lnsslb9 -lncrypt9 -lnsgr9
> > -lnzjs9 -ln9 -lnl9 -lnro9 `c
> > at /opt/oracle/product/9.0.1/lib/ldflags` -lnsslb9 -lncrypt9
> > -lnsgr9 -lnzjs9 -ln9 -lnl9 -lclient9 -lvsn9 -lwtc9 -lcommon9 -lgene
> > ric9 -lwtc9 -lmm -lnls9 -lcore9 -lnls9 -lcore9 -lnls9 -lxml9 -lcore9
> > -lunls9 `cat /opt/oracle/product/9.0.1/lib/ldflags` -lnsslb
> > 9 -lncrypt9 -lnsgr9 -lnzjs9 -ln9 -lnl9 -lnro9 `cat
> > /opt/oracle/product/9.0.1/lib/ldflags` -lnsslb9 -lncrypt9 -lnsgr9
> > -lnzjs9 -ln9
> > -lnl9 -lclient9 -lvsn9 -lwtc9 -lcommon9 -lgeneric9 -ltrace9 -lnls9
> > -lcore9 -lnls9 -lcore9 -lnls9 -lxml9 -lcore9 -lunls9 -lclient
> > 9 -lvsn9 -lwtc9 -lcommon9 -lgeneric9 -lnls9 -lcore9 -lnls9 -lcore9
> > -lnls9 -lxml9 -lcore9 -lunls9 `cat /opt/oracle/product/9.0.1/
> > lib/sysliblist` -ldl -lm /opt/oracle/product/9.0.1/lib/libplc9.a
> > -lpls9 -lclient9 -lnl9 -lnro9 -ln9 /opt/oracle/product/9.0.1/rdbm
> > s/lib/kpudfo.o -lmm -ltrace9 -lgeneric9 -lcommon9 -lslax9 -lcore9
> > -lunls9 -lsnls9 -lnls9 -lcore9 -lsql9 `cat /opt/oracle/produc
> > t/9.0.1/lib/sysliblist`
> > -Wl,-rpath,/opt/oracle/product/9.0.1/lib:/lib:/usr/lib -lm `cat
> > /opt/oracle/product/9.0.1/lib/sysliblist`
> > -ldl -lm
> > /usr/bin/ld: cannot find -lclntsh
> > collect2: ld returned 1 exit status
> > make: *** [wrap] Error 1
> > ---cut here---
> >
> > The symbols look like they were missing from glibc. I have a Redhat
> > 7.1 system with the standard glibc packages:
> > glibc-common-2.2.2-10
> > glibc-2.2.2-10
> > glibc-devel-2.2.2-10
> >
> > I use a self-compiled 2.4.9 kernel downloaded from kernel.org.
> >
> > When I look for the symbols using objdump it looks like they are
> > present, e.g. the command:
> > objdump --dynamic-syms /lib/libc-2.2.2.so |grep _dl_lazy
> >
> > produces the output:
> > 00000000 DO *UND* 00000004 GLIBC_2.1.1 _dl_lazy
> >
> > The /etc/ld.so.conf file contains /lib (among others).
> > LD_LIBRARY_PATH also contains /lib but I also tried it without because
> > this should not be necessary.
> >
> > Does anybody have an idea what is going on here?
> >
> > thanks and bye,
> > stefan
>
> Hi there, I am installing this Oracle stuff too today.
> This error is common, if I'm right.
> The problem is here, that the libclntsh.a file is not correctly
> created.
> There is a bug in the Oracle installation:
>
> in the oracle home dir there is in the bin dir a file 'genclntsh'
> which creates
> the libclntst9.a instead of libclntsh.a ( and not libclntsh9.a as you
> may think)
>
> This is the problem which apply to you too I guess.
> I am busy with a Debian system, so that's not Redhat or SuSE :)
> (dont' forget to run the genclntst from the same bin dir AFTER you
> moved the incorrectly named file created by genclntsh)
>
> But then, if you click 'retry' you will find the error which I have
> now:
>
> the 'gets' function is dangerous and should not be used
>
> and then it wil quit :(
> I am thinking about what to do. I don't know.
Received on Mon Sep 24 2001 - 22:03:00 CEST

Original text of this message