Don't forget, the dll can be stripped too ! I saved about 10MB on Dr. Geo bundle with Linux and Windows VMs stripped. I don't know about Mac OS libraries and excutable, I don't search for tools to remove its symboles from a Linux workstation. Hilaire Le 03/02/2019 à 01:34, Pierce Ng a écrit :
I just built the 32-bit Windows VM from opensmalltalk-vm on Windows 7. Here's what I got. Pharo.exe works fine.
Volume in drive C has no label. Volume Serial Number is FCE0-E161
Directory of C:\pkg\pharo6vm32
03/02/2019 12:54 AM 2,875,628 Pharo.exe 03/02/2019 12:54 AM 2,875,628 PharoConsole.exe 03/02/2019 12:54 AM 9,567,149 PharoConsoleUnstripped.exe 03/02/2019 12:54 AM 9,567,149 PharoUnstripped.exe 4 File(s) 24,885,554 bytes 0 Dir(s) 33,491,107,840 bytes free
I think the stripping comes from build.win32x86/common/Makefile starting line 309:
ifneq ($STRIPEXE,) $(STRIPEXE): $(VMEXE) $(STRIP) --strip-unneeded -o $(STRIPEXE) $(VMEXE) $(OBJCOPY) --add-gnu-debuglink=$(VMEXE) $(STRIPEXE)
$(STRIPCONSOLEEXE): $(CONSOLEVMEXE) $(STRIP) --strip-unneeded -o $(STRIPCONSOLEEXE) $(CONSOLEVMEXE) $(OBJCOPY) --add-gnu-debuglink=$(CONSOLEVMEXE) $(STRIPCONSOLEEXE) endif
The build output is in build.win32x86/pharo.cog.spur/build/vm. I copied the *exe and *.dll into c:\pkg\pharo6vm32 and run the VM from there.
Oh, my Linux VM (also self-built) isn't stripped.
% file ~/pkg/pharo6vm64/pharo /home/pierce/pkg/pharo6vm64/pharo: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=79f0524e9ecda9a3a3143fb6ba4ff45f552e05dd, with debug_info, not stripped
-- Dr. Geo http://drgeo.eu