[squeak-dev] Building Cog with vm-display-fbdev

Eliot Miranda eliot.miranda at gmail.com
Mon Jan 30 17:54:22 UTC 2012


Hi Michael,

On Sun, Jan 29, 2012 at 1:12 PM, Michael J. Zeder
<post at michael-j-zeder.de>wrote:

>  hi!
> I changed inelegantly the configure script to get a vm-display-fbdev and...
> ...came to understand, that there are more issues with Cog + fbdev (below
> is the make output).
>
> Now I wanted to put it in a general question: are there efforts to
> maintain the vm-display-fbdev for CogVM? I guess there is little need for
> it in general, but in some cases it is nice to have (for building embedded
> or tiny systems the linux framebuffer is nice; sleak, confless).
> Can anybody help me? Thanks.
>

The Cog VM is derived from Qwaq/Teleplace (a defunct company that developed
Croquet for business).  There the display system was extended for
additional host window support.  That support was implemented for
vm-display-X11 and vm-display-null but not for vm-display-fbdev.  You'll
need to implement similar stubs that you'll find in the vm-display-null,
since most of these primitives don't make sense/don't do anything in the
context of fbdav (which takes control of the frame buffer and is hence
always full-screen).  When you've implemented the stubs please send me the
code so I can implement.

Doubtless you'll have worked out that you want to say
"--with-vm-display-fbdev" to get that compiled in.

HTH & good luck
Eliot



