can't make latest unix vm - v1954

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

can't make latest unix vm - v1954

Brad Fuller-4
 
Latest trunk (1954) and a clean svn checkout.

I tried to make the latest vm under unix and received the following
errors. Assuming that this is from latest Pharo changes on OSX which
resulted in unix not building. Yes?

/bin/sh /home/bfuller/dev/squeak/platforms/unix/libtool --mode=link
gcc -O0 -g -DLSB_FIRST=1  -Wl,--hash-style=sysv  -export-dynamic
-R/usr/local/lib -o squeak vm/vm.a ADPCMCodecPlugin/ADPCMCodecPlugin.a
AsynchFilePlugin/AsynchFilePlugin.a
BMPReadWriterPlugin/BMPReadWriterPlugin.a B2DPlugin/B2DPlugin.a
BitBltPlugin/BitBltPlugin.a CroquetPlugin/CroquetPlugin.a
DSAPrims/DSAPrims.a ZipPlugin/ZipPlugin.a DropPlugin/DropPlugin.a
FFTPlugin/FFTPlugin.a FilePlugin/FilePlugin.a
FloatArrayPlugin/FloatArrayPlugin.a FloatMathPlugin/FloatMathPlugin.a
GeniePlugin/GeniePlugin.a
JPEGReadWriter2Plugin/JPEGReadWriter2Plugin.a
JPEGReaderPlugin/JPEGReaderPlugin.a
JoystickTabletPlugin/JoystickTabletPlugin.a Klatt/Klatt.a
LargeIntegers/LargeIntegers.a LocalePlugin/LocalePlugin.a
Matrix2x3Plugin/Matrix2x3Plugin.a
MiscPrimitivePlugin/MiscPrimitivePlugin.a RePlugin/RePlugin.a
SecurityPlugin/SecurityPlugin.a SerialPlugin/SerialPlugin.a
SocketPlugin/SocketPlugin.a SoundCodecPrims/SoundCodecPrims.a
SoundGenerationPlugin/SoundGenerationPlugin.a
SoundPlugin/SoundPlugin.a StarSqueakPlugin/StarSqueakPlugin.a
SurfacePlugin/SurfacePlugin.a disabledPlugins.o version.o -lutil -ldl
-lm -lnsl   vm/vm.a
mkdir .libs
gcc -O0 -g -DLSB_FIRST=1 -Wl,--hash-style=sysv -o squeak
disabledPlugins.o version.o -Wl,--export-dynamic  vm/vm.a
ADPCMCodecPlugin/ADPCMCodecPlugin.a
AsynchFilePlugin/AsynchFilePlugin.a
BMPReadWriterPlugin/BMPReadWriterPlugin.a B2DPlugin/B2DPlugin.a
BitBltPlugin/BitBltPlugin.a CroquetPlugin/CroquetPlugin.a
DSAPrims/DSAPrims.a ZipPlugin/ZipPlugin.a DropPlugin/DropPlugin.a
FFTPlugin/FFTPlugin.a FilePlugin/FilePlugin.a
FloatArrayPlugin/FloatArrayPlugin.a FloatMathPlugin/FloatMathPlugin.a
GeniePlugin/GeniePlugin.a
JPEGReadWriter2Plugin/JPEGReadWriter2Plugin.a
JPEGReaderPlugin/JPEGReaderPlugin.a
JoystickTabletPlugin/JoystickTabletPlugin.a Klatt/Klatt.a
LargeIntegers/LargeIntegers.a LocalePlugin/LocalePlugin.a
Matrix2x3Plugin/Matrix2x3Plugin.a
MiscPrimitivePlugin/MiscPrimitivePlugin.a RePlugin/RePlugin.a
SecurityPlugin/SecurityPlugin.a SerialPlugin/SerialPlugin.a
SocketPlugin/SocketPlugin.a SoundCodecPrims/SoundCodecPrims.a
SoundGenerationPlugin/SoundGenerationPlugin.a
SoundPlugin/SoundPlugin.a StarSqueakPlugin/StarSqueakPlugin.a
SurfacePlugin/SurfacePlugin.a -lutil -ldl -lm -lnsl vm/vm.a
-Wl,--rpath -Wl,/usr/local/lib
vm/vm.a(sqVirtualMachine.o): In function `sqGetInterpreterProxy':
/home/bfuller/dev/squeak/platforms/Cross/vm/sqVirtualMachine.c:351:
undefined reference to `internalIsImmutable'
/home/bfuller/dev/squeak/platforms/Cross/vm/sqVirtualMachine.c:352:
undefined reference to `internalIsMutable'
/home/bfuller/dev/squeak/platforms/Cross/vm/sqVirtualMachine.c:353:
undefined reference to `primitiveFailFor'
/home/bfuller/dev/squeak/platforms/Cross/vm/sqVirtualMachine.c:354:
undefined reference to `classAlien'
/home/bfuller/dev/squeak/platforms/Cross/vm/sqVirtualMachine.c:355:
undefined reference to `getStackPointer'
/home/bfuller/dev/squeak/platforms/Cross/vm/sqVirtualMachine.c:356:
undefined reference to `sendInvokeCallbackStackRegistersJmpbuf'
/home/bfuller/dev/squeak/platforms/Cross/vm/sqVirtualMachine.c:357:
undefined reference to `reestablishContextPriorToCallback'
/home/bfuller/dev/squeak/platforms/Cross/vm/sqVirtualMachine.c:358:
undefined reference to `classUnsafeAlien'
collect2: ld returned 1 exit status
make: *** [squeak] Error 1


--
Brad Fuller
Reply | Threaded
Open this post in threaded view
|

Re: can't make latest unix vm - v1954

Brad Fuller-4
 
I really don't know what these are for in sqVirtualMachine.c:

#if VM_PROXY_MINOR > 7

        VM->internalIsImmutable = internalIsImmutable;
        VM->internalIsMutable   = internalIsMutable;
        VM->primitiveFailFor    = primitiveFailFor;
        VM->classAlien          = classAlien;
        VM->getStackPointer     = (sqInt *(*)(void))getStackPointer;
        VM->sendInvokeCallbackStackRegistersJmpbuf =
sendInvokeCallbackStackRegistersJmpbuf;
        VM->reestablishContextPriorToCallback = reestablishContextPriorToCallback;
        VM->classUnsafeAlien    = classUnsafeAlien;

#endif

but these are undefined (errors below)

if someone could tell me a bit, I would be happy to track down the
problem. Since it's a recent issue, the problem must have been
introduced in the last couple of days.


On Mon, Nov 24, 2008 at 1:11 PM, Brad Fuller <[hidden email]> wrote:

> Latest trunk (1954) and a clean svn checkout.
>
> I tried to make the latest vm under unix and received the following
> errors. Assuming that this is from latest Pharo changes on OSX which
> resulted in unix not building. Yes?
>
> /bin/sh /home/bfuller/dev/squeak/platforms/unix/libtool --mode=link
> gcc -O0 -g -DLSB_FIRST=1  -Wl,--hash-style=sysv  -export-dynamic
> -R/usr/local/lib -o squeak vm/vm.a ADPCMCodecPlugin/ADPCMCodecPlugin.a
> AsynchFilePlugin/AsynchFilePlugin.a
> BMPReadWriterPlugin/BMPReadWriterPlugin.a B2DPlugin/B2DPlugin.a
> BitBltPlugin/BitBltPlugin.a CroquetPlugin/CroquetPlugin.a
> DSAPrims/DSAPrims.a ZipPlugin/ZipPlugin.a DropPlugin/DropPlugin.a
> FFTPlugin/FFTPlugin.a FilePlugin/FilePlugin.a
> FloatArrayPlugin/FloatArrayPlugin.a FloatMathPlugin/FloatMathPlugin.a
> GeniePlugin/GeniePlugin.a
> JPEGReadWriter2Plugin/JPEGReadWriter2Plugin.a
> JPEGReaderPlugin/JPEGReaderPlugin.a
> JoystickTabletPlugin/JoystickTabletPlugin.a Klatt/Klatt.a
> LargeIntegers/LargeIntegers.a LocalePlugin/LocalePlugin.a
> Matrix2x3Plugin/Matrix2x3Plugin.a
> MiscPrimitivePlugin/MiscPrimitivePlugin.a RePlugin/RePlugin.a
> SecurityPlugin/SecurityPlugin.a SerialPlugin/SerialPlugin.a
> SocketPlugin/SocketPlugin.a SoundCodecPrims/SoundCodecPrims.a
> SoundGenerationPlugin/SoundGenerationPlugin.a
> SoundPlugin/SoundPlugin.a StarSqueakPlugin/StarSqueakPlugin.a
> SurfacePlugin/SurfacePlugin.a disabledPlugins.o version.o -lutil -ldl
> -lm -lnsl   vm/vm.a
> mkdir .libs
> gcc -O0 -g -DLSB_FIRST=1 -Wl,--hash-style=sysv -o squeak
> disabledPlugins.o version.o -Wl,--export-dynamic  vm/vm.a
> ADPCMCodecPlugin/ADPCMCodecPlugin.a
> AsynchFilePlugin/AsynchFilePlugin.a
> BMPReadWriterPlugin/BMPReadWriterPlugin.a B2DPlugin/B2DPlugin.a
> BitBltPlugin/BitBltPlugin.a CroquetPlugin/CroquetPlugin.a
> DSAPrims/DSAPrims.a ZipPlugin/ZipPlugin.a DropPlugin/DropPlugin.a
> FFTPlugin/FFTPlugin.a FilePlugin/FilePlugin.a
> FloatArrayPlugin/FloatArrayPlugin.a FloatMathPlugin/FloatMathPlugin.a
> GeniePlugin/GeniePlugin.a
> JPEGReadWriter2Plugin/JPEGReadWriter2Plugin.a
> JPEGReaderPlugin/JPEGReaderPlugin.a
> JoystickTabletPlugin/JoystickTabletPlugin.a Klatt/Klatt.a
> LargeIntegers/LargeIntegers.a LocalePlugin/LocalePlugin.a
> Matrix2x3Plugin/Matrix2x3Plugin.a
> MiscPrimitivePlugin/MiscPrimitivePlugin.a RePlugin/RePlugin.a
> SecurityPlugin/SecurityPlugin.a SerialPlugin/SerialPlugin.a
> SocketPlugin/SocketPlugin.a SoundCodecPrims/SoundCodecPrims.a
> SoundGenerationPlugin/SoundGenerationPlugin.a
> SoundPlugin/SoundPlugin.a StarSqueakPlugin/StarSqueakPlugin.a
> SurfacePlugin/SurfacePlugin.a -lutil -ldl -lm -lnsl vm/vm.a
> -Wl,--rpath -Wl,/usr/local/lib
> vm/vm.a(sqVirtualMachine.o): In function `sqGetInterpreterProxy':
> /home/bfuller/dev/squeak/platforms/Cross/vm/sqVirtualMachine.c:351:
> undefined reference to `internalIsImmutable'
> /home/bfuller/dev/squeak/platforms/Cross/vm/sqVirtualMachine.c:352:
> undefined reference to `internalIsMutable'
> /home/bfuller/dev/squeak/platforms/Cross/vm/sqVirtualMachine.c:353:
> undefined reference to `primitiveFailFor'
> /home/bfuller/dev/squeak/platforms/Cross/vm/sqVirtualMachine.c:354:
> undefined reference to `classAlien'
> /home/bfuller/dev/squeak/platforms/Cross/vm/sqVirtualMachine.c:355:
> undefined reference to `getStackPointer'
> /home/bfuller/dev/squeak/platforms/Cross/vm/sqVirtualMachine.c:356:
> undefined reference to `sendInvokeCallbackStackRegistersJmpbuf'
> /home/bfuller/dev/squeak/platforms/Cross/vm/sqVirtualMachine.c:357:
> undefined reference to `reestablishContextPriorToCallback'
> /home/bfuller/dev/squeak/platforms/Cross/vm/sqVirtualMachine.c:358:
> undefined reference to `classUnsafeAlien'
> collect2: ld returned 1 exit status
> make: *** [squeak] Error 1
>
>
> --
> Brad Fuller
>



