Blog dedicated to Oracle Applications (E-Business Suite) Technology; covers Apps Architecture, Administration and third party bolt-ons to Apps

Saturday, May 9, 2009

ALECTC undefined symbol alectc in almctc.o

Bimal pinged me this error where relink of ALECTC failed:

Undefined first referenced
symbol in file
alectc $ALR_TOP/lib/almctc.o
ld: fatal: Symbol referencing errors. No output written to $ALR_TOP/bin/ALECTC
*** Error code 1
make: Fatal error: Command failed for target `$ALR_TOP/bin/ALECTC'
Done with link of alr executable 'ALECTC' on Sat May 9 23:58:47 EDT 2009

Relink of module "ALECTC" failed.
See error messages above (also recorded in log file) for possible
reasons for the failure. Also, please check that the Unix userid
running adrelink has read, write, and execute permissions
on the directory $ALR_TOP/bin,
and that there is sufficient space remaining on the disk partition
containing your Oracle Applications installation.

Done with link of product 'alr' on Sat May 9 23:58:47 EDT 2009


adrelink is exiting with status 1

End of adrelink session
Date/time is Sat May 9 23:58:47 EDT 2009
**********************************************************

Line-wrapping log file for readability ...
Done line-wrapping log file.

Original copy is $APPL_TOP/admin/log/adrelink.lsv
New copy is $APPL_TOP/admin/log/adrelink.log

I checked for the presence of $ALR_TOP/lib/alrmctc.o and found it missing. So, I copied the $ALR_TOP/lib/alrmctc.o from a working instance. I ran the command:

adrelink.sh force=y ranlib=y "ALR ALECTC"

However it failed again with the same error.

Many years ago, I had faced a similar problem and had bookmarked Metalink Note 1009718.6 for this purpose. It helped me again.

I ran this command:

cd $APPL_TOP
find . -name "*.a" -exec nm -r {} \; | grep alectc

Among the result was a line:

[10] | 0| 0|NOTY |GLOB |0 |UNDEF |almctc.o:alectc

I ran this command in a working instance and got many more lines:

./alr/11.5.0/lib/libalr.a[alectc.o]:
[7] | 0| 0|SECT |LOCL |0 |6 |alectc.o:
[2] | 0| 0|SECT |LOCL |0 |2 |alectc.o:
[3] | 0| 0|SECT |LOCL |0 |3 |alectc.o:
[5] | 0| 0|SECT |LOCL |0 |4 |alectc.o:
[6] | 0| 0|SECT |LOCL |0 |5 |alectc.o:
[13] | 0| 0|NOTY |GLOB |0 |UNDEF |alectc.o:afpend
[11] | 0| 0|NOTY |GLOB |0 |UNDEF |alectc.o:alecea
[8] | 0| 264|FUNC |GLOB |0 |2 |alectc.o:alectc
[1] | 0| 0|FILE |LOCL |0 |ABS |alectc.o:alectc.c
[12] | 0| 0|NOTY |GLOB |0 |UNDEF |alectc.o:alefis
[10] | 0| 0|NOTY |GLOB |0 |UNDEF |alectc.o:alesis
[9] | 0| 0|NOTY |GLOB |0 |UNDEF |alectc.o:alzerr
[4] | 0| 4|OBJT |LOCL |0 |3 |alectc.o:rcsid

In the server in which the issue was occuring I did this:

nm libalr.a >text

$ grep alectc text
[10] | 0| 0|NOTY |GLOB |0 |UNDEF |alectc

In working server:

[appes tsgp1100 ]$ grep alectc text
libalr.a[alectc.o]:
[8] | 0| 264|FUNC |GLOB |0 |2 |alectc
[1] | 0| 0|FILE |LOCL |0 |ABS |alectc.c
[appes tsgp1100 ]$

So I compared the size of libalr.a in working and failing servers and found the file to be larger in the working server.

I took a backup of the existing libalr.a file in the failing server and copied the libalr.a from working server.

Then I ran

adrelink.sh force=y ranlib=y "ALR ALECTC"

It succeded this time:

Relinking module 'ALECTC' in product alr ...

make -f $APPL_TOP/admin/out/link_alr_6575.mk $ALR_TOP/bin/ALECTC

Starting link of alr executable 'ALECTC' on Sun May 10 00:23:37 EDT 2009
ld -dy $ORACLE_HOME/lib/SC4.2/crti.o $ORACLE_HOME/lib/SC4.2/crt1.o $ORACLE_HOME/lib/SC4.2/crtn.o -s -o $ALR_TOP/bin/ALECTC $ALR_TOP/lib/almctc.o \
$ALR_TOP/lib/libalr.a $ALR_TOP/lib/alstub.o $APPL_TOP/fnd/11.5.0/lib/libfnd.a -lsql -lclntsh $ORACLE_HOME/lib/nautab.o $ORACLE_HOME/lib/naeet.o $ORACLE_HOME/lib/naect.o $ORACLE_HOME/lib/naedhs.o `cat $ORACLE_HOME/lib/naldflgs` -lnetv2 -lnttcp -lnetwork -lncr -lnetv2 -lnttcp -lnetwork -lclient -lvsn -lcommon -lgeneric -lmm -lnlsrtl3 -lcore4 -lnlsrtl3 -lcore4 -lnlsrtl3 -lnetv2 -lnttcp -lnetwork -lncr -lnetv2 -lnttcp -lnetwork -lclient -lvsn -lcommon -lgeneric -lepc -lnlsrtl3 -lcore4 -lnlsrtl3 -lcore4 -lnlsrtl3 -lclient -lvsn -lcommon -lgeneric -lnlsrtl3 -lcore4 -lnlsrtl3 -lcore4 -lnlsrtl3 `cat $ORACLE_HOME/lib/sysliblist` -R /opt/SUNWcluster/lib:$ORACLE_HOME/lib -Y P,$ORACLE_HOME/lib::$ORACLE_HOME/network/jre11/lib/sparc/native_threads:$APPL_TOP/cz/11.5.0/bin:$ORACLE_HOME/network/jre11/lib/sparc/native_threads:$APPL_TOP/cz/11.5.0/bin:/usr/dt/lib:/usr/openwin/lib:/opt/SUNWcluster/lib:/usr/ccs/lib:/usr/lib -Qy -lc -laio -lm $ORACLE_HOME/rdbms/lib/defopt.o $ORACLE_HOME/rdbms/lib/ssbbded.o
chmod 755 $ALR_TOP/bin/ALECTC
mcs -d $ALR_TOP/bin/ALECTC
Done with link of alr executable 'ALECTC' on Sun May 10 00:23:38 EDT 2009

Done relinking module ALECTC in product alr
Done with link of product 'alr' on Sun May 10 00:23:38 EDT 2009


adrelink is exiting with status 0

End of adrelink session
Date/time is Sun May 10 00:23:38 EDT 2009
**********************************************************

Line-wrapping log file for readability ...
Done line-wrapping log file.

Original copy is $APPL_TOP/admin/log/adrelink.lsv
New copy is $APPL_TOP/admin/log/adrelink.log

Issue resolved.

1 comment:

GOPINATH said...

Dear DAS,

Nice Work. Keep it up.

i have some problem in HRMS Module
people form.

If I try to click the attachment icon in that form i am getting comments screen. not exact form.

I need attachment form. I searched in metalink, googling no use.

Can u help in that Issue.

Sorry for posting the question in Comment place.

my mail id : godsys16@gmail.com

Thanks.
Gopinath.