Building Linux VM with VMMaker from sourceforge CVS

Joshua 'Schwa' Gargus schwa at cc.gatech.edu
Fri Dec 28 16:43:45 UTC 2001


On Fri, Dec 28, 2001 at 10:48:47AM -0500, Joshua 'Schwa' Gargus wrote:
> The other thing that might happen is that typing "make" appears to run normally up until
> the following output:
> 
> copying last section of file
> mv gnuify.out gnu-interp.c
> gcc -I/usr/X11R6/include -g -O2 -fomit-frame-pointer -DLSB_FIRST=1  -funroll-loops -DHAVE_CONFIG_H -DUNIX -DSQ_LIBDIR=\"/usr/local/lib/squeak/3.1a-4164\" -I. -I../src/vm  -c gnu-interp.c
> gnu-interp.c:1234: conflicting types for `readImageFromFileHeapSizeStartingAt'
> ../src/vm/sq.h:309: previous declaration of `readImageFromFileHeapSizeStartingAt'
> make: *** [gnu-interp.o] Error 1
> 

I hacked around this by changing the type in sq.h from offset_t to
int.  This let me get as far as:

ar -rc squeak.a.tmp sqNamedPrims.o sqUnixExternalPrims.o sqUnixMozilla.o sqVirtualMachine.o sqXWindow.o zipio.o zlib.o gnu-interp.o sqUnixVersion.o
mv squeak.a.tmp squeak.a
/bin/sh ./libtool --mode=link gcc -I/usr/X11R6/include -g -O2 -fomit-frame-pointer -DLSB_FIRST=1  -funroll-loops -avoid-version -export-dynamic -R/usr/local/lib/squeak/3.1a-4164 -o squeak squeak.a -lXext -lX11 -lm -ldl -lnsl  -L/usr/X11R6/lib 
mkdir .libs
gcc -I/usr/X11R6/include -g -O2 -fomit-frame-pointer -DLSB_FIRST=1 -funroll-loops -o squeak squeak.a -lXext -lX11 -lm -ldl -lnsl -L/usr/X11R6/lib -Wl,--export-dynamic -Wl,--rpath -Wl,/usr/local/lib/squeak/3.1a-4164 -Wl,--rpath -Wl,/usr/local/lib/squeak/3.1a-4164
squeak.a(sqVirtualMachine.o): In function `sqGetInterpreterProxy':
/home/schwa/squeak.old/vm/vmmaker3/build/../src/vm/sqVirtualMachine.c:306: undefined reference to `positive64BitIntegerFor'
/home/schwa/squeak.old/vm/vmmaker3/build/../src/vm/sqVirtualMachine.c:307: undefined reference to `positive64BitValueOf'
/home/schwa/squeak.old/vm/vmmaker3/build/../src/vm/sqVirtualMachine.c:308: undefined reference to `signed64BitIntegerFor'
/home/schwa/squeak.old/vm/vmmaker3/build/../src/vm/sqVirtualMachine.c:309: undefined reference to `signed64BitValueOf'
collect2: ld returned 1 exit status
make: *** [squeak] Error 1



There is no obvious way to hack around this, since there don't appear
to be definitions for these functions anywhere in the source tree.  On
the off-chance that the source exists in some plugin, I generated the
source for all of the plugins; still no luck.  Is this a problem with
my linux config?  I Googled 'signed64BitValueOf' to no avail, which
leads me to believe that my Squeak is missing something.  Could it be
that I have to file in some of John M's recent VM changesets?

Thanks,
Joshua


> 
> 
> This is a more reasonable error, but an error nonetheless.  I have a
> hunch that the first behavior might be avoided by using VMMaker with a
> properly compiled FilePlugin.  However, to do that, I have to avoid the
> second error.
> 
> Help?
> 
> Thanks,
> Joshua
> 
> > cp squeak .libs {my destination}
> > 
> > done!
> > 
> 
> 
> 
> 




More information about the Squeak-dev mailing list