[Vm-dev] compilation of squeak vm on OpenBSD

Jean-baptiste Potonnier jean.baptiste.potonnier at gmail.com
Thu Jul 29 19:06:17 UTC 2010


Hello, I tried to compile squeak vm on OpenBSD.
I tried to go as far as I could.
I hope I can give you some useful information, it would be very cool to have
the vm working on OpenBSD, and to be able to use Pharo on OpenBSD! :P

Here are the information I can give:

[~]$ uname -a
OpenBSD sashimi.my.domain 4.7 GENERIC#112 amd64


*  OpenBSD uses a too old version of cmake. So I modified
unix/cmake/configure to use cmake 2.8.2
* configure is ok. But is seems that sound will not work.
* compilation fails

[ 76%] Building C object
DBusPlugin/CMakeFiles/DBusPlugin.dir/home/jeeb/build/Squeak-4.0.3.2202-src/unix/src/plugins/DBusPlugin/DBusPlugin.c.o
/home/jeeb/build/Squeak-4.0.3.2202-src/unix/src/plugins/DBusPlugin/DBusPlugin.c:30:17:
aio.h: No such file or directory
/home/jeeb/build/Squeak-4.0.3.2202-src/unix/src/plugins/DBusPlugin/DBusPlugin.c:
In function `createReplyTofrom':
/home/jeeb/build/Squeak-4.0.3.2202-src/unix/src/plugins/DBusPlugin/DBusPlugin.c:390:
warning: assignment makes integer from pointer without a cast
/home/jeeb/build/Squeak-4.0.3.2202-src/unix/src/plugins/DBusPlugin/DBusPlugin.c:391:
warning: passing arg 1 of `dbus_message_set_destination' makes pointer from
integer without a cast
/home/jeeb/build/Squeak-4.0.3.2202-src/unix/src/plugins/DBusPlugin/DBusPlugin.c:392:
warning: passing arg 1 of `dbus_message_set_no_reply' makes pointer from
integer without a cast
/home/jeeb/build/Squeak-4.0.3.2202-src/unix/src/plugins/DBusPlugin/DBusPlugin.c:393:
warning: passing arg 1 of `dbus_message_set_reply_serial' makes pointer from
integer without a cast
/home/jeeb/build/Squeak-4.0.3.2202-src/unix/src/plugins/DBusPlugin/DBusPlugin.c:394:
warning: return makes pointer from integer without a cast
/home/jeeb/build/Squeak-4.0.3.2202-src/unix/src/plugins/DBusPlugin/DBusPlugin.c:
In function `getConnectionFromOop':
/home/jeeb/build/Squeak-4.0.3.2202-src/unix/src/plugins/DBusPlugin/DBusPlugin.c:446:
warning: passing arg 1 of `msg' discards qualifiers from pointer target type
/home/jeeb/build/Squeak-4.0.3.2202-src/unix/src/plugins/DBusPlugin/DBusPlugin.c:
In function `sqDBusPluginAddWatchwithData':
/home/jeeb/build/Squeak-4.0.3.2202-src/unix/src/plugins/DBusPlugin/DBusPlugin.c:1818:
warning: `dbus_watch_get_fd' is deprecated (declared at
/usr/local/include/dbus-1.0/dbus/dbus-connection.h:373)
/home/jeeb/build/Squeak-4.0.3.2202-src/unix/src/plugins/DBusPlugin/DBusPlugin.c:
In function `sqDBusPluginRemoveWatchwithData':
/home/jeeb/build/Squeak-4.0.3.2202-src/unix/src/plugins/DBusPlugin/DBusPlugin.c:1840:
warning: `dbus_watch_get_fd' is deprecated (declared at
/usr/local/include/dbus-1.0/dbus/dbus-connection.h:373)
/home/jeeb/build/Squeak-4.0.3.2202-src/unix/src/plugins/DBusPlugin/DBusPlugin.c:
In function `sqDBusPluginToggleWatchwithData':
/home/jeeb/build/Squeak-4.0.3.2202-src/unix/src/plugins/DBusPlugin/DBusPlugin.c:1852:
warning: `dbus_watch_get_fd' is deprecated (declared at
/usr/local/include/dbus-1.0/dbus/dbus-connection.h:373)
*** Error code 1

Stop in /home/jeeb/build/Squeak-4.0.3.2202-src/bld (line 54 of
DBusPlugin/CMakeFiles/DBusPlugin.dir/build.make).
*** Error code 1