>
> Cheers!
>
> /bin/bash /home/mjz/Squeak/squeakvm/Cog/unixbuild/bld/libtool
> --mode=compile gcc -g -O2 -msse2 -D_GNU_SOURCE -DNDEBUG
> -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DDEBUGVM=0 -msse
> -DLSB_FIRST=1 -g -O2 -msse2 -D_GNU_SOURCE -DNDEBUG -DITIMER_HEARTBEAT=1
> -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DDEBUGVM=0 -msse -DLSB_FIRST=1 -Wall -Werror
> -DHAVE_CONFIG_H  -I/home/mjz/Squeak/squeakvm/Cog/unixbuild/bld
> -I/home/mjz/Squeak/squeakvm/Cog/unixbuild/bld
> -I/home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm
> -I/home/mjz/Squeak/squeakvm/Cog/platforms/Cross/vm
> -I/home/mjz/Squeak/squeakvm/Cog/src/vm
> -I/home/mjz/Squeak/squeakvm/Cog/unixbuild/bld
> -I/home/mjz/Squeak/squeakvm/Cog/unixbuild/bld
> -I/home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm
> -I/home/mjz/Squeak/squeakvm/Cog/platforms/Cross/vm
> -I/home/mjz/Squeak/squeakvm/Cog/src/vm
> -I/home/mjz/Squeak/squeakvm/Cog/platforms/Cross/plugins/FilePlugin
> -I/home/mjz/Squeak/squeakvm/Cog/platforms/Cross/plugins/B3DAcceleratorPlugin
> -I/home/mjz/Squeak/squeakvm/Cog/platforms/unix/plugins/B3DAcceleratorPlugin
> -c -o sqUnixFBDev.lo
> /home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm-display-fbdev/sqUnixFBDev.c
> gcc -g -O2 -msse2 -D_GNU_SOURCE -DNDEBUG -DITIMER_HEARTBEAT=1
> -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DDEBUGVM=0 -msse -DLSB_FIRST=1 -g -O2 -msse2
> -D_GNU_SOURCE -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0
> -DDEBUGVM=0 -msse -DLSB_FIRST=1 -Wall -Werror -DHAVE_CONFIG_H
> -I/home/mjz/Squeak/squeakvm/Cog/unixbuild/bld
> -I/home/mjz/Squeak/squeakvm/Cog/unixbuild/bld
> -I/home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm
> -I/home/mjz/Squeak/squeakvm/Cog/platforms/Cross/vm
> -I/home/mjz/Squeak/squeakvm/Cog/src/vm
> -I/home/mjz/Squeak/squeakvm/Cog/unixbuild/bld
> -I/home/mjz/Squeak/squeakvm/Cog/unixbuild/bld
> -I/home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm
> -I/home/mjz/Squeak/squeakvm/Cog/platforms/Cross/vm
> -I/home/mjz/Squeak/squeakvm/Cog/src/vm
> -I/home/mjz/Squeak/squeakvm/Cog/platforms/Cross/plugins/FilePlugin
> -I/home/mjz/Squeak/squeakvm/Cog/platforms/Cross/plugins/B3DAcceleratorPlugin
> -I/home/mjz/Squeak/squeakvm/Cog/platforms/unix/plugins/B3DAcceleratorPlugin
> -c
> /home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm-display-fbdev/sqUnixFBDev.c
> -fPIC -DPIC -DPIC -o sqUnixFBDev.o
> In file included from
> /home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm-display-fbdev/sqUnixFBDev.c:39:0:
> /home/mjz/Squeak/squeakvm/Cog/platforms/Cross/vm/sq.h:194:0: error:
> ignoring #pragma auto_inline off [-Werror=unknown-pragmas]
> /home/mjz/Squeak/squeakvm/Cog/platforms/Cross/vm/sq.h:196:0: error:
> ignoring #pragma auto_inline on [-Werror=unknown-pragmas]
> /home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm-display-fbdev/sqUnixFBDev.c:474:1:
> error: initialization from incompatible pointer type [-Werror]
> /home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm-display-fbdev/sqUnixFBDev.c:474:1:
> error: (near initialization for 'display_fbdev_itf.winOpen') [-Werror]
> /home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm-display-fbdev/sqUnixFBDev.c:474:1:
> error: 'display_ioPositionOfScreenWorkArea' undeclared here (not in a
> function)
> /home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm-display-fbdev/sqUnixFBDev.c:474:1:
> error: 'display_ioSizeOfScreenWorkArea' undeclared here (not in a function)
> /home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm-display-fbdev/sqUnixFBDev.c:474:1:
> error: 'display_ioSetCursorPositionXY' undeclared here (not in a function)
> /home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm-display-fbdev/sqUnixFBDev.c:474:1:
> error: 'display_ioGetWindowHandle' undeclared here (not in a function)
> /home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm-display-fbdev/sqUnixFBDev.c:474:1:
> error: 'display_ioPositionOfNativeDisplay' undeclared here (not in a
> function)
> /home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm-display-fbdev/sqUnixFBDev.c:474:1:
> error: 'display_ioSizeOfNativeDisplay' undeclared here (not in a function)
> /home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm-display-fbdev/sqUnixFBDev.c:474:1:
> error: 'display_ioPositionOfNativeWindow' undeclared here (not in a
> function)
> /home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm-display-fbdev/sqUnixFBDev.c:474:1:
> error: 'display_ioSizeOfNativeWindow' undeclared here (not in a function)
> /home/mjz/Squeak/squeakvm/Cog/platforms/unix/vm-display-fbdev/sqUnixFBDev.c:407:14:
> error: 'display_dndLaunchFile' defined but not used
> [-Werror=unused-function]
> cc1: all warnings being treated as errors
>
> make[1]: *** [sqUnixFBDev.lo] Fehler 1
> make: *** [vm-display-fbdev.la] Fehler 2
>
>
>
> Am 29.01.2012 19:31, schrieb Michael J. Zeder:
>
> hello everbody,
>
> I want to build the CogVM (latest revision from squeakvm.org/svn/branches/Cog),
> but with the vm-display-fbdev module (for linux framebuffer device) as default.
>
> Now I am a bit stuck in understanding the make process. Just leaving out the "--without-vm-display-fbdev" as argument to the configure script does not lead to it being included in the compile process.
> Also I don't find the exact location in the scripts, where to tell that the vm-display-fbdev should not only be included, but shall also replace the default display-X11-module.
>
> Thanks for your help,
> best regards
> Michael
>
>
>
>
>
>
>
>


-- 
best,
Eliot
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20120130/75fd5c42/attachment.htm


More information about the Squeak-dev mailing list