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.

Problem with make

Old posts that have not been replied to for several years.
Locked
L
LtPhil
Voice
Posts: 26
Joined: Mon Jul 28, 2003 10:25 am

Problem with make

Post by LtPhil »

i seem to be having trouble recompiling my bot. i've done make iconfig (also tried make config), and those work fine, but when i do make i get the following during linking:

Code: Select all

Linking eggdrop (standard build).

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 match.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  -L/usr/local/lib -ltcl83 -lm md5/md5c.o compat/*.o `cat mod/mod.xlibs`
touch ../eggdrop

Successful compile: eggdrop

"Makefile", line 3: Could not find ../Makefile.generic
make: fatal errors encountered -- cannot continue
*** Error code 1

Stop in /usr/home/*****/eggdrop1.6.17/src/mod.
*** Error code 1

Stop in /usr/home/*****/eggdrop1.6.17.
(i've removed the proper username from the paths, it doesn't actually show "*****"). any thoughts or suggestions?
User avatar
^DooM^
Owner
Posts: 772
Joined: Tue Aug 26, 2003 5:40 pm
Location: IronForge
Contact:

Post by ^DooM^ »

Try make clean remove your eggdrop folder. untar from scratch and try to recompile again. If this doesn't fix your problem the please post with what OS you are trying to compile on and what version of TCL is currently installed.
The lifecycle of a noob is complex. Fledgling noobs gestate inside biometric pods. Once a budding noob has matured thru gestation they climb out of their pod, sit down at a PC, ask a bunch of questions that are clearly in the FAQ, The Noob is born
L
LtPhil
Voice
Posts: 26
Joined: Mon Jul 28, 2003 10:25 am

Post by LtPhil »

how do i get specific OS info? i'm using a shell provider, and i know they're running a recent version of FreeBSD, but i'm not sure what exactly. looking at the ./configure output i see

Code: Select all

checking for Tcl library... found /usr/local/lib/libtcl83.so
checking for Tcl header... found /usr/local/include/tcl8.3/tcl.h
so i'm assuming that means TCL 8.3 is installed :)

i've tried untar-ing everything from scratch, and it still gives me problems. i find this most odd, because i've compiled an eggdrop on this server before... what's up with that Makefile.generic thing? i've never seen (or at least noticed) a reference to that before now...
User avatar
^DooM^
Owner
Posts: 772
Joined: Tue Aug 26, 2003 5:40 pm
Location: IronForge
Contact:

Post by ^DooM^ »

yes odd indeed i have never seen that error either.

Try using gmake instead of make.
The lifecycle of a noob is complex. Fledgling noobs gestate inside biometric pods. Once a budding noob has matured thru gestation they climb out of their pod, sit down at a PC, ask a bunch of questions that are clearly in the FAQ, The Noob is born
L
LtPhil
Voice
Posts: 26
Joined: Mon Jul 28, 2003 10:25 am

Post by LtPhil »

still no go. however, watching the make iconfig output, i did catch this: i386-unknown-freebsd4.7 - so i'm assuming it's FreeBSD 4.7 :)

