[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gm2] Issues building cc1gm2
From: |
Ed Smith-Rowland |
Subject: |
[Gm2] Issues building cc1gm2 |
Date: |
Sun, 02 Oct 2005 21:10:27 -0400 |
User-agent: |
Mozilla Thunderbird 1.0.7 (Macintosh/20050923) |
Gaius Mulley wrote:
Ed Smith-Rowland <address@hidden> writes:
But any way I copied from my fresh gm2 download and p2c built and is
working fine as we speak.
Hi Ed,
keep us informed as to progress,
regards,
Gaius
_______________________________________________
gm2 mailing list
address@hidden
http://floppsie.comp.glam.ac.uk/mailman/listinfo/gm2
I'm running into a problem with linking cc1gm2. The -liconv seems to be
a problem.
The funny thing is is that I have a libiconv.dylib in /usr/lib.
I think this might be Michael Lambert's issue.
Output of the last line is below:
-----------------------------------------------------------------------------------------------
. . .
if [ -f ` if [ -f /Users/ed/gcc/obj_gm2/gcc/../binutils/ranlib ] ; then
echo /Users/ed/gcc/obj_gm2/gcc/../binutils/ranlib ; else if [
"powerpc-apple-darwin7.9.0" = "powerpc-apple-darwin7.9.0" ] ; then echo
ranlib; else t='s,^,powerpc-apple-darwin7.9.0-,'; echo ranlib | sed -e
$t ; fi; fi` ] || ( [ "powerpc-apple-darwin7.9.0" =
"powerpc-apple-darwin7.9.0" ] && [ -f /usr/bin/ranlib -o -f /bin/ranlib
] ) ; then ranlib gm2/gm2-compiler-boot/gm2.a ; else true ; fi
ar cr gm2/gm2-libs-boot/libgm2.a gm2/gm2-libs-boot/ASCII.o
gm2/gm2-libs-boot/IO.o gm2/gm2-libs-boot/Args.o
gm2/gm2-libs-boot/Assertion.o gm2/gm2-libs-boot/NumberIO.o
gm2/gm2-libs-boot/Break.o gm2/gm2-libs-boot/CmdArgs.o
gm2/gm2-libs-boot/Scan.o gm2/gm2-libs-boot/StrCase.o
gm2/gm2-libs-boot/FIO.o gm2/gm2-libs-boot/StrIO.o
gm2/gm2-libs-boot/TimeString.o gm2/gm2-libs-boot/StrLib.o
gm2/gm2-libs-boot/Environment.o gm2/gm2-libs-boot/FpuIO.o
gm2/gm2-libs-boot/Debug.o gm2/gm2-libs-boot/SysStorage.o
gm2/gm2-libs-boot/DynamicStrings.o gm2/gm2-libs-boot/SFIO.o
gm2/gm2-libs-boot/M2RTS.o gm2/gm2-libs-boot/SArgs.o
gm2/gm2-libs-boot/FormatStrings.o gm2/gm2-libs-boot/PushBackInput.o
gm2/gm2-libs-boot/SEnvironment.o gm2/gm2-libs-boot/StringConvert.o \
gm2/gm2-libs-boot/wrapc.o
gm2/gm2-libs-boot/UnixArgs.o gm2/gm2-libs-boot/StdIO.o
gm2/gm2-libs-boot/Storage.o gm2/gm2-libs-boot/choosetemp.o
if [ -f ` if [ -f /Users/ed/gcc/obj_gm2/gcc/../binutils/ranlib ] ; then
echo /Users/ed/gcc/obj_gm2/gcc/../binutils/ranlib ; else if [
"powerpc-apple-darwin7.9.0" = "powerpc-apple-darwin7.9.0" ] ; then echo
ranlib; else t='s,^,powerpc-apple-darwin7.9.0-,'; echo ranlib | sed -e
$t ; fi; fi` ] || ( [ "powerpc-apple-darwin7.9.0" =
"powerpc-apple-darwin7.9.0" ] && [ -f /usr/bin/ranlib -o -f /bin/ranlib
] ) ; then ranlib gm2/gm2-libs-boot/libgm2.a ; else true ; fi
make[2]: *** No rule to make target `-liconv', needed by
`stage1/gm2/cc1gm2'. Stop.
cp: stage1/gm2/cc1gm2: No such file or directory
make[1]: *** [cc1gm2] Error 1
make: *** [all-gcc] Error 2
MacOSX:~/gcc/obj_gm2 ed$
-----------------------------------------------------------------------------------------------
In the build_dir/gcc Makefile there are several targets for cc1gm2 at
various stages.
These have $(LIBS) as a dependency in addition to a part of the link line.
The -liconv as a dependency is what throws the build off. The
libiberty.a (the other part
is a plausible dependency for gcc. But -liconv is strange.
Problem Makefile chunk:
-------------------------------------------------------------------------
stage3/gm2/cc1gm2$(exeext): stage2/gm2/cc1gm2$(exeext)
gm2/gm2-compiler-paranoid/m2flex.o \
$(P) $(GM2_OBJS) $(BACKEND) $(LIBDEPS)
$(GM2_LIBS_PARANOID) $(LIBS)
$(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(GM2_OBJS)
$(GM2_LIBS_PARANOID) \
gm2/gm2-compiler-paranoid/m2flex.o
$(BACKEND) $(LIBS)
stage2/gm2/cc1gm2$(exeext): stage1/gm2/cc1gm2$(exeext)
gm2/gm2-compiler/m2flex.o $(P) \
$(GM2_OBJS) $(BACKEND) $(LIBDEPS)
$(GM2_LIBS) $(LIBS)
$(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(GM2_OBJS) $(GM2_LIBS) \
gm2/gm2-compiler/m2flex.o $(BACKEND) $(LIBS)
stage1/gm2/cc1gm2$(exeext): $(GM2_DIRS) $(GM2)$(exeext)
gm2/gm2-compiler-boot/m2flex.o \
$(P) $(GM2_OBJS) $(BACKEND) $(LIBDEPS)
$(GM2_LIBS_BOOT) $(LIBS)
$(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(GM2_OBJS) $(GM2_LIBS_BOOT) \
gm2/gm2-compiler-boot/m2flex.o $(BACKEND)
$(LIBS)
-------------------------------------------------------------------------
Good Makefile chunk:
-------------------------------------------------------------------------
stage3/gm2/cc1gm2$(exeext): stage2/gm2/cc1gm2$(exeext)
gm2/gm2-compiler-paranoid/m2flex.o \
$(P) $(GM2_OBJS) $(BACKEND) $(LIBDEPS)
$(GM2_LIBS_PARANOID)
$(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(GM2_OBJS)
$(GM2_LIBS_PARANOID) \
gm2/gm2-compiler-paranoid/m2flex.o
$(BACKEND) $(LIBS)
stage2/gm2/cc1gm2$(exeext): stage1/gm2/cc1gm2$(exeext)
gm2/gm2-compiler/m2flex.o $(P) \
$(GM2_OBJS) $(BACKEND) $(LIBDEPS) $(GM2_LIBS)
$(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(GM2_OBJS) $(GM2_LIBS) \
gm2/gm2-compiler/m2flex.o $(BACKEND) $(LIBS)
stage1/gm2/cc1gm2$(exeext): $(GM2_DIRS) $(GM2)$(exeext)
gm2/gm2-compiler-boot/m2flex.o \
$(P) $(GM2_OBJS) $(BACKEND) $(LIBDEPS)
$(GM2_LIBS_BOOT)
$(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(GM2_OBJS) $(GM2_LIBS_BOOT) \
gm2/gm2-compiler-boot/m2flex.o $(BACKEND)
$(LIBS)
-------------------------------------------------------------------------
I had hit this problem months ago and my solution was to trick the make
with a bogus -liconv target:
-liconv:
I think Michael Lambert's solution is the correct one though.
Regards,
Ed