[Vm-dev] Plugin not available externally so I try to build internally

Robert Withers robert.w.withers at gmail.com
Sun Dec 13 13:39:08 UTC 2015


I built the vm with crypto plugins external but the running image/vm 
cannot find or load them.  They are not being used.  Therefore, I am 
trying to build them internally[1]. After generating them for internal, 
I ran around changing the examplePlugins.int/.ext, in spursrc and src. 
Under the build.linux32x86/squeak.cog.spur I changed the real 
plugins.int/.ext as well. The crypto plugins make it on the internal 
side, but I get an error when I try to link squeak[2]. The complaint is:

undefined reference to `DESPlugin_exports'

I don't recall how the internal plugin exports work. Might anyone 
refresh my memory and explain how this all works?

Thank you for all,
Robert


[1]

VMMaker
     generate: CoInterpreter
     and: StackToRegisterMappingCogit
     with: #(ObjectMemory Spur32BitCoMemoryManager)
     to: (FileDirectory default pathFromURI: VMMaker sourceTree, '/spursrc')
     platformDir: (FileDirectory default pathFromURI: VMMaker 
sourceTree, '/platforms')
     including:#(    DESPlugin DSAPlugin MD5Plugin SHA256Plugin 
AsynchFilePlugin FloatArrayPlugin RePlugin
                 BalloonEnginePlugin FloatMathPlugin SecurityPlugin 
BMPReadWriterPlugin
                 IA32ABIPlugin SocketPlugin     BitBltSimulation 
JPEGReadWriter2Plugin SurfacePlugin
                 JPEGReaderPlugin UUIDPlugin DropPlugin 
LargeIntegersPlugin UnixOSProcessPlugin
                 FileCopyPlugin Matrix2x3Plugin Win32OSProcessPlugin 
FilePlugin MiscPrimitivePlugin)


[2]

gcc -m32 -g -O2 -DNDEBUG -DDEBUGVM=0 -msse2 -D_GNU_SOURCE 
-D_FILE_OFFSET_BITS=64 -DCOGMTVM=0 -DLSB_FIRST=1 -Wl,-z -Wl,now -o 
squeak disabledPlugins.o version.o -Wl,--export-dynamic  vm/vm.a 
ADPCMCodecPlugin/ADPCMCodecPlugin.a AioPlugin/AioPlugin.a 
AsynchFilePlugin/AsynchFilePlugin.a B2DPlugin/B2DPlugin.a 
BitBltPlugin/BitBltPlugin.a BMPReadWriterPlugin/BMPReadWriterPlugin.a 
CroquetPlugin/CroquetPlugin.a ZipPlugin/ZipPlugin.a 
DropPlugin/DropPlugin.a DESPlugin/DESPlugin.a DSAPrims/DSAPrims.a 
MD5Plugin/MD5Plugin.a SHA256Plugin/SHA256Plugin.a FFTPlugin/FFTPlugin.a 
FileCopyPlugin/FileCopyPlugin.a FilePlugin/FilePlugin.a 
FloatArrayPlugin/FloatArrayPlugin.a FloatMathPlugin/FloatMathPlugin.a 
IA32ABI/IA32ABI.a JoystickTabletPlugin/JoystickTabletPlugin.a 
JPEGReaderPlugin/JPEGReaderPlugin.a 
JPEGReadWriter2Plugin/JPEGReadWriter2Plugin.a Klatt/Klatt.a 
LargeIntegers/LargeIntegers.a Matrix2x3Plugin/Matrix2x3Plugin.a 
MIDIPlugin/MIDIPlugin.a MiscPrimitivePlugin/MiscPrimitivePlugin.a 
Mpeg3Plugin/Mpeg3Plugin.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 
VMProfileLinuxSupportPlugin/VMProfileLinuxSupportPlugin.a -lutil -ldl 
-lpthread -lm -lnsl -lpthread -luuid vm/vm.a
vm/vm.a(sqNamedPrims.o):(.data+0x2c): undefined reference to 
`DESPlugin_exports'
vm/vm.a(sqNamedPrims.o):(.data+0x34): undefined reference to 
`MD5Plugin_exports'
vm/vm.a(sqNamedPrims.o):(.data+0x38): undefined reference to 
`SHA256Plugin_exports'
collect2: error: ld returned 1 exit status
Makefile:180: recipe for target 'squeak' failed
make: *** [squeak] Error 1



More information about the Vm-dev mailing list