--
Brad Fuller
Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] Re: can't make latest unix vm - v1954

johnmci
 
Must not update svn late at night.
You must load the alien VMMaker changes from http://www.squeaksource.com/Alien.html 
  to resolve these.
Likely we need to decide how to make these part of the general  
offering, or not.
That or wrap the VM_PROXY_MINOR = 8 logic a bit more to make it  
optional based on a #DEFINE  (SUPPORTALIENS)?


On 24-Nov-08, at 5:55 PM, Brad Fuller wrote:

> I really don't know what these are for in sqVirtualMachine.c:
>
> #if VM_PROXY_MINOR > 7
>
> VM->internalIsImmutable = internalIsImmutable;
> VM->internalIsMutable   = internalIsMutable;
> VM->primitiveFailFor    = primitiveFailFor;
> VM->classAlien          = classAlien;
> VM->getStackPointer     = (sqInt *(*)(void))getStackPointer;
> VM->sendInvokeCallbackStackRegistersJmpbuf =
> sendInvokeCallbackStackRegistersJmpbuf;
> VM->reestablishContextPriorToCallback =  
> reestablishContextPriorToCallback;
> VM->classUnsafeAlien    = classUnsafeAlien;
>
> #endif

--
=
=
=
========================================================================
John M. McIntosh <[hidden email]>
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
=
=
=
========================================================================



