![]() |
Request - Boron
Hi,
This is a request for help to get the boron language built for diablo. Boron is an open source rebol like functional language which would be a great fit for these tablets. http://urlan.sourceforge.net/boron/ I am not familiar with scratchbox so would really appreciate it if somebody could do a build for me. Thanks, John |
Re: Request - Boron
1 Attachment(s)
I built version 0.1.4 and it installs and starts fine on my n810. However, I don't know anything about Boron so I can't tell if it's behaving nicely.
Versions 0.1.6 and 0.1.8 don't build and since my porting skills are limited to running configure and make I didn't look into why. I'm also not sure how I'm supposed to get it to you so I packed up a .deb and attached it below. |
Re: Request - Boron
Fantastic, thank you. I'm running it now.
I have been using rebol for years and it is my language of choice for many simple (and complicated) tasks, but unfortunately it is closed source. This is a very similar language although there are quite a number of differences. I'll have a play with it and come up with a few examples of using it based on some of the rebol examples. -J |
Re: Request - Boron
Random trivial examples:
Code:
)> foreach character "maemo" [ print character ] Hopefully it will be extended to contain more useful protocols soon. For example, in rebol you can type Code:
send fred@example.com read http://talk.maemo.org Let me know the compilation errors and I'll drop them on the mailing list to see if anyone can help. Cheers, John |
Re: Request - Boron
When attempting to build 0.1.8 the only errors are:
- sys/eventfd.h not found. - EFD_CLOEXEC is undeclared. A little bit of googling leads me to believe that libc6-dev might be in the wrong place or out of date. Both errors are in port_thread.c so EFD_CLOEXEC is probably declared in the missing header. I also had a problem with "no rule to make link.txt" in boron-lib.dir but I (think I) resolved that by copying the link.txt from my normal (i.e. not scratchbox) build directory and changing the complier settings to match the link.txt in boron-bin.dir. [edit] copypasta of console output: /arm_linux/boron-0.1.8/port_thread.c:25:25: sys/eventfd.h: No such file or directory /arm_linux/boron-0.1.8/port_thread.c: In function `_initThreadQueue': /arm_linux/boron-0.1.8/port_thread.c:99: warning: implicit declaration of function `eventfd' /arm_linux/boron-0.1.8/port_thread.c:99: error: `EFD_CLOEXEC' undeclared (first use in this function) /arm_linux/boron-0.1.8/port_thread.c:99: error: (Each undeclared identifier is reported only once /arm_linux/boron-0.1.8/port_thread.c:99: error: for each function it appears in.) make[2]: *** [CMakeFiles/boron-lib.dir/port_thread.c.o] Error 1 make[1]: *** [CMakeFiles/boron-lib.dir/all] Error 2 make: *** [all] Error 2 |
Re: Request - Boron
Hi Philip,
The Boron developer sent the following suggestion. Thanks again, John The eventfd man page says it is available since Linux 2.6.22 and glibc 2.8. If this API is not available you can disable threads by setting thread: false in the project.b file or apply the following patch to CMakeLists.txt if you build that way. I don't know anything about a link.txt file, so I'm afraid I can't help you with that. diff --git a/CMakeLists.txt b/CMakeLists.txt index b19da15..4a28204 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -20,7 +20,7 @@ add_definitions( -DCONFIG_COMPRESS=1 -DCONFIG_RANDOM # -DCONFIG_TIMECODE - -DCONFIG_THREAD +# -DCONFIG_THREAD ) if(CMAKE_BUILD_TYPE STREQUAL "Debug") @@ -64,7 +64,7 @@ add_library(boron-lib SHARED boron.c port_file.c port_socket.c - port_thread.c +# port_thread.c ${OS_FILE} ) @@ -78,7 +78,7 @@ if (APPLE) # target_link_libraries(boron-lib m bz2) endif () if (UNIX AND NOT APPLE) - target_link_libraries(boron-lib m z pthread) + target_link_libraries(boron-lib m z) # target_link_libraries(boron-lib m bz2 pthread) endif () if (WIN32) -Karl |
Re: Request - Boron
Given that we only have one CPU to play with disabling threads is probably for the best anyway so I might give that a try.
|
All times are GMT. The time now is 19:16. |
vBulletin® Version 3.8.8