This is the new home of the egghelp.org community forum.
All data has been migrated (including user logins/passwords) to a new phpBB version.


For more information, see this announcement post. Click the X in the top right-corner of this box to dismiss this message.

Compilation problems of eggdrop 1.6.10 on SuSE Linux 7.0

Old posts that have not been replied to for several years.
Locked
b
bencze

Post by bencze »

It compiles, but when it does the linking I get the following error message:

tcl.o: In function `utf_converter':
/home/bencze/eggdrop1.6.10/src/tcl.c:311: undefined reference to `Tcl_GetByteArrayFromObj'
tcl.o: In function `init_tcl':
/home/bencze/eggdrop1.6.10/src/tcl.c:602: undefined reference to `Tcl_UtfToLower'
/home/bencze/eggdrop1.6.10/src/tcl.c:603: undefined reference to `Tcl_SetSystemEncoding'
/home/bencze/eggdrop1.6.10/src/tcl.c:617: undefined reference to `Tcl_SetSystemEncoding'
/home/bencze/eggdrop1.6.10/src/tcl.c:630: undefined reference to `Tcl_GetEncoding'
tclmisc.o: In function `tcl_md5':
/home/bencze/eggdrop1.6.10/src/tclmisc.c:598: undefined reference to `Tcl_GetByteArrayFromObj'
collect2: ld returned 1 exit status
make[1]: *** [../eggdrop] Error 1
make[1]: Leaving directory `/home/bencze/eggdrop1.6.10/src'
make: *** [static] Error 2

Anyone has a suggestion what could I do? Do I need some special package installed or what? I have Tcl tcl-8.3.1-34 installed.
Thank you,
Bencze.
p
ppslim
Revered One
Posts: 3914
Joined: Sun Sep 23, 2001 8:00 pm
Location: Liverpool, England

Post by ppslim »

This error usualy occurs when the tcl.h file being included into the eggdrop source code, is of a lower version to the libtcl.so being used.

During the ./configure faze, you should check that the version of tcl.h and libtcl.so are the same, and if not, make sure that traces of old versions are fully illiminated.

The ./configure faze will tell you exactly where if has located the files, and the name.
b
bencze

Post by bencze »

Actually I had to 'locate' them because the configure script haven't found them. I've set 2 variables, LIBTCL and LIBINC or something like this, as some help file is saying... maybe I just reinstall Tcl?
p
ppslim
Revered One
Posts: 3914
Joined: Sun Sep 23, 2001 8:00 pm
Location: Liverpool, England

Post by ppslim »

I would sugest re-installing Tcl from scratch.

Some packages provided by the OS creator install files in odd locations, and do not fully configure them.

Try downloading Tcl yourself (available from the eggheads ftp archive ftp://ftp.eggheads.org/ ), compiling and installing.
b
bencze

Post by bencze »

I reinstalled tcl (8.4), and when compiling eggdrop I got the following:

make[2]: Leaving directory /home/bencze/eggdrop1.6.10/src/compat'
---------- Yeah! that's the compiling, now the linking! ----------

Linking eggdrop... (static version)

gcc -pipe -o ../eggdrop bg.o botcmd.o botmsg.o botnet.o chanprog.o cmds.o
dcc.o
dccutil.o dns.o flags.o language.o main.o mem.o misc.o misc_file.o modules.o
net.o rfc1459.o tcl.o tcldcc.o tclhash.o tclmisc.o tcluser.o userent.o
userrec.o users.o mod/*.o -L/usr/local/lib -ltcl8.4 -lm -ldl -lnsl
md5/md5c.o compat/*.o Cat mod/mod.xlibsMstrip ../eggdrop
Successful compile: eggdrop

make[1]: Leaving directory /home/bencze/eggdrop1.6.10/src'

./eggdrop: error in loading shared libraries: libtcl8.4.so: cannot open
shared object file: No such file or directory
make: *** [static] Error 127

What could be the problem? tcl is compiled as static, eggdrop too (same error if shared)...
P
Petersen
Owner
Posts: 685
Joined: Thu Sep 27, 2001 8:00 pm
Location: Blackpool, UK

Post by Petersen »

most probably your library hint file is not upto date. ldconfig -m /usr/local/lib might fix it
b
bencze

Post by bencze »

Had to do a full ldconfig (dunno why) but it worked. Thanks for the help, managed to compile my bot! :smile:)
H
Hagar

Post by Hagar »

Had the same problem but I found a page that had some more info on how to use ldconfig so it's fixed now :smile:

<font size=-1>[ This Message was edited by: Hagar on 2002-06-22 23:30 ]</font>
User avatar
Yourname
Master
Posts: 358
Joined: Mon Sep 24, 2001 8:00 pm
Location: Toronto

Post by Yourname »

why dont you post the link here so it'll be helpful for us too. :smile:
Dormant egghead.
H
Hagar

Post by Hagar »

:smile: I could do that

http://www.tac.eu.org/cgi-bin/man-cgi?ldconfig+8

Somehow my version of ldconfig doesn't support the -m flag so that didn't work for me.
Then I came across this document and found out that it has a config file.
By default, it scans a set of built-in system directories, directories listed in /etc/ld.so.conf
So all I had to do to make it find the libary was to add the path to the libary in "ld.so.conf"
I ran ldconfig again and then make could complete the linking of the libaries.

It took me 4 hours to compile eggdrop becaase of this unfortunate error :razz:
Locked