Reply | Threaded
Open this post in threaded view
|

Re: Re: [squeak-dev] Re: can't make latest unix vm - v1954

Igor Stasenko
 
2008/11/25 John M McIntosh <[hidden email]>:
>
> Must not update svn late at night.
> You must load the alien VMMaker changes from
> http://www.squeaksource.com/Alien.html to resolve these.
> Likely we need to decide how to make these part of the general offering, or
> not.
> That or wrap the VM_PROXY_MINOR = 8 logic a bit more to make it optional
> based on a #DEFINE  (SUPPORTALIENS)?
>

.. or maybe its a time to resolve it once and for all? ;)
http://www.nabble.com/-squeak-dev--Better-VM-%3C-%3E-plugin-API-to20625149.html#a20639557

>
> On 24-Nov-08, at 5:55 PM, Brad Fuller wrote:
>
>> I really don't know what these are for in sqVirtualMachine.c:
>>
>> #if VM_PROXY_MINOR > 7
>>
>>        VM->internalIsImmutable = internalIsImmutable;
>>        VM->internalIsMutable   = internalIsMutable;
>>        VM->primitiveFailFor    = primitiveFailFor;
>>        VM->classAlien          = classAlien;
>>        VM->getStackPointer     = (sqInt *(*)(void))getStackPointer;
>>        VM->sendInvokeCallbackStackRegistersJmpbuf =
>> sendInvokeCallbackStackRegistersJmpbuf;
>>        VM->reestablishContextPriorToCallback =
>> reestablishContextPriorToCallback;
>>        VM->classUnsafeAlien    = classUnsafeAlien;
>>
>> #endif
>
> --
> ===========================================================================
> John M. McIntosh <[hidden email]>
> Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
> ===========================================================================
>
>
>
>



