Hi,
I was attempting to build emacs using the Pro64 compiler instead of gcc. I
am running into the following linking problem:
cd lib-src; make all \
CC='/usr/bin/sgicc' CFLAGS='-g -O' CPPFLAGS='-D_BSD_SOURCE -D_XOPEN_SOURCE '
\
LDFLAGS='' MAKE='make'
make[1]: Entering directory `/usr/src/turbo/BUILD/emacs-20.7/lib-src'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/usr/src/turbo/BUILD/emacs-20.7/lib-src'
cd src; make all \
CC='/usr/bin/sgicc' CFLAGS='-g -O' CPPFLAGS='-D_BSD_SOURCE -D_XOPEN_SOURCE '
\
LDFLAGS='' MAKE='make'
make[1]: Entering directory `/usr/src/turbo/BUILD/emacs-20.7/src'
/usr/bin/sgicc -nostdlib `./prefix-args -Xlinker ` -o temacs pre-crt0.o
/usr/lib/crt1.o /usr/lib/crti.o dispnew.o frame.o scroll.o xdisp.o xmenu.o
window.o charset.o coding.o category.o ccl.o cm.o term.o xfaces.o emacs.o
keyboard.o macros.o keymap.o sysdep.o buffer.o filelock.o insdel.o marker.o
intervals.o textprop.o minibuf.o fileio.o dired.o filemode.o cmds.o casetab.o
casefiddle.o indent.o search.o regex.o undo.o alloc.o data.o doc.o editfns.o
callint.o eval.o floatfns.o fns.o print.o lread.o abbrev.o syntax.o unexelf.o
mocklisp.o bytecode.o process.o callproc.o region-cache.o doprnt.o strftime.o
getloadavg.o terminfo.o lastfile.o vm-limit.o -lncurses -lm -lc -lgcc
/usr/lib/crtn.o
/usr/lib/crt1.o: In function `_start':
/usr/lib/crt1.o(.text+0x0): multiple definition of `_start'
/usr/lib/gcc-lib/ia64-cygnus-linux/2.96-ia64-000717/../../../crt1.o(.text+0x0):
first defined here
/usr/lib/crt1.o(.sdata+0x0): multiple definition of `_IO_stdin_used'
/usr/lib/gcc-lib/ia64-cygnus-linux/2.96-ia64-000717/../../../crt1.o(.sdata+0x0):
first defined here
/usr/lib/crti.o: In function `_init':
/usr/lib/crti.o(.init+0x0): multiple definition of `_init'
/usr/lib/gcc-lib/ia64-cygnus-linux/2.96-ia64-000717/../../../crti.o(.init+0x0):
first defined here
/usr/lib/crti.o: In function `_fini':
/usr/lib/crti.o(.fini+0x0): multiple definition of `_fini'
/usr/lib/gcc-lib/ia64-cygnus-linux/2.96-ia64-000717/../../../crti.o(.fini+0x0):
first defined here
callproc.o: In function `Fcall_process_region':
callproc.o(.text+0x2e32): the use of `mktemp' is dangerous, better use `mkstemp'
collect2: ld returned 1 exit status
make[1]: *** [temacs] Error 2
make[1]: Leaving directory `/usr/src/turbo/BUILD/emacs-20.7/src'
make: *** [src] Error 2
It looks like it's linking in both the gcc and sgi c-runtimes. Do I need to
specify additional environment variables other than CC=/usr/bin/sgicc?
--
Mike Madore
Software Engineer
TurboLinux, Inc.
|