Magic Mailing List |
|
From: Michael Doster (mtdos AT erols DOT com) Date: Fri Mar 28 2003 - 20:03:32 EST
Stefan, Check to make sure that -fno-common is in your gcc compilation line also, because that's what the "common" errors usually mean. I was able to successfully compile Magic-7.2.32 for Mac OS X w/ the Tcl interface without incident so I know it really does work. -- Mike Doster > Hi everyone, > > I am trying to compile magic 7.2.32 on MacOS X 10.2.4 and compile fails > at the end. > > Prior to making the files I installed Apple's latest X11 beta3 and by > using fink, I installed tcl/tk version 8.4. > > First, I tried the recommended configuration using OpenGL + X11 and I > got those error messages when compiling libgraphics.o > > --- linking libgraphics.o > rm -f libgraphics.o > ld -r grMain.o grLock.o grDStyle.o grText.o grCMap.o grClip.o > grGlyphs.o grNull.o W3Dmain.o grTk1.o grTk2.o grTk3.o gr > Tk4.o grTk5.o grTOGL1.o grTOGL2.o grTOGL3.o grTOGL4.o grTOGL5.o > grTkCommon.o -o libgraphics.o > ld: multiple definitions of symbol _grXdpy > grTk1.o definition of _grXdpy in section (__DATA,__common) > grTOGL1.o definition of _grXdpy in section (__DATA,__common) > ld: multiple definitions of symbol _grXscrn > grTk1.o definition of _grXscrn in section (__DATA,__common) > grTOGL1.o definition of _grXscrn in section (__DATA,__common) > ld: multiple definitions of symbol _grPixels > grTk1.o definition of _grPixels in section (__DATA,__common) > grTOGL2.o definition of _grPixels in section (__DATA,__common) > ld: multiple definitions of symbol _grPlanes > grTk1.o definition of _grPlanes in section (__DATA,__common) > grTOGL2.o definition of _grPlanes in section (__DATA,__common) > ld: multiple definitions of symbol _grCursors > grTk5.o definition of _grCursors in section (__DATA,__common) > grTOGL5.o definition of _grCursors in section (__DATA,__common) > make[2]: *** [libgraphics.o] Error 1 > > This error seemed to prevent compilation of the tcl shared libs. One of > the first error of compilation was: > > make[2]: *** No rule to make target `../graphics/libgraphics.o', needed > by `tclmagic.dylib'. Stop. > > Ok, I suspected that choosing the X11+OpenGL fopr magic is not yet > working for MacOS X. Am I right? > > Now I chose only X11 and libgraphics.o got compiled no problem (same > thing with OpenGL). However, the tcl shared libs did not. I suspect I > did not choose the right file for tcl/tk shared libs. In make config, I > answered the following questions like this: > > Tcl shared object library directory: /sw/lib > Tcl shared object: libtcl8.4.dylib > Tk shared object library directory: /sw/lib > Tk shared object: libtk8.4.dylib > > The error messages I got from the make.log contained the following: > > /usr/bin/libtool: can't locate file for: -llibtcl.dylib > /usr/bin/libtool: file: -llibtcl.dylib is not an object file (not > allowed in a library) > /usr/bin/libtool: can't locate file for: -llibtk.dylib > /usr/bin/libtool: file: -llibtk.dylib is not an object file (not > allowed in a library) > > So now I suspect the libtcl.dylib and libtk.dylib are not the shared > object files. I looked for a libtcl.so and libtk.so files (or something > similar) and found none on my system. In the fink installer (for those > who know about it) it shows I have installed the tcltk, tcktk-dev and > tcktk-shlibs. > > From all of this, I would like to know if someone knows where my > problem is? > > I included the last portion of the make.log file where you can see the > error messages for the Tcl/Tk shared libraries at the end of this email. > > Best regards, > > Stefan Robert > University of Sherbrooke > > > --- making Tcl shared libraries > for dir in magic ext2sim ext2spice plot router; do \ > (cd $dir && make tcl-main); done > cc -g -I/sw/include -I/sw/include -I/usr/X11R6/include -I/sw/include > -O2 -fno-common -I. -I.. -DMAGIC_WRAPPER > -DTCL_DIR=\"/Users/stefan/cad/lib/magic/tcl > \" -DHAVE_LIMITS_H -Dmacosx -DmacII -DCALMA_MODULE -DCIF_MODULE > -DPLOT_AUTO -DNONMANHATTAN -DROUTE_AUTO -DUSE_NEW_MACROS > -DCAD_DIR=\"/Users/stefan/cad\" - > DMAGIC_VERSION="\"7.2\"" -DMAGIC_DATE="\"`date`\"" tclmagic.c -c -o > tclmagic.o > tclmagic.c: In function `TagCallback': > tclmagic.c:155: warning: assignment discards qualifiers from pointer > target type > tclmagic.c: In function `_tcl_dispatch': > tclmagic.c:351: warning: passing arg 3 of `Tcl_GetIndexFromObj' from > incompatible pointer type > tclmagic.c: In function `MakeWindowCommand': > tclmagic.c:439: warning: passing arg 3 of `Tcl_CreateCommand' from > incompatible pointer type > tclmagic.c: In function `TxParseString': > tclmagic.c:605: warning: assignment discards qualifiers from pointer > target type > tclmagic.c: In function `Tclmagic_Init': > tclmagic.c:839: warning: passing arg 3 of `Tcl_CreateCommand' from > incompatible pointer type > tclmagic.c:845: warning: passing arg 3 of `Tcl_CreateCommand' from > incompatible pointer type > tclmagic.c:850: warning: passing arg 3 of `Tcl_CreateCommand' from > incompatible pointer type > tclmagic.c:861: warning: passing arg 3 of `Tcl_CreateCommand' from > incompatible pointer type > --- making magic Tcl library (tclmagic.dylib) > rm -f tclmagic.dylib > cc -g -I/sw/include -I/sw/include -I/usr/X11R6/include -I/sw/include > -O2 -fno-common -I. -I.. -o tclmagic.dylib -dynamiclib -flat_namespace > -undefined su > ppress -bind_at_load tclmagic.o ../cmwind/libcmwind.o > ../commands/libcommands.o ../database/libdatabase.o > ../dbwind/libdbwind.o ../drc/libdrc.o ../debug/ > libdebug.o ../extract/libextract.o ../graphics/libgraphics.o > ../macros/libmacros.o ../main/libmain.o ../misc/libmisc.o > ../parser/libparser.o ../select/lib > select.o ../signals/libsignals.o ../tech/libtech.o > ../textio/libtextio.o ../tiles/libtiles.o ../undo/libundo.o > ../windows/libwindows.o ../wiring/libwiring > .o ../resis/libresis.o ../sim/libsim.o ../netlist/libnetlist.o > ../netmenu/libnetmenu.o ../plow/libplow.o ../utils/libutils.o > ../calma/libcalma.o ../cif/li > bcif.o -lc -L/usr/X11R6/lib -lX11 -lm -L/sw/lib -L/sw/lib > -llibtcl.dylib -llibtk.dylib > /usr/bin/libtool: can't locate file for: -llibtcl.dylib > /usr/bin/libtool: file: -llibtcl.dylib is not an object file (not > allowed in a library) > /usr/bin/libtool: can't locate file for: -llibtk.dylib > /usr/bin/libtool: file: -llibtk.dylib is not an object file (not > allowed in a library) > make[2]: *** [tclmagic.dylib] Error 1 > cc -g -I/sw/include -I/sw/include -I/usr/X11R6/include -I/sw/include > -O2 -fno-common -I. -I.. -DMAGIC_WRAPPER > -DTCL_DIR=\"/Users/stefan/cad/lib/magic/tcl > \" -DHAVE_LIMITS_H -Dmacosx -DmacII -DCALMA_MODULE -DCIF_MODULE > -DPLOT_AUTO -DNONMANHATTAN -DROUTE_AUTO -DUSE_NEW_MACROS > -DCAD_DIR=\"/Users/stefan/cad\" e > xt2sim.c -c -o simwrap.o > /usr/include/gcc/darwin/3.1/stdarg.h:59: warning: redefinition of macro > va_start > /usr/include/gcc/darwin/3.1/varargs.h:71: warning: this is the location > of the previous definition > ext2sim.c: In function `CmdExtToSim': > ext2sim.c:363: warning: assignment discards qualifiers from pointer > target type > --- making exttosim Tcl library (exttosim.dylib) > rm -f exttosim.dylib > cc -g -I/sw/include -I/sw/include -I/usr/X11R6/include -I/sw/include > -O2 -fno-common -I. -I.. -o exttosim.dylib -dynamiclib -flat_namespace > -undefined su > ppress -bind_at_load simwrap.o \ > ../extflat/libextflat.o ../magic/tclmagic.dylib -lc -lm > -L/sw/lib -L/sw/lib -llibtcl.dylib -llibtk.dylib > cc: ../magic/tclmagic.dylib: No such file or directory > make[2]: *** [exttosim.dylib] Error 1 > cc -g -I/sw/include -I/sw/include -I/usr/X11R6/include -I/sw/include > -O2 -fno-common -I. -I.. -DMAGIC_WRAPPER > -DTCL_DIR=\"/Users/stefan/cad/lib/magic/tcl > \" -DHAVE_LIMITS_H -Dmacosx -DmacII -DCALMA_MODULE -DCIF_MODULE > -DPLOT_AUTO -DNONMANHATTAN -DROUTE_AUTO -DUSE_NEW_MACROS > -DCAD_DIR=\"/Users/stefan/cad\" e > xt2spice.c -c -o spicewrap.o > /usr/include/gcc/darwin/3.1/stdarg.h:59: warning: redefinition of macro > va_start > /usr/include/gcc/darwin/3.1/varargs.h:71: warning: this is the location > of the previous definition > ext2spice.c: In function `CmdExtToSpice': > ext2spice.c:460: warning: assignment discards qualifiers from pointer > target type > --- making exttospice Tcl library (exttospice.dylib) > rm -f exttospice.dylib > cc -g -I/sw/include -I/sw/include -I/usr/X11R6/include -I/sw/include > -O2 -fno-common -I. -I.. -o exttospice.dylib -dynamiclib > -flat_namespace -undefined > suppress -bind_at_load spicewrap.o \ > ../extflat/libextflat.o ../magic/tclmagic.dylib -lc -lm > -L/sw/lib -L/sw/lib -llibtcl.dylib -llibtk.dylib > cc: ../magic/tclmagic.dylib: No such file or directory > make[2]: *** [exttospice.dylib] Error 1 > cc -g -I/sw/include -I/sw/include -I/usr/X11R6/include -I/sw/include > -O2 -fno-common -I. -I.. -DMAGIC_WRAPPER > -DTCL_DIR=\"/Users/stefan/cad/lib/magic/tcl > \" -DHAVE_LIMITS_H -Dmacosx -DmacII -DCALMA_MODULE -DCIF_MODULE > -DPLOT_AUTO -DNONMANHATTAN -DROUTE_AUTO -DUSE_NEW_MACROS > -DCAD_DIR=\"/Users/stefan/cad\" t > clplot.c -c -o tclplot.o > --- making Tcl auto-load module (tclplot.dylib) > rm -f tclplot.dylib > cc -g -I/sw/include -I/sw/include -I/usr/X11R6/include -I/sw/include > -O2 -fno-common -I. -I.. -o tclplot.dylib -dynamiclib -flat_namespace > -undefined sup > press -bind_at_load tclplot.o plotCmd.o plotGremln.o plotPS.o > plotMain.o plotRutils.o plotVers.o plotPixels.o plotPNM.o \ > -lc -L/sw/lib -L/sw/lib -llibtcl.dylib -llibtk.dylib > /usr/bin/libtool: can't locate file for: -llibtcl.dylib > /usr/bin/libtool: file: -llibtcl.dylib is not an object file (not > allowed in a library) > /usr/bin/libtool: can't locate file for: -llibtk.dylib > /usr/bin/libtool: file: -llibtk.dylib is not an object file (not > allowed in a library) > make[2]: *** [tclplot.dylib] Error 1 > cc -g -I/sw/include -I/sw/include -I/usr/X11R6/include -I/sw/include > -O2 -fno-common -I. -I.. -DMAGIC_WRAPPER > -DTCL_DIR=\"/Users/stefan/cad/lib/magic/tcl > \" -DHAVE_LIMITS_H -Dmacosx -DmacII -DCALMA_MODULE -DCIF_MODULE > -DPLOT_AUTO -DNONMANHATTAN -DROUTE_AUTO -DUSE_NEW_MACROS > -DCAD_DIR=\"/Users/stefan/cad\" t > clroute.c -c -o tclroute.o > --- making Tcl auto-load module (tclroute.dylib) > rm -f tclroute.dylib > cc -g -I/sw/include -I/sw/include -I/usr/X11R6/include -I/sw/include > -O2 -fno-common -I. -I.. -o tclroute.dylib -dynamiclib -flat_namespace > -undefined su > ppress -bind_at_load tclroute.o rtrCmd.o rtrMain.o rtrDcmpose.o > ftrFdback.o rtrHazards.o rtrChannel.o rtrPaint.o rtrPin.o rtrSide.o > rtrStem.o rtrTech.o rt > rVia.o rtrTravers.o \ > ../garouter/libgarouter.o ../mzrouter/libmzrouter.o > ../irouter/libirouter.o ../grouter/libgrouter.o ../gcr/libgcr.o -lc > -L/sw/lib -L/sw/lib -llib > tcl.dylib -llibtk.dylib > /usr/bin/libtool: can't locate file for: -llibtcl.dylib > /usr/bin/libtool: file: -llibtcl.dylib is not an object file (not > allowed in a library) > /usr/bin/libtool: can't locate file for: -llibtk.dylib > /usr/bin/libtool: file: -llibtk.dylib is not an object file (not > allowed in a library) > make[2]: *** [tclroute.dylib] Error 1 > make[1]: *** [tcllibrary] Error 2 > > > ***** Other warnings I got in make.log file ****** > EFname.c: In function `EFHNIsGlob': > EFname.c:85: warning: assignment discards qualifiers from pointer > target type > EFname.c: In function `EFHNIsGND': > EFname.c:121: warning: assignment discards qualifiers from pointer > target type > > /usr/include/gcc/darwin/3.1/stdarg.h:59: warning: redefinition of macro > va_start > /usr/include/gcc/darwin/3.1/varargs.h:71: warning: this is the location > of the previous definition > > ExtBasic.c: In function `extOutputTrans': > ExtBasic.c:760: warning: initialization discards qualifiers from > pointer target type > > grTkCommon.c: In function `ImgLayerConfigureMaster': > grTkCommon.c:362: warning: passing arg 5 of `Tk_ConfigureWidget' from > incompatible pointer type > grTkCommon.c: In function `ImgLayerCmd': > grTkCommon.c:672: warning: passing arg 3 of `Tcl_GetIndexFromObj' from > incompatible pointer type > grTkCommon.c: In function `RegisterTkCommands': > grTkCommon.c:952: warning: passing arg 3 of `Tcl_CreateCommand' from > incompatible pointer type > > path.c: In function `PaExpand': > path.c:216: warning: assignment discards qualifiers from pointer target > type > > /usr/include/gcc/darwin/3.1/stdarg.h:59: warning: redefinition of macro > va_start > /usr/include/gcc/darwin/3.1/varargs.h:71: warning: this is the location > of the previous definition > ext2sim.c: In function `CmdExtToSim': > ext2sim.c:363: warning: assignment discards qualifiers from pointer > target type > > /usr/include/gcc/darwin/3.1/stdarg.h:59: warning: redefinition of macro > va_start > /usr/include/gcc/darwin/3.1/varargs.h:71: warning: this is the location > of the previous definition > ext2spice.c: In function `CmdExtToSpice': > ext2spice.c:460: warning: assignment discards qualifiers from pointer > target type >
|
|