--
Best regards,
Igor Stasenko AKA sig.
Reply | Threaded
Open this post in threaded view
|

Re: Re: [squeak-dev] Re: can't make latest unix vm - v1954

Andreas.Raab
 
Igor Stasenko wrote:
>
> .. or maybe its a time to resolve it once and for all? ;)
> http://www.nabble.com/-squeak-dev--Better-VM-%3C-%3E-plugin-API-to20625149.html#a20639557

It's a mistake to make these issues depend on each other. If you have a
set of changes that can be applied to VMMaker and that result in a
working VM with your proposed API, I'd be happy to look at it. Until
that time I think we need to have a solution to the issue in question.

I'd recommend that these changes get added in branch on SVN that is
being properly tagged. When this has stabilized we can push this to trunk.

Cheers,
   - Andreas
Reply | Threaded
Open this post in threaded view
|

Re: Re: [squeak-dev] Re: can't make latest unix vm - v1954

Igor Stasenko
 
2008/11/25 Andreas Raab <[hidden email]>:

>
> Igor Stasenko wrote:
>>
>> .. or maybe its a time to resolve it once and for all? ;)
>>
>> http://www.nabble.com/-squeak-dev--Better-VM-%3C-%3E-plugin-API-to20625149.html#a20639557
>
> It's a mistake to make these issues depend on each other. If you have a set
> of changes that can be applied to VMMaker and that result in a working VM
> with your proposed API, I'd be happy to look at it. Until that time I think
> we need to have a solution to the issue in question.
>

