Page 1 of 1

Undefined references during linking

Posted: Sun Aug 15, 2010 6:47 am
by seisatsu
At the end of the compilation process, when GCC tries to link ircd, I get the following error.

Note: I am using a 64 bit system.

Code: Select all

gcc -I../include -I/var/unreal/extras/regexp/include -I/var/unreal/extras/c-ares/include -L../extras/c-ares/lib -pipe -g -O2 -funsigned-char -fno-strict-aliasing -Wno-pointer-sign -DZIP_LINKS -export-dynamic   -lssl -lcrypto -o ircd timesynch.o res.o s_bsd.o auth.o aln.o channel.o cloak.o crule.o dbuf.o events.o fdlist.o hash.o help.o ircd.o ircsprintf.o list.o lusers.o match.o modules.o packet.o parse.o s_auth.o s_conf.o s_debug.o s_err.o s_extra.o s_kline.o s_misc.o s_numeric.o s_serv.o s_svs.o  socket.o ssl.o s_user.o charsys.o scache.o send.o support.o umodes.o version.o whowas.o zip.o cidr.o random.o extcmodes.o extbans.o md5.o api-isupport.o api-command.o   -lcrypt -lnsl  -lz -ldl -L../extras/regexp/lib -ltre -lcares -lrt -lssl -lcrypto
res.o: In function `init_resolver':
/var/unreal/src/res.c:123: undefined reference to `config_error'
s_bsd.o: In function `add_connection':
/var/unreal/src/s_bsd.c:1266: undefined reference to `Find_ban'
s_bsd.o: In function `check_client':
/var/unreal/src/s_bsd.c:790: undefined reference to `AllowClient'
auth.o: In function `Auth_CheckError':
/var/unreal/src/auth.c:122: undefined reference to `config_error'
/var/unreal/src/auth.c:99: undefined reference to `config_error'
/var/unreal/src/auth.c:110: undefined reference to `config_error'
/var/unreal/src/auth.c:93: undefined reference to `config_error'
/var/unreal/src/auth.c:132: undefined reference to `config_error'
auth.o:/var/unreal/src/auth.c:140: more undefined references to `config_error' follow
hash.o: In function `throttle_can_connect':
/var/unreal/src/hash.c:912: undefined reference to `Find_except'
help.o: In function `Find_Help':
/var/unreal/src/help.c:38: undefined reference to `conf_help'
/var/unreal/src/help.c:32: undefined reference to `conf_help'
ircd.o: In function `check_pings':
/var/unreal/src/ircd.c:583: undefined reference to `Find_ban'
/var/unreal/src/ircd.c:563: undefined reference to `Find_ban'
/var/unreal/src/ircd.c:573: undefined reference to `Find_ban'
ircd.o: In function `main':
/var/unreal/src/ircd.c:1319: undefined reference to `config_verbose'
/var/unreal/src/ircd.c:1426: undefined reference to `init_dynconf'
/var/unreal/src/ircd.c:1439: undefined reference to `default_class'
/var/unreal/src/ircd.c:1446: undefined reference to `conf_class'
/var/unreal/src/ircd.c:1442: undefined reference to `default_class'
/var/unreal/src/ircd.c:1443: undefined reference to `default_class'
/var/unreal/src/ircd.c:1444: undefined reference to `default_class'
/var/unreal/src/ircd.c:1445: undefined reference to `default_class'
/var/unreal/src/ircd.c:1446: undefined reference to `default_class'
/var/unreal/src/ircd.c:1447: undefined reference to `init_conf'
ircd.o: In function `main':
/usr/include/bits/string3.h:123: undefined reference to `conf_me'
/usr/include/bits/string3.h:123: undefined reference to `conf_me'
ircd.o: In function `main':
/var/unreal/src/ircd.c:1519: undefined reference to `conf_listen'
/var/unreal/src/ircd.c:1529: undefined reference to `conf_listen'
/var/unreal/src/ircd.c:1530: undefined reference to `conf_listen'
/var/unreal/src/ircd.c:1532: undefined reference to `run_configuration'
ircd.o: In function `main':
/usr/include/bits/string3.h:123: undefined reference to `conf_listen'
ircd.o: In function `main':
/var/unreal/src/ircd.c:1547: undefined reference to `conf_listen'
/var/unreal/src/ircd.c:1554: undefined reference to `conf_me'
/var/unreal/src/ircd.c:1836: undefined reference to `rehash'
ircd.o: In function `try_connections':
/var/unreal/src/ircd.c:461: undefined reference to `conf_link'
/var/unreal/src/ircd.c:495: undefined reference to `conf_deny_link'
ircd.o: In function `main':
/var/unreal/src/ircd.c:1463: undefined reference to `config_error'
modules.o: In function `efunctions_check':
/var/unreal/src/modules.c:1718: undefined reference to `config_error'
/var/unreal/src/modules.c:1711: undefined reference to `config_error'
/var/unreal/src/modules.c:1706: undefined reference to `config_error'
modules.o: In function `callbacks_check':
/var/unreal/src/modules.c:1647: undefined reference to `config_error'
modules.o:/var/unreal/src/modules.c:1633: more undefined references to `config_error' follow
modules.o: In function `module_loadall':
/var/unreal/src/modules.c:940: undefined reference to `config_status'
modules.o: In function `Init_all_testing_modules':
/var/unreal/src/modules.c:556: undefined reference to `config_error'
modules.o: In function `DeleteTempModules':
/var/unreal/src/modules.c:185: undefined reference to `config_error'
modules.o: In function `Module_Depend_Resolve':
/var/unreal/src/modules.c:996: undefined reference to `config_progress'
/var/unreal/src/modules.c:1006: undefined reference to `config_progress'
/var/unreal/src/modules.c:1001: undefined reference to `config_progress'
s_extra.o: In function `ircd_log':
/var/unreal/src/s_extra.c:292: undefined reference to `conf_log'
s_extra.o: In function `channel_canjoin':
/var/unreal/src/s_extra.c:265: undefined reference to `conf_deny_channel'
/var/unreal/src/s_extra.c:267: undefined reference to `Find_channel_allowed'
s_extra.o: In function `dcc_sync':
/var/unreal/src/s_extra.c:108: undefined reference to `conf_deny_dcc'
s_extra.o: In function `dcc_wipe_services':
/var/unreal/src/s_extra.c:143: undefined reference to `conf_deny_dcc'
/var/unreal/src/s_extra.c:148: undefined reference to `conf_deny_dcc'
s_extra.o: In function `DCCdeny_del':
/var/unreal/src/s_extra.c:131: undefined reference to `conf_deny_dcc'
s_extra.o: In function `DCCdeny_add':
/var/unreal/src/s_extra.c:126: undefined reference to `conf_deny_dcc'
s_extra.o:/var/unreal/src/s_extra.c:86: more undefined references to `conf_deny_dcc' follow
s_extra.o: In function `dcc_isdiscouraged':
/var/unreal/src/s_extra.c:93: undefined reference to `conf_allow_dcc'
s_extra.o: In function `dcc_isforbidden':
/var/unreal/src/s_extra.c:60: undefined reference to `conf_deny_dcc'
/var/unreal/src/s_extra.c:67: undefined reference to `conf_allow_dcc'
s_misc.o: In function `exit_client':
/var/unreal/src/s_misc.c:517: undefined reference to `delete_classblock'
/var/unreal/src/s_misc.c:551: undefined reference to `listen_cleanup'
/var/unreal/src/s_misc.c:532: undefined reference to `delete_linkblock'
s_serv.o: In function `m_die':
/var/unreal/src/s_serv.c:1193: undefined reference to `conf_drpass'
s_serv.o: In function `m_botmotd':
/var/unreal/src/s_serv.c:1149: undefined reference to `Find_tld'
s_serv.o: In function `m_opermotd':
/var/unreal/src/s_serv.c:1003: undefined reference to `Find_tld'
s_serv.o: In function `m_motd':
/var/unreal/src/s_serv.c:948: undefined reference to `Find_tld'
s_serv.o: In function `short_motd':
/var/unreal/src/s_serv.c:862: undefined reference to `Find_tld'
s_serv.o: In function `rehash_motdrules':
/var/unreal/src/s_serv.c:593: undefined reference to `conf_tld'
s_serv.o: In function `m_restart':
/var/unreal/src/s_serv.c:818: undefined reference to `conf_drpass'
/var/unreal/src/s_serv.c:809: undefined reference to `conf_drpass'
s_serv.o: In function `m_rehash':
/var/unreal/src/s_serv.c:772: undefined reference to `rehash'
s_svs.o: In function `m_alias':
/var/unreal/src/s_svs.c:230: undefined reference to `Find_alias'
charsys.o: In function `charsys_test_language':
/var/unreal/src/charsys.c:433: undefined reference to `config_error'
charsys.o: In function `charsys_postconftest':
/var/unreal/src/charsys.c:396: undefined reference to `config_status'
/var/unreal/src/charsys.c:375: undefined reference to `config_error'
charsys.o: In function `charsys_addallowed':
/var/unreal/src/charsys.c:269: undefined reference to `config_error'
support.o: In function `unreal_copyfile':
/var/unreal/src/support.c:1800: undefined reference to `config_error'
/var/unreal/src/support.c:1782: undefined reference to `config_error'
/var/unreal/src/support.c:1793: undefined reference to `config_error'
support.o:/var/unreal/src/support.c:1807: more undefined references to `config_error' follow
collect2: ld returned 1 exit status
make[1]: *** [ircd] Error 1
make[1]: Leaving directory `/var/unreal/src'
make: *** [build] Error 2
mreiley@omega-15:/var/unreal$

Re: Undefined references during linking

Posted: Sun Aug 15, 2010 4:19 pm
by warg
It seems h.h isn't being included, however it should be (Note the -I../include).

Please tell us your distribution and version, gcc version, what steps you took to compile UnrealIRCd, and wether or not the sources have been modified.

Re: Undefined references during linking

Posted: Mon Aug 16, 2010 2:45 am
by seisatsu
It's Ubuntu 10.04 X86_64 Server Edition, and it's a VPS.
GCC 4.4.3
Sources are unmodified.
I ran ./Config, and then make. However, the VPS has limited resources, and my SSH session kept dying when compiling certain files. I would log back in, descend into the src directory, copy the exact GCC line that was last run, and run it under nohup. That way, after SSH died, when I logged back in, GCC would be done running and I could run make again. I only had to do this twice to compile the whole source. Make ran fine until the linking.

Re: Undefined references during linking

Posted: Wed Sep 01, 2010 8:58 pm
by seisatsu
Sorry for the double bump, but my issue is still not resolved.