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.

bots compile and start fine dont show up and cant telnet to

General support and discussion of Eggdrop bots.
Post Reply
x
xzavier
Voice
Posts: 4
Joined: Wed Apr 30, 2008 8:57 pm

bots compile and start fine dont show up and cant telnet to

Post by xzavier »

Just recently installed ubuntu 8.04
WAS using 7.10 with bots just fine
since the upgrade have had some issues.
i've compiled 1.6.18 on my system just fine.
used the old config from previous installs (from only installs of 1.6.18 mind you)
the bots will start up just fine.. launch into the background and show up on the process list as running.
They never make it online. I know my config is correct ive use this same one may times before.
the kicker is when you TELNET to it.. it connects and just sits there.. doesnt as who you are and to log into it.. just connects and thats it.. after a few moments says your connection was terminated by host..

Code: Select all

xzavier@Dragon:~$ telnet 192.168.1.3 8675
Trying 192.168.1.3...
Connected to 192.168.1.3.
Escape character is '^]'.

Connection closed by foreign host
In another post here someone stated about have a treading problem and that there is a ./configure switch needed.

(on a side note i have tried 1.6.19)

Can Anyone please assist?
n
nml375
Revered One
Posts: 2860
Joined: Fri Aug 04, 2006 2:09 pm

Post by nml375 »

Smells like threaded-tcl to me...
Did you install tcl through some packet-manager?
NML_375
x
xzavier
Voice
Posts: 4
Joined: Wed Apr 30, 2008 8:57 pm

Post by xzavier »

nml375 wrote:Smells like threaded-tcl to me...
Did you install tcl through some packet-manager?
what i found interesting is i installed tcl8.5-dev
i usually install tcl8.4-dev (which i normally get through their repositories)
thats the only difference and yes it was through repo
-> apt-get install tcl8.5-dev
i know ubuntu has global eggdrop crap <- i dont wanna use it
besides i cant patch it for ipv6 or --enable-ipv6
but wheni tried their global eggdrop it worked.. but what was interesting is it grabbed tcl8.4-dev not 8.5.. could it be that since i compiled with 8.5 it screwed it up?
it also snagged something called eggdrop-data from ubuntu's repos
i have yet to look that up and see wtf it is..
n
nml375
Revered One
Posts: 2860
Joined: Fri Aug 04, 2006 2:09 pm

Post by nml375 »

Eggdrop should compile with tcl 8.5, although there are some issues. The problem is that the check for threaded tcl done in the configure-script is... well, kind of a hack. On most systems, it works properly, although in recent days as several major dists turned to threaded libraries (due to aolserver and such), it's becoming more of a problem.

An (ugly) workaround would be to manually edit the config.h file after running the configure script, and define the HAVE_TCL_THREADS macro manually.
NML_375
x
xzavier
Voice
Posts: 4
Joined: Wed Apr 30, 2008 8:57 pm

Post by xzavier »

nml375 wrote:Eggdrop should compile with tcl 8.5, although there are some issues. The problem is that the check for threaded tcl done in the configure-script is... well, kind of a hack. On most systems, it works properly, although in recent days as several major dists turned to threaded libraries (due to aolserver and such), it's becoming more of a problem.

An (ugly) workaround would be to manually edit the config.h file after running the configure script, and define the HAVE_TCL_THREADS macro manually.
eww that sounds dirty.
i found a fix.. kinda cheated.. i just removed tcl8.5-dev and down rev'ed to 8.4
recompiled and ta-da ! he shows up in full ipv6 glory! (love my vhosts gotta have em`)
now my issues wtf does it not play nicely with 8.5... i'll try your dirty lil hack there and see what gives. i wish i could see SOME sort of log of just were the failure is occurring.

nml375 thank you for your time. If it wasn't for you mentioning the possible tcl issue in the first place, i wouldnt have made the connection and i would have gone back to 7.10 (if i cant do what i want, i'll go to where i can)
i love my bot akron cant irc with out him lol

Xzavier/EFnet
n
nml375
Revered One
Posts: 2860
Joined: Fri Aug 04, 2006 2:09 pm

Post by nml375 »

Nice you got it working.

A few pointers if you feel like poking around in the code.
The cause for the freeze is that eggdrop usually uses fork() to split into background. This however, does not work well with tcl-libraries with threads (some fork() <-> pthread issue). The solution is to use a different mechanism to push eggdrop into the background while preserving mutex'es and such, and is compiled into the source if threaded tcl-libraries are detected. You'll find this code in bg.c.

The detection:
The detection mechanism pretty much looks for the TclpFinalizeThreadData() internal function within the tcl-library. This is an internal function, and not part of the library API (hence an ugly hack). In recent days, it has become apparent that this function may not be available in all threaded versions of tcl.
NML_375
Post Reply