Stop in /home/jeeb/build/Squeak-4.0.3.2202-src/bld (line 1936 of
CMakeFiles/Makefile2).
*** Error code 1

Stop in /home/jeeb/build/Squeak-4.0.3.2202-src/bld (line 113 of Makefile).


*  So I disabled the plugin
[~/build/Squeak-4.0.3.2202-src/bld]$  ../unix/cmake/configure
--without-DBusPlugin

   Scanning dependencies of target XDisplayControlPlugin
[ 97%] Building C object
XDisplayControlPlugin/CMakeFiles/XDisplayControlPlugin.dir/home/jeeb/build/Squeak-4.0.3.2202-src/unix/src/plugins/XDisplayControlPlugin/XDisplayColPlugin.c.o
Linking C shared module so.XDisplayControlPlugin
[ 97%] Built target XDisplayControlPlugin
Scanning dependencies of target vm-display-X11
[ 97%] Building C object
vm-display-X11/CMakeFiles/vm-display-X11.dir/home/jeeb/build/Squeak-4.0.3.2202-src/unix/vm-display-X11/sqUnixX11.c.o
[ 98%] Building C object
vm-display-X11/CMakeFiles/vm-display-X11.dir/home/jeeb/build/Squeak-4.0.3.2202-src/unix/vm-display-X11/sqUnixMozilla.c.o
Linking C shared module so.vm-display-X11
[ 98%] Built target vm-display-X11
Scanning dependencies of target vm-sound-custom
[ 98%] Building C object
vm-sound-custom/CMakeFiles/vm-sound-custom.dir/home/jeeb/build/Squeak-4.0.3.2202-src/unix/vm-sound-custom/sqUnixCustomSound.c.o
Linking C shared module so.vm-sound-custom
[ 98%] Built target vm-sound-custom
Scanning dependencies of target vm-sound-null
[ 99%] Building C object
vm-sound-null/CMakeFiles/vm-sound-null.dir/home/jeeb/build/Squeak-4.0.3.2202-src/unix/vm-sound-null/sqUnixSoundNull.c.o
Linking C shared module so.vm-sound-null
[ 99%] Built target vm-sound-null
Scanning dependencies of target vm-display-custom
[ 99%] Building C object
vm-display-custom/CMakeFiles/vm-display-custom.dir/home/jeeb/build/Squeak-4.0.3.2202-src/unix/vm-display-custom/sqUnixCustomWindow.c.o
/home/jeeb/build/Squeak-4.0.3.2202-src/unix/vm-display-custom/sqUnixCustomWindow.c:20:52:
aio.h: No such file or directory
*** Error code 1

Stop in /home/jeeb/build/Squeak-4.0.3.2202-src/bld (line 54 of
vm-display-custom/CMakeFiles/vm-display-custom.dir/build.make).
*** Error code 1

Stop in /home/jeeb/build/Squeak-4.0.3.2202-src/bld (line 2836 of
CMakeFiles/Makefile2).
*** Error code 1


*  I disabled again :S
[~/build/Squeak-4.0.3.2202-src/bld]$  ../unix/cmake/configure
--without-DBusPlugin --without-vm-display-custom

compilation is successful \o/

But it does not work.

* [~/build/Squeak-4.0.3.2202-src/bld]$
./squeak

SQUEAK_ENCODING=UTF-8
SQUEAK_PATHENC=UTF-8
SQUEAK_PLUGINS=/home/jeeb/build/Squeak-4.0.3.2202-src/bld/%n
+ exec /home/jeeb/build/Squeak-4.0.3.2202-src/bld/squeakvm
/home/jeeb/build/Squeak-4.0.3.2202-src/bld/squeakvm:/home/jeeb/build/Squeak-4.0.3.2202-src/bld/vm-display-X11/so.vm-display-X11:
undefined symbol 'error'
Cannot load specified object
could not find display driver vm-display-X11; either:
  - check that /usr/local/lib/squeak/4.0.3-2202/vm-display-X11.so exists, or
  - use the '-plugins <path>' option to tell me where it is, or
  - remove DISPLAY from your environment.
Abort trap (core dumped)

Hope it helps!!

Bye
Jean-Baptiste Potonnier
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20100729/affdd93e/attachment.htm


More information about the Vm-dev mailing list