take it easy man, you look a bit nervous ;) . It is compiling now!!! but.... Alien compiled fine, but here I'm having some other problems, not related to alien itself, but to the vm building. I had to add B3DAccelerator plugin because there were some errors, and now these errors mutated to: Linking C executable squeakvm B3DAcceleratorPlugin/libB3DAcceleratorPlugin.a(sqOpenGLRenderer.c.o): In function `glRenderVertexBuffer': /home/javier/st/squeak-svn/platforms/Cross/plugins/B3DAcceleratorPlugin/sqOpenGLRenderer.c:846: undefined reference to `glColorMaterial' /home/javier/st/squeak-svn/platforms/Cross/plugins/B3DAcceleratorPlugin/sqOpenGLRenderer.c:847: undefined reference to `glGetError' /home/javier/st/squeak-svn/platforms/Cross/plugins/B3DAcceleratorPlugin/sqOpenGLRenderer.c:848: undefined reference to `glEnable' /home/javier/st/squeak-svn/platforms/Cross/plugins/B3DAcceleratorPlugin/sqOpenGLRenderer.c:849: undefined reference to `glGetError' ... /home/javier/st/squeak-svn/platforms/unix/plugins/B3DAcceleratorPlugin/sqUnixOpenGL.c:159: undefined reference to `glLightModelfv' /home/javier/st/squeak-svn/platforms/unix/plugins/B3DAcceleratorPlugin/sqUnixOpenGL.c:160: undefined reference to `glGetError' collect2: ld returned 1 exit status make[2]: *** [squeakvm] Error 1 make[1]: *** [CMakeFiles/squeakvm.dir/all] Error 2 make: *** [all] Error 2 I think it should be linking to opengl lib but it isn't, maybe?. I also read in other thread that SocketPlugin is necesary but it didn't compile either. It said: [ 34%] Building C object SocketPlugin/CMakeFiles/SocketPlugin.dir/home/javier/st/squeak-svn/platforms/unix/src32/vm/intplugins/SocketPlugin/SocketPlugin.c.o /home/javier/st/squeak-svn/platforms/unix/src32/vm/intplugins/SocketPlugin/SocketPlugin.c: In function ânetAddressToIntâ: /home/javier/st/squeak-svn/platforms/unix/src32/vm/intplugins/SocketPlugin/SocketPlugin.c:206: error: ânilâ undeclared (first use in this function) /home/javier/st/squeak-svn/platforms/unix/src32/vm/intplugins/SocketPlugin/SocketPlugin.c:206: error: (Each undeclared identifier is reported only once /home/javier/st/squeak-svn/platforms/unix/src32/vm/intplugins/SocketPlugin/SocketPlugin.c:206: error: for each function it appears in.) /home/javier/st/squeak-svn/platforms/unix/src32/vm/intplugins/SocketPlugin/SocketPlugin.c: In function âprimitiveResolverGetAddressInfoâ: /home/javier/st/squeak-svn/platforms/unix/src32/vm/intplugins/SocketPlugin/SocketPlugin.c:324: error: ânilâ undeclared (first use in this function) /home/javier/st/squeak-svn/platforms/unix/src32/vm/intplugins/SocketPlugin/SocketPlugin.c: In function âprimitiveResolverGetAddressInfoResultâ: /home/javier/st/squeak-svn/platforms/unix/src32/vm/intplugins/SocketPlugin/SocketPlugin.c:380: error: ânilâ undeclared (first use in this function) /home/javier/st/squeak-svn/platforms/unix/src32/vm/intplugins/SocketPlugin/SocketPlugin.c: In function âprimitiveResolverGetNameInfoHostResultâ: /home/javier/st/squeak-svn/platforms/unix/src32/vm/intplugins/SocketPlugin/SocketPlugin.c:461: error: ânilâ undeclared (first use in this function) /home/javier/st/squeak-svn/platforms/unix/src32/vm/intplugins/SocketPlugin/SocketPlugin.c: In function âprimitiveResolverGetNameInfoServiceResultâ: /home/javier/st/squeak-svn/platforms/unix/src32/vm/intplugins/SocketPlugin/SocketPlugin.c:500: error: ânilâ undeclared (first use in this function) /home/javier/st/squeak-svn/platforms/unix/src32/vm/intplugins/SocketPlugin/SocketPlugin.c: In function âprimitiveResolverHostNameResultâ: /home/javier/st/squeak-svn/platforms/unix/src32/vm/intplugins/SocketPlugin/SocketPlugin.c:539: error: ânilâ undeclared (first use in this function) /home/javier/st/squeak-svn/platforms/unix/src32/vm/intplugins/SocketPlugin/SocketPlugin.c: In function âprimitiveResolverStartNameLookupâ: /home/javier/st/squeak-svn/platforms/unix/src32/vm/intplugins/SocketPlugin/SocketPlugin.c:626: error: ânilâ undeclared (first use in this function) make[2]: *** [SocketPlugin/CMakeFiles/SocketPlugin.dir/home/javier/st/squeak-svn/platforms/unix/src32/vm/intplugins/SocketPlugin/SocketPlugin.c.o] Error 1 make[1]: *** [SocketPlugin/CMakeFiles/SocketPlugin.dir/all] Error 2 make: *** [all] Error 2 To solve this I tryied adding a #define nil ((void*)0L) as Marco said (for alien plugin) and almost worked, but gave errors, so I used: #define nil 0L I have to say that I've compiled some Pharo and Squeak VMs before and didn't get those errors. It may be related to loading VMMaker with ConfigurationOfVMMaker (I always did it manually before), or because of an updated version. I'm very close to be able to test it, any ideas?? Regards, Javier. On Sat, Feb 20, 2010 at 6:17 PM, John M McIntosh < johnmci@smalltalkconsulting.com> wrote:
Oh fine, stupid tool sets, update your VMMaker image with:
Name: Alien-VMMaker-Plugins-John M McIntosh.8 Author: John M McIntosh Time: 20 February 2010, 1:16:02 pm UUID: a8e7e044-bf22-4013-85b7-c70d2081cd4e Ancestors: Alien-VMMaker-Plugins-John M McIntosh.7
nil is null is (void*) 0 YES? Well not in non macintosh build chains since nil is UNDEFINED. Fine change nil to null that is in sq.h
On 2010-02-20, at 11:20 AM, Javier Pimás wrote:
nice! this is way better, but I still have this:
/home/javier/st/squeak-svn/platforms/unix/src32/vm/intplugins/IA32ABI/IA32ABI.c: In function âprimCallOutDoubleReturnâ:
-- =========================================================================== John M. McIntosh <johnmci@smalltalkconsulting.com> Twitter: squeaker68882 Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com ===========================================================================
-- Javier Pimás Ciudad de Buenos Aires