sonnenblen.de - Das unabhängige Sun User Forum
Software => Programmieren, Kompilieren => Thema gestartet von: signal_15 am 03. Juni 2009, 09:27:04
-
Hi,
und wie versprochen, ein fehler beim kompilieren von sendmail.
...
...
ln -f -s ../../include/sm/os/sm_os_sunos.h sm_os.h
gcc -M -I. -I../../sendmail -I../../include -DNDBM -DNIS -DNISPLUS -DMAP_REGEX -DSOLARIS=20900 -DNETINET6 -DNOT_SENDMAIL vacation.c >> Makefile
make[1]: Leaving directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/vacation'
Making in /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/vacation
make[1]: Entering directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/vacation'
gcc -O -I. -I../../sendmail -I../../include -DNDBM -DNIS -DNISPLUS -DMAP_REGEX -DSOLARIS=20900 -DNETINET6 -DNOT_SENDMAIL -I/usr/local/include -I/usr/include -c -o vacation.o vacation.c
gcc -o vacation vacation.o /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmdb/libsmdb.a /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmutil/libsmutil.a /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsm/libsm.a -lresolv -lsocket -lnsl
Undefined first referenced
symbol in file
dbm_pagfno /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmdb/libsmdb.a(smndbm.o)
dbm_dirfno /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmdb/libsmdb.a(smndbm.o)
ld: fatal: Symbol referencing errors. No output written to vacation
collect2: ld returned 1 exit status
make[1]: *** [vacation] Error 1
make[1]: Leaving directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/vacation'
make: *** [all] Error 2
ismine/Download/sendmail-8.14.3$
weiss einer rat?
ct,
-
dbm_pagfno ist eine ndbm Funktion, die in /usr/include/ndbm.h als Define auf eine andere Funktion gemappt wird. Ich vermute daher, dass in Deinem Include Pfad ein anderes ndbm.h liegt (/usr/local/include ?), das vor /usr/include/ndbm.h gefunden wird. Du musst dafür sorgen, dass statt dessen /usr/include/ndbm.h eingefügt wird.
Rainer
-
@Reiner
ok. werde ich gleich mal ausprobieren.
ct,
-
kann mann denn beim kompilieren von sendmail keinen prefix setzen? ich will das ding nicht unter /usr/sbin haben.
ct,
-
nee, '/usr/local/include' rauslassen hat keine besserung gebracht.
gcc -O -I. -I../../sendmail -I../../include -DNDBM -DNIS -DNISPLUS -DMAP_REGEX -DSOLARIS=20900 -DNETINET6 -DNOT_SENDMAIL -I/usr/include -c -o vacation.o vacation.c
gcc -o vacation vacation.o /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmdb/libsmdb.a /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmutil/libsmutil.a /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsm/libsm.a -lresolv -lsocket -lnsl
Undefined first referenced
symbol in file
dbm_pagfno /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmdb/libsmdb.a(smndbm.o)
dbm_dirfno /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmdb/libsmdb.a(smndbm.o)
ld: fatal: Symbol referencing errors. No output written to vacation
collect2: ld returned 1 exit status
make[1]: *** [vacation] Error 1
make[1]: Leaving directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/vacation'
make: *** [all] Error 2
ct,
-
nee, '/usr/local/include' rauslassen hat keine besserung gebracht.
Undefined first referenced
symbol in file
dbm_pagfno /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmdb/libsmdb.a(smndbm.o)
dbm_dirfno /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmdb/libsmdb.a(smndbm.o)
ld: fatal: Symbol referencing errors. No output written to vacation
Ist denn libsmdb.a bzw. das Objekt smndbm.o nach der Änderung auch wirklich neu übersetzt worden?
Wie bereits von Rainer erwähnt handelt es sich bei dbm_pagfno und dbm_dirfno um Makros, es gibt also gar kein Symbol das referenziert werden müsste. Versuch mal vorher ein 'make clean' um die bereits übersetzte Bibliothek libsmdb.a platt zu machen.
-
nein. ein 'make clean' hat keine besserung gebracht.
gcc -O -I. -I../../sendmail -I../../include -DNDBM -DNIS -DNISPLUS -DMAP_REGEX -DSOLARIS=20900 -DNETINET6 -DNOT_SENDMAIL -I/usr/include -c -o vacation.o vacation.c
gcc -o vacation vacation.o /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmdb/libsmdb.a /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmutil/libsmutil.a /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsm/libsm.a -lresolv -lsocket -lnsl
Undefined first referenced
symbol in file
dbm_pagfno /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmdb/libsmdb.a(smndbm.o)
dbm_dirfno /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmdb/libsmdb.a(smndbm.o)
ld: fatal: Symbol referencing errors. No output written to vacation
collect2: ld returned 1 exit status
make[1]: *** [vacation] Error 1
make[1]: Leaving directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/vacation'
make: *** [all] Error 2
ct,
-
Mahlzeit,
aus den gruppen comp.mail.sendmail und comp.unix.solaris habe ich ein paar infos und anregungen bekommen und schrieb mir folgende 'devtools/Site/site.config.m4' zusammen. ob sich das problem bezuglich ndbm geloest hat kann ich noch nicht sagen. denke aber schon, da es nun mit BerkeleyDB kompiliert wird.
site.config.m4
APPENDDEF(`confINCDIRS', `-I/usr/local/ssl/include/openssl')
APPENDDEF(`confINCDIRS', `-I/usr/local/BerkeleyDB.4.7/include')
APPENDDEF(`confENVDEF', `-UNIS')
APPENDDEF(`confENVDEF',`-DSTARTTLS')
APPENDDEF(`conf_sendmail_LIBS', `-lsasl2 -lthread')
APPENDDEF(`conf_sendmail_LIBS', `-lssl -lcrypto')
APPENDDEF(`conf_sendmail_LIBS', `-lresolv')
define(`confLIBDIRS', `-L/usr/local/lib -R/usr/local/lib')
define(`confMAPDEF', `-DNEWDB')
define(`confHFDIR', `/usr/local/etc/mail')
define(`confINCDIRS', `-I/usr/local/include')
define(`confINCDIRS', `-I/usr/local/ssl/include/openssl')
define(`confINCGRP', `root')
define(`confINCMODE', `644')
define(`confINCLUDEDIR', `/usr/local/include')
define(`confEBINDIR', `/usr/local/bin')
define(`confLIBDIR', `/usr/local/lib')
define(`confLIBGRP', `root')
define(`confLIBMODE', `644')
define(`confLIBSEARCHPATH', `/lib /usr/lib /usr/shlib /usr/local/lib')
define(`confMANROOT', `/usr/local/man/cat')
define(`MANROOTMAN', `/usr/local/man/man')
define(`confMANOWN', `root')
define(`confMANGRP', `root')
define(`confMANMODE', `644')
define(`confMBINDIR', `/usr/local/sbin')
define(`confMBINOWN', `root')
define(`confMBINGRP', `root')
define(`confMBINMODE', `755')
define(`confSBINDIR', `/usr/local/sbin')
define(`confSBINOWN', `root')
define(`confSBINGRP', `root')
define(`confSHAREDLIBDIR', `/usr/local/lib')
define(`confSTDIR', `/usr/local/etc/mail')
define(`confUBINDIR', `/usr/local/bin')
define(`confUBINGRP', `root')
define(`confUBINOWN', `root')
define(`confUBINMODE', `755')
define(`confCC', `cc')
jedenfalls laeuft das ganze in einen fehler bezueglich nicht gefundener ssl.h die unter /usr/local/ssl/include/openssl liegt und eigentlich auch in der site.config.m4 angegeben wird.
...
...
Making all in:
/Download/sendmail-8.14.3/vacation
Configuration: pfx=, os=SunOS, rel=5.9, rbase=5, rroot=5.9, arch=sun4, sfx=, variant=optimized
Making in /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/vacation
make[1]: Entering directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/vacation'
(cd ../../libsmutil; sh Build )
Configuration: pfx=, os=SunOS, rel=5.9, rbase=5, rroot=5.9, arch=sun4, sfx=, variant=optimized
Making in /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmutil
make[2]: Entering directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmutil'
cc -O -I. -I../../sendmail -I../../include -I/usr/local/include -DNEWDB -DSOLARIS=20900 -DNETINET6 -UNIS -DSTARTTLS -DNOT_SENDMAIL -I/usr/local/include -I/usr/include -I/usr/local/ssl/include/openssl -c -o debug.o debug.c
In file included from debug.c:11:
../../sendmail/sendmail.h:125:27: openssl/ssl.h: No such file or directory
In file included from debug.c:11:
../../sendmail/sendmail.h:694: error: syntax error before "SSL"
../../sendmail/sendmail.h:694: warning: no semicolon at end of struct or union
../../sendmail/sendmail.h:697: error: syntax error before '}' token
../../sendmail/sendmail.h:1451: error: field `sv_mci' has incomplete type
../../sendmail/sendmail.h:1883: error: syntax error before '*' token
../../sendmail/sendmail.h:1887: error: syntax error before '*' token
../../sendmail/sendmail.h:1888: error: syntax error before '*' token
../../sendmail/sendmail.h:2630: error: syntax error before '*' token
make[2]: *** [debug.o] Error 1
make[2]: Leaving directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmutil'
make[1]: *** [/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmutil/libsmutil.a] Error 2
make[1]: Leaving directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/vacation'
make: *** [all] Error 2
ct,
-
-I/usr/local/ssl/include/openssl >> -I/usr/local/ssl/include
im Moment wuerde er ssl.h in /usr/local/ssl/include/openssl/openssl suchen
Mfg. erisch
-
ich glaube dem Build-skript ist es egal was ich in die site.config.m4 reinschreibe. keine aenderung. ich habe jetzt folgendes in meiner .profile datei
CFLAGS="-mcpu=ultrasparc -m64 -O3"
CXXFLAGS="-mcpu=ultrasparc -m64 -O3"
CPPFLAGS="-I/usr/local/include -I/usr/include -I/usr/local/ssl/include -I/usr/local/BerkeleyDB.4.7/include"
LDFLAGS="-R/usr/local/lib -L/usr/local/lib -L/opt/SUNWspro/lib"
und siehe da! die ssl.h sowie die db.h werden nun gefunden. dafuer aber nun folgender fehler.
cc -o sendmail -L/usr/local/lib -R/usr/local/lib main.o alias.o arpadate.o bf.o collect.o conf.o control.o convtime.o daemon.o deliver.o domain.o envelope.o err.o headers.o macro.o map.o mci.o milter.o mime.o parseaddr.o queue.o ratectrl.o readcf.o recipient.o sasl.o savemail.o sfsasl.o shmticklib.o sm_resolve.o srvrsmtp.o stab.o stats.o sysexits.o timers.o tls.o trace.o udb.o usersmtp.o util.o version.o /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmutil/libsmutil.a /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsm/libsm.a -lresolv -lsocket -lnsl -lssl -lcrypto
ld: fatal: library -lssl: not found
ld: fatal: library -lcrypto: not found
ld: fatal: File processing errors. No output written to sendmail
collect2: ld returned 1 exit status
make[1]: *** [sendmail] Error 1
make[1]: Leaving directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/sendmail'
Making all in:
/Download/sendmail-8.14.3/editmap
Configuration: pfx=, os=SunOS, rel=5.9, rbase=5, rroot=5.9, arch=sun4, sfx=, variant=optimized
Making in /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/editmap
make[1]: Entering directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/editmap'
cc -O -I. -I../../sendmail -I../../include -I/usr/local/include -DNEWDB -DSOLARIS=20900 -DNETINET6 -UNIS -DSTARTTLS -DNOT_SENDMAIL -I/usr/local/include -I/usr/include -I/usr/local/ssl/include -I/usr/local/BerkeleyDB.4.7/include -c -o editmap.o editmap.c
cc -o editmap -L/usr/local/lib -R/usr/local/lib editmap.o /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmdb/libsmdb.a /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmutil/libsmutil.a /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsm/libsm.a -lresolv -lsocket -lnsl -lssl -lcrypto
ld: fatal: library -lssl: not found
ld: fatal: library -lcrypto: not found
ld: fatal: File processing errors. No output written to editmap
collect2: ld returned 1 exit status
make[1]: *** [editmap] Error 1
make[1]: Leaving directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/editmap'
Making all in:
/Download/sendmail-8.14.3/mail.local
Configuration: pfx=, os=SunOS, rel=5.9, rbase=5, rroot=5.9, arch=sun4, sfx=, variant=optimized
Making in /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/mail.local
make[1]: Entering directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/mail.local'
cc -O -I. -I../../sendmail -I../../include -I/usr/local/include -DNEWDB -DSOLARIS=20900 -DNETINET6 -UNIS -DSTARTTLS -DNOT_SENDMAIL -I/usr/local/include -I/usr/include -I/usr/local/ssl/include -I/usr/local/BerkeleyDB.4.7/include -c -o mail.local.o mail.local.c
cc -o mail.local -L/usr/local/lib -R/usr/local/lib mail.local.o /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsm/libsm.a -lresolv -lsocket -lnsl -lssl -lcrypto
ld: fatal: library -lssl: not found
ld: fatal: library -lcrypto: not found
ld: fatal: File processing errors. No output written to mail.local
collect2: ld returned 1 exit status
make[1]: *** [mail.local] Error 1
make[1]: Leaving directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/mail.local'
Making all in:
/Download/sendmail-8.14.3/mailstats
Configuration: pfx=, os=SunOS, rel=5.9, rbase=5, rroot=5.9, arch=sun4, sfx=, variant=optimized
Making in /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/mailstats
make[1]: Entering directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/mailstats'
cc -O -I. -I../../sendmail -I../../include -I/usr/local/include -DNEWDB -DSOLARIS=20900 -DNETINET6 -UNIS -DSTARTTLS -DNOT_SENDMAIL -I/usr/local/include -I/usr/include -I/usr/local/ssl/include -I/usr/local/BerkeleyDB.4.7/include -c -o mailstats.o mailstats.c
cc -o mailstats -L/usr/local/lib -R/usr/local/lib mailstats.o /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmutil/libsmutil.a /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsm/libsm.a -lresolv -lsocket -lnsl -lssl -lcrypto
ld: fatal: library -lssl: not found
ld: fatal: library -lcrypto: not found
ld: fatal: File processing errors. No output written to mailstats
collect2: ld returned 1 exit status
make[1]: *** [mailstats] Error 1
make[1]: Leaving directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/mailstats'
Making all in:
/Download/sendmail-8.14.3/makemap
Configuration: pfx=, os=SunOS, rel=5.9, rbase=5, rroot=5.9, arch=sun4, sfx=, variant=optimized
Making in /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/makemap
make[1]: Entering directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/makemap'
cc -O -I. -I../../sendmail -I../../include -I/usr/local/include -DNEWDB -DSOLARIS=20900 -DNETINET6 -UNIS -DSTARTTLS -DNOT_SENDMAIL -I/usr/local/include -I/usr/include -I/usr/local/ssl/include -I/usr/local/BerkeleyDB.4.7/include -c -o makemap.o makemap.c
cc -o makemap -L/usr/local/lib -R/usr/local/lib makemap.o /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmdb/libsmdb.a /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmutil/libsmutil.a /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsm/libsm.a -lresolv -lsocket -lnsl -lssl -lcrypto
ld: fatal: library -lssl: not found
ld: fatal: library -lcrypto: not found
ld: fatal: File processing errors. No output written to makemap
collect2: ld returned 1 exit status
make[1]: *** [makemap] Error 1
make[1]: Leaving directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/makemap'
Making all in:
/Download/sendmail-8.14.3/praliases
Configuration: pfx=, os=SunOS, rel=5.9, rbase=5, rroot=5.9, arch=sun4, sfx=, variant=optimized
Making in /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/praliases
make[1]: Entering directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/praliases'
cc -O -I. -I../../sendmail -I../../include -I/usr/local/include -DNEWDB -DSOLARIS=20900 -DNETINET6 -UNIS -DSTARTTLS -DNOT_SENDMAIL -I/usr/local/include -I/usr/include -I/usr/local/ssl/include -I/usr/local/BerkeleyDB.4.7/include -c -o praliases.o praliases.c
cc -o praliases -L/usr/local/lib -R/usr/local/lib praliases.o /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmdb/libsmdb.a /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmutil/libsmutil.a /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsm/libsm.a -lresolv -lsocket -lnsl -lssl -lcrypto
ld: fatal: library -lssl: not found
ld: fatal: library -lcrypto: not found
ld: fatal: File processing errors. No output written to praliases
collect2: ld returned 1 exit status
make[1]: *** [praliases] Error 1
make[1]: Leaving directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/praliases'
Making all in:
/Download/sendmail-8.14.3/rmail
Configuration: pfx=, os=SunOS, rel=5.9, rbase=5, rroot=5.9, arch=sun4, sfx=, variant=optimized
Making in /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/rmail
make[1]: Entering directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/rmail'
cc -O -I. -I../../sendmail -I../../include -I/usr/local/include -DNEWDB -DSOLARIS=20900 -DNETINET6 -UNIS -DSTARTTLS -I/usr/local/include -I/usr/include -I/usr/local/ssl/include -I/usr/local/BerkeleyDB.4.7/include -c -o rmail.o rmail.c
cc -o rmail -L/usr/local/lib -R/usr/local/lib rmail.o /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsm/libsm.a -lresolv -lsocket -lnsl -lssl -lcrypto
ld: fatal: library -lssl: not found
ld: fatal: library -lcrypto: not found
ld: fatal: File processing errors. No output written to rmail
collect2: ld returned 1 exit status
make[1]: *** [rmail] Error 1
make[1]: Leaving directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/rmail'
Making all in:
/Download/sendmail-8.14.3/smrsh
Configuration: pfx=, os=SunOS, rel=5.9, rbase=5, rroot=5.9, arch=sun4, sfx=, variant=optimized
Making in /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/smrsh
make[1]: Entering directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/smrsh'
cc -O -I. -I../../sendmail -I../../include -I/usr/local/include -DNEWDB -DSOLARIS=20900 -DNETINET6 -UNIS -DSTARTTLS -DNOT_SENDMAIL -I/usr/local/include -I/usr/include -I/usr/local/ssl/include -I/usr/local/BerkeleyDB.4.7/include -c -o smrsh.o smrsh.c
cc -o smrsh -L/usr/local/lib -R/usr/local/lib smrsh.o /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsm/libsm.a -lresolv -lsocket -lnsl -lssl -lcrypto
ld: fatal: library -lssl: not found
ld: fatal: library -lcrypto: not found
ld: fatal: File processing errors. No output written to smrsh
collect2: ld returned 1 exit status
make[1]: *** [smrsh] Error 1
make[1]: Leaving directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/smrsh'
Making all in:
/Download/sendmail-8.14.3/vacation
Configuration: pfx=, os=SunOS, rel=5.9, rbase=5, rroot=5.9, arch=sun4, sfx=, variant=optimized
Making in /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/vacation
make[1]: Entering directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/vacation'
cc -O -I. -I../../sendmail -I../../include -I/usr/local/include -DNEWDB -DSOLARIS=20900 -DNETINET6 -UNIS -DSTARTTLS -DNOT_SENDMAIL -I/usr/local/include -I/usr/include -I/usr/local/ssl/include -I/usr/local/BerkeleyDB.4.7/include -c -o vacation.o vacation.c
cc -o vacation -L/usr/local/lib -R/usr/local/lib vacation.o /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmdb/libsmdb.a /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmutil/libsmutil.a /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsm/libsm.a -lresolv -lsocket -lnsl -lssl -lcrypto
ld: fatal: library -lssl: not found
ld: fatal: library -lcrypto: not found
ld: fatal: File processing errors. No output written to vacation
collect2: ld returned 1 exit status
make[1]: *** [vacation] Error 1
make[1]: Leaving directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/vacation'
make: *** [all] Error 2
ach gott, wie war das doch noch mal mit den libs?
ct,
-
-L/usr/local/ssl/lib -R/usr/local/ssl/lib (oder wo auch immer die libs rumfliegen)
-
Hallo Erish,
keine besserung. die variablene habe ich wie folgend gesetzt ...
CFLAGS="-mcpu=ultrasparc -m64 -O3"
CXXFLAGS="-mcpu=ultrasparc -m64 -O3"
CPPFLAGS="-I/usr/local/include -I/usr/include -I/usr/local/ssl/include -I/usr/local/BerkeleyDB.4.7/include"
LDFLAGS="-R/usr/local/lib -L/usr/local/lib -L/opt/SUNWspro/lib -R/usr/local/ssl/lib -L/usr/local/ssl/lib -R/usr/local/BerkeleyDB.4.7/lib -L/usr/local/BerkeleyDB.4.7/lib"
... und in die site.config.m4 sieht so aus.
APPENDDEF(`confINCDIRS', `-I/usr/local/ssl/include/')
APPENDDEF(`confINCDIRS', `-I/usr/local/BerkeleyDB.4.7/include')
APPENDDEF(`confENVDEF', `-UNIS')
APPENDDEF(`confENVDEF',`-DSTARTTLS')
APPENDDEF(`conf_sendmail_LIBS', `-lsasl2 -lthread')
APPENDDEF(`conf_sendmail_LIBS', `-lssl -lcrypto')
APPENDDEF(`conf_sendmail_LIBS', `-lresolv')
define(`confLIBDIRS', `-L/usr/local/lib -R/usr/local/lib L/usr/local/ssl/lib -R/usr/local/ssl/lib')
define(`confMAPDEF', `-DNEWDB')
define(`confHFDIR', `/usr/local/etc/mail')
define(`confINCDIRS', `-I/usr/local/include')
define(`confINCDIRS', `-I/usr/local/ssl/include/')
define(`confINCGRP', `root')
define(`confINCMODE', `644')
define(`confINCLUDEDIR', `/usr/local/include')
define(`confEBINDIR', `/usr/local/bin')
define(`confLIBDIR', `/usr/local/lib')
define(`confLIBGRP', `root')
define(`confLIBMODE', `644')
define(`confLIBSEARCHPATH', `/lib /usr/lib /usr/shlib /usr/local/lib')
define(`confMANROOT', `/usr/local/man/cat')
define(`MANROOTMAN', `/usr/local/man/man')
define(`confMANOWN', `root')
define(`confMANGRP', `root')
define(`confMANMODE', `644')
define(`confMBINDIR', `/usr/local/sbin')
define(`confMBINOWN', `root')
define(`confMBINGRP', `root')
define(`confMBINMODE', `755')
define(`confSBINDIR', `/usr/local/sbin')
define(`confSBINOWN', `root')
define(`confSBINGRP', `root')
define(`confSHAREDLIBDIR', `/usr/local/lib')
define(`confSTDIR', `/usr/local/etc/mail')
define(`confUBINDIR', `/usr/local/bin')
define(`confUBINGRP', `root')
define(`confUBINOWN', `root')
define(`confUBINMODE', `755')
define(`confCC', `cc')
und trotzdem der selbe fehler bezuglich fehlender -lssl und -lcrypto.
Making all in:
/Download/sendmail-8.14.3/vacation
Configuration: pfx=, os=SunOS, rel=5.9, rbase=5, rroot=5.9, arch=sun4, sfx=, variant=optimized
Making in /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/vacation
make[1]: Entering directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/vacation'
cc -O -I. -I../../sendmail -I../../include -I/usr/local/include -DNEWDB -DSOLARIS=20900 -DNETINET6 -UNIS -DSTARTTLS -DNOT_SENDMAIL -I/usr/local/include -I/usr/include -I/usr/local/ssl/include -I/usr/local/BerkeleyDB.4.7/include -c -o vacation.o vacation.c
cc -o vacation -L/usr/local/lib -R/usr/local/lib vacation.o /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmdb/libsmdb.a /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmutil/libsmutil.a /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsm/libsm.a -lresolv -lsocket -lnsl -lssl -lcrypto
ld: fatal: library -lssl: not found
ld: fatal: library -lcrypto: not found
ld: fatal: File processing errors. No output written to vacation
collect2: ld returned 1 exit status
make[1]: *** [vacation] Error 1
make[1]: Leaving directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/vacation'
make: *** [all] Error 2
ismine/Download/sendmail-8.14.3$
ct,
-
define(`confLIBDIRS', `-L/usr/local/lib -R/usr/local/lib L/usr/local/ssl/lib -R/usr/local/ssl/lib')
da fehlt schonmal das "-" vorm L
und manchmal frisst der verwendete Buildmechanismus die als Env-Variablen gesetzten Flags nicht. In solchen Faellen kann man die betreffende Zeile
cc -o vacation -L/usr/local/lib -R/usr/local/lib vacation.o /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmdb/libsmdb.a /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmutil/libsmutil.a /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsm/libsm.a -lresolv -lsocket -lnsl -lssl -lcrypto
auch per Hand rauskopieren, die entsprechenden Flags einsetzen und einzeln kompilieren. Alternativ kann man auch das makefile anpassen und die Flags nachtragen.
-
[code]ja, du hast recht. das fehlende minus zeichen ist mir dann auch aufgefallen als cc meinte es koennte das file L/usr/... nicht finden.
so wie's aussieht sollte man lieber 'APPENDDEF' zum erstellen von listen fuer verzeichnisse hernehme als 'define', da dieses die werte jedesmal zuruecksetzt. ausserdem scheint es so, dass die site.config.m4 mittels -f option angegeben werden muss. ueberall steht zwar man kann diese option benutzen, aber ich habe definitiv andere/bessere ergebnisse mit dieser option. die site.config.m4 sieht jetzt so aus.
APPENDDEF(`confINCDIRS', `-I/usr/local/ssl/include/')
APPENDDEF(`confINCDIRS', `-I/usr/local/BerkeleyDB.4.7/include')
APPENDDEF(`confINCDIRS', `-I/usr/local/include')
APPENDDEF(`confENVDEF', `-UNIS')
APPENDDEF(`confENVDEF',`-DSTARTTLS')
APPENDDEF(`conf_sendmail_LIBS', `-lsasl2 -lthread')
APPENDDEF(`conf_sendmail_LIBS', `-lssl -lcrypto')
APPENDDEF(`conf_sendmail_LIBS', `-lresolv')
APPENDDEF(`confLIBDIRS', `-L/usr/local/lib')
APPENDDEF(`confLIBDIRS', `-L/usr/local/ssl/lib')
APPENDDEF(`confLIBDIRS', `-L/usr/local/BerkeleyDB.4.7/lib')
APPENDDEF(`confLIBDIRS', `-R/usr/local/lib')
APPENDDEF(`confLIBDIRS', `-R/usr/local/ssl/lib')
APPENDDEF(`confLIBDIRS', `-R/usr/local/BerkeleyDB.4.7/lib')
define(`confLIBSEARCH', `')
define(`confMAPDEF', `-DNEWDB')
define(`confHFDIR', `/usr/local/etc/mail')
define(`confINCGRP', `root')
define(`confINCMODE', `644')
define(`confEBINDIR', `/usr/local/bin')
define(`confLIBGRP', `root')
define(`confLIBMODE', `644')
define(`confMANROOT', `/usr/local/man/cat')
define(`MANROOTMAN', `/usr/local/man/man')
define(`confMANOWN', `root')
define(`confMANGRP', `root')
define(`confMANMODE', `644')
define(`confMBINDIR', `/usr/local/sbin')
define(`confMBINOWN', `root')
define(`confMBINGRP', `root')
define(`confMBINMODE', `755')
define(`confSBINDIR', `/usr/local/sbin')
define(`confSBINOWN', `root')
define(`confSBINGRP', `root')
define(`confSHAREDLIBDIR', `/usr/local/lib')
define(`confSTDIR', `/usr/local/etc/mail')
define(`confUBINDIR', `/usr/local/bin')
define(`confUBINGRP', `root')
define(`confUBINOWN', `root')
define(`confUBINMODE', `755')
define(`confCC', `cc')
[/code]
und produziert folgenden fehler:
Including /Download/sendmail-8.14.3/devtools/Site/site.config.m4
Making dependencies in /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/vacation
make[1]: Entering directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/vacation'
if [ -r /usr/include/sysexits.h ]; \
then \
ln -s /usr/include/sysexits.h; \
fi
rm -f sm_os.h
ln -f -s ../../include/sm/os/sm_os_sunos.h sm_os.h
cc -M -I. -I../../sendmail -I../../include -I/usr/local/ssl/include/ -I/usr/local/BerkeleyDB.4.7/include -I/usr/local/include -DNEWDB -DSOLARIS=20900 -DNETINET6 -UNIS -DSTARTTLS -DNOT_SENDMAIL vacation.c >> Makefile
make[1]: Leaving directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/vacation'
Making in /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/vacation
make[1]: Entering directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/vacation'
cc -O -I. -I../../sendmail -I../../include -I/usr/local/ssl/include/ -I/usr/local/BerkeleyDB.4.7/include -I/usr/local/include -DNEWDB -DSOLARIS=20900 -DNETINET6 -UNIS -DSTARTTLS -DNOT_SENDMAIL -c -o vacation.o vacation.c
cc -o vacation -L/usr/local/lib -L/usr/local/ssl/lib -L/usr/local/BerkeleyDB.4.7/lib -R/usr/local/lib -R/usr/local/ssl/lib -R/usr/local/BerkeleyDB.4.7/lib vacation.o /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmdb/libsmdb.a /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmutil/libsmutil.a /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsm/libsm.a -lsocket -lnsl
Undefined first referenced
symbol in file
db_version /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmdb/libsmdb.a(smdb2.o)
db_create /Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/libsmdb/libsmdb.a(smdb2.o)
ld: fatal: Symbol referencing errors. No output written to vacation
collect2: ld returned 1 exit status
make[1]: *** [vacation] Error 1
make[1]: Leaving directory `/Download/sendmail-8.14.3/obj.SunOS.5.9.sun4/vacation'
make: *** [all] Error 2
ct,
-
"-ldb" fehlt in der Zeile, das sieht aber nach nem Bug im Makefile aus oder du machst wieder irgendwas haarstraeubendes ...
-
woher weisst du, dass ein '-ldb' fehlt? und wie bekomme ich das rein?
haarstreubendes? ich? neee! diesmal wirklich nicht. ich habe die CPPFLAGS und LDFLAGS rausgeschmissen und LD_LIBRARY_PATH benutze ich diesmal auch nicht.-)
ct,
-
heah!? war's das etwa schon? ich habe "APPENDDEF(`confLIBS', `-ldb')" in die site.config.m4 mit aufgenommen und siehe da. kein ERROR zu sehen. aber irgendwie traue ich der sache aber nicht. irgendwas muss bestimmt noch im argen liegen.
ct,
-
woher weisst du, dass ein '-ldb' fehlt?
google weiss alles und die Minute hab ich auch noch uebrig ;)
aber irgendwie traue ich der sache aber nicht. irgendwas muss bestimmt noch im argen liegen.
naja, wenns funktioniert ist es gut. Kannst ja schauen obs vedaechtige Warnungen gibt.
-
jetzt ist erst mal feierabend. morgen schaue ich mir das ganze noch mal genau an. dann muss ich auch noch sehen ob die milter unterstuetzt werden.
@erisch, ich danke dir fuer deine unterstuetzung.
ct,