Hallo, Ich habe das neulich hier angesprochene Programm molmol (http://www.mol.biol.ethz.ch/wuthrich/software/molmol/) unter kompiliert, jetzt überlege ich ein Paket zu bauen. Es läuft auch, macht auch brav seinen Output in tiff, jpeg und png-Dateien. Aber laut ldd ist das Binary nicht gegen die entsprechenden Bibliotheken (libtiff etc) gelinkt, sondern nur gegen die xlibs, xlibmesa, libmotif und libc.
Offenbar wurden die Output-Bibliotheken statisch gelinkt - aber woher kann das kommen? Ich habe das Makefile selber angepasst, mir ist nichts in der Richtung aufgefallen. Ein grep nach static in den Unter-Makefiles hat auchnirgendwo was gefunden. Zwar liefert das Programm im Sourcecode auch Sourcen für libtiff mit, aber die habe ich nicht angefasst, und soweit ich die Doku und die Makefiles verstanden habe sollte das auch make nicht tun (außerdem blieben dann noch jpg und png). Nun mal die Fakten: **********Makefile************ SRCDIRS = tools sg src SUBDIRS = $(SRCDIRS) lib TARGETS = default depend include debiandef # das ist von mir, wird nur für von mir eingefügte # targets gebraucht default: $(TARGETS): $(MAKE) $(SRCDIRS) TARGET=$@ $(SUBDIRS): FORCE cd $@; $(MAKE) $(TARGET) # dann nur noch clean etc. FORCE: **********Makefile************ In den SRCDIRS und Unterverzeichnissen dann entsprechende Makefiles, die alle ein include $(TOP)/makedef enthalten und letzlich dann die Compilerbefehle, z.B. TOP = ../.. include $(TOP)/makedef LIBDIR = $(TOP)/lib INCLUDES = -I$(TOOLSDIR)/include -I$(SGDIR)/include -I$(TOP)/include CPPFLAGS = $(INCLUDES) $(MCPPFLAGS) CFLAGS = $(CPPFLAGS) $(MCFLAGS) LIBS = $(LIBDIR)/libcip.a $(LIBDIR)/libcmd.a \ $(LIBDIR)/libui.a \ $(LIBDIR)/libgraph.a $(LIBDIR)/libio.a $(LIBDIR)/libpu.a \ $(LIBDIR)/libcalc.a $(LIBDIR)/libprim.a $(LIBDIR)/libdata.a \ $(LIBDIR)/libattr.a $(LIBDIR)/libfileio.a $(LIBDIR)/libos.a SGLIB = $(SGDIR)/lib/libsg.a TOOLSLIB = $(TOOLSDIR)/lib/libtools.a $(IMGLIB) PROGRAM = molmol OBJ = MolMol.o MolInit.o SRC = $(OBJ:.o=.c) default: $(PROGRAM) $(PROGRAM): $(OBJ) $(LIBS) $(SGLIB) $(TOOLSLIB) $(CC) -o $@ $(CFLAGS) $(OBJ) $(LIBS) $(SGLIB) $(TOOLSLIB) $(SYSLIB) clean: rm -f $(OBJ) $(PROGRAM) core *.ps depend: $(SRC) include $(TOP)/makedep ******************************* Interessant sind also wohl noch makedef und makedep - aber letztere Dateien sind hier alle leer. makedef habe ich selbst angepasst: [EMAIL PROTECTED]:~/src/Packages/molmol/molmol-2k.2.0$ grep -v ^# makedef | grep -v ^$ DEB_INCLUDEDIR = /usr/include DEB_LIBDIR = /usr/lib TIFFDIR = $(DEB_INCLUDEDIR) JPEGDIR = $(DEB_INCLUDEDIR) PNGDIR = $(DEB_INCLUDEDIR) ZLIBDIR = $(DEB_INCLUDEDIR) ********* ( bis hierhin alles von mir verändert bzw. eingeführt) ********* IMGDEF = -DTIFF_SUPPORT -DJPEG_SUPPORT -DPNG_SUPPORT IMGINCL = -I$(TIFFDIR) -I$(JPEGDIR) -I$(PNGDIR) -I$(ZLIBDIR) IMGLIB = $(DEB_LIBDIR)/libtiff.a $(DEB_LIBDIR)/libjpeg.a \ $(DEB_LIBDIR)/libpng.a $(DEB_LIBDIR)/libz.a CPP = /lib/cpp MCPPFLAGS = $(MISSFUNC) -I/usr/X11R6/include -L/usr/lib -L/usr/X11R6/lib #original CC = /usr/bin/cc MCFLAGS = -O RANLIB = /bin/true WAIT = /bin/sleep 2 SHELL = /bin/sh SGDEVDIR = ogl x11 no pov rib vrml1 vrml2 ps fm SGDEVDEF = -DSG_DEV_OGL -DSG_DEV_X11 -DSG_DEV_NO -DSG_DEV_POV -DSG_DEV_RIB -DSG_DEV_VRML1 -DSG_DEV_VRML2 -DSG_DEV_PS -DSG_DEV_CPS -DSG_DEV_FM3 -DSG_DEV_FM4 PUDEVDIR = motif tty PUDEVDEF = -DPU_DEV_MOTIF -DPU_DEV_TTY IODEVDIR = motogl motx11 ttyno IODEVDEF = -DIO_DEV_MOTIF_OGL -DIO_DEV_MOTIF_X11 -DIO_DEV_TTY_NO ********* die letzten Zeilen seit SHELL alle gemäß Anleitung angepasst ********* MOTIFDEF = -DFUNCPROTO SYSLIB = -lXm -lXt -lX11 -lm -lGL -lGLw -lGLU -lpthread ********* ab -lGL alles von mir, dann wieder zwei originale Zeilen ********* TOOLSDIR = $(TOP)/tools SGDIR = $(TOP)/sg Kann mir jemand helfen, oder was sollte ich lesen? Oder kann jemand eine Newsgroup empfehlen, in der man mir helfen könnte? TIA, Frank -- Frank Küster, Biozentrum der Univ. Basel Abt. Biophysikalische Chemie -- Haeufig gestellte Fragen und Antworten (FAQ): http://www.de.debian.org/debian-user-german-FAQ/ Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED] mit dem Subject "unsubscribe". Probleme? Mail an [EMAIL PROTECTED] (engl)