i took out the megahal mod and that seems to be changing the error... looks like megahal is a culprit (i have a slightly older version already compiled so i'll just use that). however, i still get errors on make - this time with the mysql module:

Code: Select all

gcc -pipe -fPIC -g -O2 -Wall -I. -I../../.. -I../../..  -I../../../src/mod -DHAV
E_CONFIG_H   `mysql_config --cflags` -DMAKING_MODS -c .././mysql.mod/mysql.c
In file included from ../mysql.mod/mysql_mod.h:32,
                 from .././mysql.mod/mysql.c:24:
../../../src/mod/module.h:190: warning: `list_delete' redefined
../mysql.mod/mysql_mod.h:31: warning: this is the location of the previous definition
In file included from .././mysql.mod/mysql.c:24:
../mysql.mod/mysql_mod.h:34: mysql/mysql.h: No such file or directory
.././mysql.mod/mysql.c:31: syntax error before `*'
.././mysql.mod/mysql.c:31: warning: type defaults to `int' in declaration of `dbc'
.././mysql.mod/mysql.c:31: warning: data definition has no type or storage class
.././mysql.mod/mysql.c: In function `tcl_mysql_connect':
.././mysql.mod/mysql.c:152: warning: implicit declaration of function `mysql_init'
.././mysql.mod/mysql.c:152: warning: assignment makes pointer from integer without a cast
.././mysql.mod/mysql.c:166: warning: implicit declaration of function `mysql_real_connect'
.././mysql.mod/mysql.c:171: warning: implicit declaration of function `mysql_error'
.././mysql.mod/mysql.c:171: warning: passing arg 2 of `Tcl_AppendToObj' makes pointer from integer without a cast
.././mysql.mod/mysql.c: In function `tcl_mysql_query':
.././mysql.mod/mysql.c:200: `MYSQL_RES' undeclared (first use in this function)
.././mysql.mod/mysql.c:200: (Each undeclared identifier is reported only once
.././mysql.mod/mysql.c:200: for each function it appears in.)
.././mysql.mod/mysql.c:200: `result' undeclared (first use in this function)
.././mysql.mod/mysql.c:200: warning: statement with no effect
.././mysql.mod/mysql.c:201: syntax error before `unsigned'
.././mysql.mod/mysql.c:209: warning: implicit declaration of function `mysql_query'
.././mysql.mod/mysql.c:212: warning: passing arg 2 of `Tcl_AppendToObj' makes pointer from integer without a cast
.././mysql.mod/mysql.c:218: warning: implicit declaration of function `mysql_store_result'
.././mysql.mod/mysql.c:220: `fields' undeclared (first use in this function)
.././mysql.mod/mysql.c:220: warning: implicit declaration of function `mysql_num_fields'
.././mysql.mod/mysql.c:224: `row' undeclared (first use in this function)
.././mysql.mod/mysql.c:224: warning: implicit declaration of function `mysql_fetch_row'
.././mysql.mod/mysql.c:227: `x' undeclared (first use in this function)
.././mysql.mod/mysql.c:233: warning: implicit declaration of function `mysql_free_result'
.././mysql.mod/mysql.c: In function `tcl_mysql_escape':
.././mysql.mod/mysql.c:267: warning: implicit declaration of function `mysql_real_escape_string'
.././mysql.mod/mysql.c:268: warning: implicit declaration of function `mysql_escape_string'
.././mysql.mod/mysql.c: In function `tcl_mysql_errno':
.././mysql.mod/mysql.c:283: warning: implicit declaration of function `mysql_errno'
.././mysql.mod/mysql.c: In function `tcl_mysql_ping':
.././mysql.mod/mysql.c:295: warning: implicit declaration of function `mysql_ping'
.././mysql.mod/mysql.c: In function `tcl_mysql_connectioninfo':
.././mysql.mod/mysql.c:306: syntax error before `*'
.././mysql.mod/mysql.c:308: `objs' undeclared (first use in this function)
.././mysql.mod/mysql.c:316: `count' undeclared (first use in this function)
.././mysql.mod/mysql.c: In function `tcl_mysql_insert_id':
.././mysql.mod/mysql.c:332: warning: implicit declaration of function `mysql_insert_id'
.././mysql.mod/mysql.c: In function `tcl_mysql_affected_rows':
.././mysql.mod/mysql.c:354: warning: implicit declaration of function `mysql_affected_rows'
.././mysql.mod/mysql.c: In function `closedb':
.././mysql.mod/mysql.c:362: warning: implicit declaration of function `mysql_close'
*** Error code 1

Stop in /usr/home/*****/eggdrop1.6.17/src/mod/mysql.mod.
*** Error code 1

Stop in /usr/home/*****/eggdrop1.6.17/src/mod.
*** Error code 1

Stop in /usr/home/*****/eggdrop1.6.17.
User avatar
demond
Revered One
Posts: 3073
Joined: Sat Jun 12, 2004 9:58 am
Location: San Francisco, CA
Contact:

Post by demond »

Code: Select all

../mysql.mod/mysql_mod.h:34: mysql/mysql.h: No such file or directory 
you don't have mySQL installed on that machine (or eggdrop's configure script couldn't find mysql.h actual location)
L
LtPhil
Voice
Posts: 26
Joined: Mon Jul 28, 2003 10:25 am

Post by LtPhil »

doh! is there any way to set up the mysql module without having mysql installed on that machine? i was intending to use another DB server anyways -_-

thanks for your help :)

p.s. i've already tried mysqltcl, and have been unable to get it to work. when i contacted my shell provider, he said he's never had any luck getting it to work either... maybe it just doesn't like freebsd? :P
User avatar
demond
Revered One
Posts: 3073
Joined: Sat Jun 12, 2004 9:58 am
Location: San Francisco, CA
Contact:

Post by demond »

nope, mysql.mod requires mySQL, it's just an interface to the actual database engine
L
LtPhil
Voice
Posts: 26
Joined: Mon Jul 28, 2003 10:25 am

Post by LtPhil »

oi... so any thoughts on what to do? all i wanna do is make my eggdrop on server A talk to my mySQL server on server B! is it really THAT difficult? :cry:

can't i just take the mysql.h that it's looking for and give it to it manually or something? it seems kinda unnecessarily limiting to require a user to have mysql installed on the same box as their eggdrop just to compile the module...
User avatar
demond
Revered One
Posts: 3073
Joined: Sat Jun 12, 2004 9:58 am
Location: San Francisco, CA
Contact:

Post by demond »

then you need to install mySQL client libraries only (mysql.h alone won't do)

download mySQL sources and ./configure --prefix=/home/you/mysql --without-server

naturally, when compiling mysql.mod afterwards, you'll have to specify the location of mySQL header (mysql.h) and client libraries - under directory /home/you/mysql
L
LtPhil
Voice
Posts: 26
Joined: Mon Jul 28, 2003 10:25 am

Post by LtPhil »

demond wrote:naturally, when compiling mysql.mod afterwards, you'll have to specify the location of mySQL header (mysql.h) and client libraries - under directory /home/you/mysql
how do i specify that? sorry for being a n00b, but the most i've done with eggdrop until now is write TCL scripts ;)
User avatar
demond
Revered One
Posts: 3073
Joined: Sat Jun 12, 2004 9:58 am
Location: San Francisco, CA
Contact:

Post by demond »

I've never used mysql.mod, but there might be some conf option, or in the absence of such you'll have to manually fix Makefile with correct pathnames for mysql.h and client libraries
Locked