I'm trying to build the squeak.cog.spur vm on FreeBSD 12.1
Steps I took so far: - build.linux64x64 - squeak.cog.spur - adding to mvm ``` case $(uname -s) in OpenBSD) CFLAGS="$CFLAGS -I/usr/local/include" LIBS="$LIBS -lexecinfo" LDFLAGS="$LDFLAGS -L/usr/local/lib" ;; FreeBSD) CFLAGS="$CFLAGS -I/usr/local/include" LIBS="$LIBS -lexecinfo -liconv" LDFLAGS="$LDFLAGS -L/usr/local/lib" ;; esac ``` to fix linking issue with libiconv - changed vm-sound-ALSA/sqUnixSoundALSA.c `static char devname[MAX_NAME_LEN]` to `static char a_devname[MAX_NAME_LEN]` and changed all occurences of devname to a_devname to fix a name resoltuion issue with /usr/include/stdlib
Now I'm stuck with plugins/SqueakSSL/sqUnixOpenSSL.inc line 75 ``` /oscog/platforms/unix/plugins/SqueakSSL/sqUnixOpenSSL.inc:75:18: error: variable has incomplete type 'struct in6_addr' struct in6_addr addr = { 0 }; // placeholder, longest of in_addr and in6_addr ```
Compiler is clang 8. Can you give me a hint how to move on?
On 11/04/20 3:47 PM, Jochen Raßler wrote:
|/oscog/platforms/unix/plugins/SqueakSSL/sqUnixOpenSSL.inc:75:18: error: variable has incomplete type 'struct in6_addr' struct in6_addr addr = { 0 }; // placeholder, longest of in_addr and in6_addr |
Compiler is clang 8.
struct in6_addr should have been defined in one of the files included via arpa/inet.h (either netinet/in.h or netinet/in6.h). You may have to look at pre-processed output to see why this file is not being included. Is there a IPV6 related macro that is excluding it?
HTH .. Subbu
Jochen,
This problem is solved in the krono/freebsd-fixes branch of opensmalltalk.vm in github. Not by me, I just start to understand how the whole build is working.
I believe the issue with the declaration of devname in that branch does not occur, because clang version 6 was used for the build.
Also, your updates in the mvm command wil still be necessary, because without them I had a problem including the GL/gl.h header file.
So, by using that branch, and your mvm command, I now have the cog vm working also. It gets killed at the testOut OfMemorySignal, but I choose to ignore it for now. I think I used my quotum of assistance for this month already.
Hope this was helpful,
Edwin Ancaer
On Sat, 11 Apr 2020, 19:08 K K Subbu, kksubbu.ml@gmail.com wrote:
On 11/04/20 3:47 PM, Jochen Raßler wrote:
|/oscog/platforms/unix/plugins/SqueakSSL/sqUnixOpenSSL.inc:75:18: error: variable has incomplete type 'struct in6_addr' struct in6_addr addr = { 0 }; // placeholder, longest of in_addr and in6_addr |
Compiler is clang 8.
struct in6_addr should have been defined in one of the files included via arpa/inet.h (either netinet/in.h or netinet/in6.h). You may have to look at pre-processed output to see why this file is not being included. Is there a IPV6 related macro that is excluding it?
HTH .. Subbu
#481 Takes care of most things here. Can you please check? If it works, please close, if not, please make a new issue.
@koshamo Still interested?
If you folks build it, i will use it. Client of mine runs it and running squeak nativelly on it instead of in a virtual box thingy will be very welcome.
Also appreciate the work on open solaris too. Gotta jeep the sys admins interested ...
---- On Thu, 10 Sep 2020 14:32:19 -0400 notifications@github.com wrote ----
@koshamo Still interested?
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or unsubscribe.
Understood. I would need a voluteer to see if things are ok already since we hat quite a bit of improvement since this PR. I need to see whether everything is fine already or what to cherry-pick from here.
vm-dev@lists.squeakfoundation.org