Hello, Building squeak VM on FreeBSD failed, though it used to work for both 32 and 64 bit. Could someone comment on what is missing here? Thank you in advance Vaidotas
vaidas@NomadBSD ~/o/b/l/s/build (Cog)> pwd /home/vaidas/opensmalltalk-vm/building/linux32x86/squeak.cog.spur/build
vaidas@NomadBSD ~/o/b/l/s/build (Cog)> ./mvm static char SvnRawRevisionString[] = "$Rev$"; static char GitRawRevisionString[] = "$Rev$"; platforms/Cross/vm/sqSCCSVersion.h not up-to-date. You must run ../../../../scripts/updateSCCSVersions vaidas@NomadBSD ~/o/b/l/s/build (Cog) [1]> ../../../../scripts/updateSCCSVersions vaidas@NomadBSD ~/o/b/l/s/build (Cog)> ./mvm clean? y checking for gcc... no checking for cc... cc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... .... snip ....
/home/vaidas/opensmalltalk-vm/platforms/unix/vm/sqUnixMain.c /home/vaidas/opensmalltalk-vm/platforms/unix/vm/sqUnixMain.c:979:19: warning: incompatible pointer types initializing 'struct mcontext *' with an expression of type 'mcontext_t *' (aka 'struct __mcontext *') [-Wincompatible-pointer-types] struct mcontext *regs = &uap->uc_mcontext; ^ ~~~~~~~~~~~~~~~~~ /home/vaidas/opensmalltalk-vm/platforms/unix/vm/sqUnixMain.c:984:8: error: incomplete definition of type 'struct mcontext' regs->mc_eax, regs->mc_ebx, regs->mc_ecx, regs->mc_edx, ~~~~^
Hi Vaidotas
On 26. Oct 2022, at 15:18, Vaidotas Didžbalis vaidasd@gmail.com wrote:
Hello, Building squeak VM on FreeBSD failed, though it used to work for both 32 and 64 bit. Could someone comment on what is missing here? Thank you in advance
can you look whether commit 3e8864544 fixes this?
Best regards -Tobias
Vaidotas
vaidas@NomadBSD ~/o/b/l/s/build (Cog)> pwd /home/vaidas/opensmalltalk-vm/building/linux32x86/squeak.cog.spur/build
vaidas@NomadBSD ~/o/b/l/s/build (Cog)> ./mvm static char SvnRawRevisionString[] = "$Rev$"; static char GitRawRevisionString[] = "$Rev$"; platforms/Cross/vm/sqSCCSVersion.h not up-to-date. You must run ../../../../scripts/updateSCCSVersions vaidas@NomadBSD ~/o/b/l/s/build (Cog) [1]> ../../../../scripts/updateSCCSVersions vaidas@NomadBSD ~/o/b/l/s/build (Cog)> ./mvm clean? y checking for gcc... no checking for cc... cc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... .... snip ....
/home/vaidas/opensmalltalk-vm/platforms/unix/vm/sqUnixMain.c /home/vaidas/opensmalltalk-vm/platforms/unix/vm/sqUnixMain.c:979:19: warning: incompatible pointer types initializing 'struct mcontext *' with an expression of type 'mcontext_t *' (aka 'struct __mcontext *') [-Wincompatible-pointer-types] struct mcontext *regs = &uap->uc_mcontext; ^ ~~~~~~~~~~~~~~~~~ /home/vaidas/opensmalltalk-vm/platforms/unix/vm/sqUnixMain.c:984:8: error: incomplete definition of type 'struct mcontext' regs->mc_eax, regs->mc_ebx, regs->mc_ecx, regs->mc_edx, ~~~~^
Hello Tobias,
can you look whether commit 3e8864544 fixes this?
its stopping in another location:
cc -Wall -g -O2 -DNDEBUG -DDEBUGVM=0 -msse2 -DCOGMTVM=0 -pthread -DLSB_FIRST=1 -m32 -Wno-missing-braces -Wno-unknown-pragmas -Wno-unused-value -Wno-unused-label -Wno-unused-function -Wno-unused-variable -Wno-unused-but-set-variable -DHAVE_CONFIG_H -DSQUEAK_BUILTIN_PLUGIN -I/home/vaidas/opensmalltalk-vm/building/linux32x86/squeak.cog.spur/build -I/home/vaidas/opensmalltalk-vm/building/linux32x86/squeak.cog.spur/build -I/home/vaidas/opensmalltalk-vm/platforms/unix/vm -I/home/vaidas/opensmalltalk-vm/platforms/Cross/vm -I/home/vaidas/opensmalltalk-vm/src/spur32.cog -I/home/vaidas/opensmalltalk-vm/platforms/Cross/plugins/SerialPlugin -m32 -Wno-missing-braces -Wno-unknown-pragmas -Wno-unused-value -Wno-unused-label -Wno-unused-function -Wno-unused-variable -Wno-unused-but-set-variable -c -o SerialPlugin.o /home/vaidas/opensmalltalk-vm/src/plugins/SerialPlugin/SerialPlugin.c cc -Wall -g -O2 -DNDEBUG -DDEBUGVM=0 -msse2 -DCOGMTVM=0 -pthread -DLSB_FIRST=1 -m32 -Wno-missing-braces -Wno-unknown-pragmas -Wno-unused-value -Wno-unused-label -Wno-unused-function -Wno-unused-variable -Wno-unused-but-set-variable -DHAVE_CONFIG_H -DSQUEAK_BUILTIN_PLUGIN -I/home/vaidas/opensmalltalk-vm/building/linux32x86/squeak.cog.spur/build -I/home/vaidas/opensmalltalk-vm/building/linux32x86/squeak.cog.spur/build -I/home/vaidas/opensmalltalk-vm/platforms/unix/vm -I/home/vaidas/opensmalltalk-vm/platforms/Cross/vm -I/home/vaidas/opensmalltalk-vm/src/spur32.cog -I/home/vaidas/opensmalltalk-vm/platforms/Cross/plugins/SerialPlugin -m32 -Wno-missing-braces -Wno-unknown-pragmas -Wno-unused-value -Wno-unused-label -Wno-unused-function -Wno-unused-variable -Wno-unused-but-set-variable -c -o sqUnixSerial.o /home/vaidas/opensmalltalk-vm/platforms/unix/plugins/SerialPlugin/sqUnixSerial.c /home/vaidas/opensmalltalk-vm/platforms/unix/plugins/SerialPlugin/sqUnixSerial.c:98:13: error: use of undeclared identifier 'B576000' { 576000, B576000 }, ^ /home/vaidas/opensmalltalk-vm/platforms/unix/plugins/SerialPlugin/sqUnixSerial.c:101:14: error: use of undeclared identifier 'B1152000' { 1152000, B1152000 }, ^ 2 errors generated. *** Error code 1
Stop. make[1]: stopped in /home/vaidas/opensmalltalk-vm/building/linux32x86/squeak.cog.spur/build/SerialPlugin *** Error code 1
Stop. make: stopped in /home/vaidas/opensmalltalk-vm/building/linux32x86/squeak.cog.spur/build
thanks, Vaidotas
Hi,
Start off by just commenting those out.
{ 576000, B576000 },
becomes
{ 576000 /* , B576000 */},
and same for the next line. Life will not end if the serial plugin doesn't quite work.
Keep track of what you comment out and then when you are done we can look at what breaks.
cheers
bruce
On 2022-10-27T16:50:59.000+02:00, Vaidotas Didžbalis vaidasd@gmail.com wrote:
Hello Tobias,
can you look whether commit 3e8864544 fixes this?
its stopping in another location: cc -Wall -g -O2 -DNDEBUG -DDEBUGVM=0 -msse2 -DCOGMTVM=0 -pthread -DLSB_FIRST=1 -m32 -Wno-missing-braces -Wno-unknown-pragmas -Wno-unused-value -Wno-unused-label -Wno-unused-function -Wno-unused-variable -Wno-unused-but-set-variable -DHAVE_CONFIG_H -DSQUEAK_BUILTIN_PLUGIN -I/home/vaidas/opensmalltalk-vm/building/linux32x86/squeak.cog.spur/build -I/home/vaidas/opensmalltalk-vm/building/linux32x86/squeak.cog.spur/build -I/home/vaidas/opensmalltalk-vm/platforms/unix/vm -I/home/vaidas/opensmalltalk-vm/platforms/Cross/vm -I/home/vaidas/opensmalltalk-vm/src/spur32.cog -I/home/vaidas/opensmalltalk-vm/platforms/Cross/plugins/SerialPlugin -m32 -Wno-missing-braces -Wno-unknown-pragmas -Wno-unused-value -Wno-unused-label -Wno-unused-function -Wno-unused-variable -Wno-unused-but-set-variable -c -o SerialPlugin.o /home/vaidas/opensmalltalk-vm/src/plugins/SerialPlugin/SerialPlugin.c cc -Wall -g -O2 -DNDEBUG -DDEBUGVM=0 -msse2 -DCOGMTVM=0 -pthread -DLSB_FIRST=1 -m32 -Wno-missing-braces -Wno-unknown-pragmas -Wno-unused-value -Wno-unused-label -Wno-unused-function -Wno-unused-variable -Wno-unused-but-set-variable -DHAVE_CONFIG_H -DSQUEAK_BUILTIN_PLUGIN -I/home/vaidas/opensmalltalk-vm/building/linux32x86/squeak.cog.spur/build -I/home/vaidas/opensmalltalk-vm/building/linux32x86/squeak.cog.spur/build -I/home/vaidas/opensmalltalk-vm/platforms/unix/vm -I/home/vaidas/opensmalltalk-vm/platforms/Cross/vm -I/home/vaidas/opensmalltalk-vm/src/spur32.cog -I/home/vaidas/opensmalltalk-vm/platforms/Cross/plugins/SerialPlugin -m32 -Wno-missing-braces -Wno-unknown-pragmas -Wno-unused-value -Wno-unused-label -Wno-unused-function -Wno-unused-variable -Wno-unused-but-set-variable -c -o sqUnixSerial.o /home/vaidas/opensmalltalk-vm/platforms/unix/plugins/SerialPlugin/sqUnixSerial.c /home/vaidas/opensmalltalk-vm/platforms/unix/plugins/SerialPlugin/sqUnixSerial.c:98:13: error: use of undeclared identifier 'B576000' { 576000, B576000 }, ^ /home/vaidas/opensmalltalk-vm/platforms/unix/plugins/SerialPlugin/sqUnixSerial.c:101:14: error: use of undeclared identifier 'B1152000' { 1152000, B1152000 }, ^ 2 errors generated. *** Error code 1 Stop. make[1]: stopped in /home/vaidas/opensmalltalk-vm/building/linux32x86/squeak.cog.spur/build/SerialPlugin *** Error code 1 Stop. make: stopped in /home/vaidas/opensmalltalk-vm/building/linux32x86/squeak.cog.spur/build thanks, Vaidotas
after commenting out these two codes build succeeded. Do we maintain ability to compile VM on FreeBSD? Thank you, Vaidotas
Hi,
Excellent!
There is no reason not to, especially since you have gone to this trouble, right?
So, could you propose a patch?
I would recommend
#ifdef whateverseemstobecorrectforFreeBSD
#define B576000 576000 #define B1152000 1152000
#endif
or something like that.
cheers
bruce
{ 576000, B576000 },
^
/home/vaidas/opensmalltalk-vm/platforms/unix/plugins/SerialPlugin/sqUnixSerial.c:101:14:
error: use of undeclared identifier 'B1152000'
{ 1152000, B1152000 },
On 2022-10-28T15:26:51.000+02:00, Vaidotas Didžbalis vaidasd@gmail.com wrote:
after commenting out these two codes build succeeded. Do we maintain ability to compile VM on FreeBSD? Thank you, Vaidotas
On Oct 28, 2022, at 6:33 AM, Bruce O'Neel bruce.oneel@pckswarms.ch wrote:
Hi,
Excellent!
There is no reason not to, especially since you have gone to this trouble, right?
So, could you propose a patch?
I would recommend
#ifdef whateverseemstobecorrectforFreeBSD #define B576000 576000 #define B1152000 1152000 #endif
or something like that.
or simply remove SerialPlugin from whichever of plugins.int or plugins.ext it’s in.
Eliot _,,,^..^,,,_ (phone)
cheers
bruce
{ 576000, B576000 }, ^ /home/vaidas/opensmalltalk-vm/platforms/unix/plugins/SerialPlugin/sqUnixSerial.c:101:14: error: use of undeclared identifier 'B1152000' { 1152000, B1152000 },
On 2022-10-28T15:26:51.000+02:00, Vaidotas Didžbalis vaidasd@gmail.com wrote: after commenting out these two codes build succeeded. Do we maintain ability to compile VM on FreeBSD? Thank you, Vaidotas
vm-dev@lists.squeakfoundation.org