Great. But it will take a time. First i want to make host windows working :)

> I'd recommend that these changes get added in branch on SVN that is being
> properly tagged. When this has stabilized we can push this to trunk.
>

> Cheers,
>  - Andreas
>


--
Best regards,
Igor Stasenko AKA sig.
Reply | Threaded
Open this post in threaded view
|

Re: Re: [squeak-dev] Re: can't make latest unix vm - v1954

johnmci
In reply to this post by Andreas.Raab
 
Ok well the changes to
VMMaker-dtl.108.mcz
are
in
http://www.squeaksource.com/Alien.html
Alien-VMMaker-Support-John M McIntosh.4.mcz

If someone can take a look at them I fold them into a 109 release?

I note the IA32ABI plugin is not needed for the VM to compile and link  
it.

If there is no hurry with Eliot's help I hope to load in his primitive  
failure code, versus flag logic, and I'd guess the Immutable logic,  
later this week.

On 24-Nov-08, at 7:57 PM, Andreas Raab wrote:

> Igor Stasenko wrote:
>> .. or maybe its a time to resolve it once and for all? ;)
>> http://www.nabble.com/-squeak-dev--Better-VM-%3C-%3E-plugin-API-to20625149.html#a20639557
>
> It's a mistake to make these issues depend on each other. If you  
> have a set of changes that can be applied to VMMaker and that result  
> in a working VM with your proposed API, I'd be happy to look at it.  
> Until that time I think we need to have a solution to the issue in  
> question.
>
> I'd recommend that these changes get added in branch on SVN that is  
> being properly tagged. When this has stabilized we can push this to  
> trunk.
>
> Cheers,
>  - Andreas

--
=
=
=
========================================================================
John M. McIntosh <[hidden email]>
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
=
=
=
========================================================================



Reply | Threaded
Open this post in threaded view
|

Re: Re: [squeak-dev] Re: can't make latest unix vm - v1954

johnmci
In reply to this post by Igor Stasenko
 

On 24-Nov-08, at 8:45 PM, Igor Stasenko wrote:

>
> 2008/11/25 Andreas Raab <[hidden email]>:
>>
>> Igor Stasenko wrote:
>>>
>>> .. or maybe its a time to resolve it once and for all? ;)

Well to resolve it short term, I SVN back in the old versions of  
sqVirtualMachine.c/h and stuck the newer
ones in the Cross/IA32ABI

That way people casually building a VM still can build one, if they  
want to build the Alien plugin, then more
effort is required, however in that case they will figure out what  
changes are required until we sort out
if the Alien FFI stuff goes into the main trunk over the next few days.






--
=
=
=
========================================================================
John M. McIntosh <[hidden email]>
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
=
=
=
========================================================================



Reply | Threaded
Open this post in threaded view
|

Re: Re: [squeak-dev] Re: can't make latest unix vm - v1954

Brad Fuller-4
 
I just made the latest unix vm (fresh) and it compiled and ran ok.

Thanks!

brad

On Mon, Nov 24, 2008 at 10:23 PM, John M McIntosh
<[hidden email]> wrote:

>
>
> On 24-Nov-08, at 8:45 PM, Igor Stasenko wrote:
>
>>
>> 2008/11/25 Andreas Raab <[hidden email]>:
>>>
>>> Igor Stasenko wrote:
>>>>
>>>> .. or maybe its a time to resolve it once and for all? ;)
>
> Well to resolve it short term, I SVN back in the old versions of
> sqVirtualMachine.c/h and stuck the newer
> ones in the Cross/IA32ABI
>
> That way people casually building a VM still can build one, if they want to
> build the Alien plugin, then more
> effort is required, however in that case they will figure out what changes
> are required until we sort out
> if the Alien FFI stuff goes into the main trunk over the next few days.
>
>
>
>
>
>
> --
> ===========================================================================
> John M. McIntosh <[hidden email]>
> Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
> ===========================================================================
>
>
>
>



--
Brad Fuller