Hello,
I've noticed a few emails about running Cog on FreeBSD on some of the other mailing lists and was wondering if it would be possible to get a few patches integrated into the main repository? Sorry if I'm not following protocol for patch submission or style, I couldn't find any guidelines. I'd be happy to resubmit if this isn't the place.
With the following patches, Cog r2372 will compile and run on FreeBSD (and PCBSD) 8.2 i386. I've been able to use Squeak, Pharo, and Seaside images. Here is the configure line:
../../platforms/unix/config/configure CFLAGS="-g -O2 -msse2 -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DNOEXECINFO -DDEBUGVM=0" LIBS=-lpthread --without-npsqueak
Here is the diff. Index: platforms/unix/plugins/SqueakFFIPrims/ffi-config =================================================================== --- platforms/unix/plugins/SqueakFFIPrims/ffi-config (revision 2372) +++ platforms/unix/plugins/SqueakFFIPrims/ffi-config (working copy) @@ -39,6 +39,7 @@
case ${abi} in linux) abi=sysv;; + freebsd) abi=sysv;; darwin*) abi=darwin;; *) abi=libffi; lib="-lffi";; esac Index: platforms/unix/vm/sqUnixMain.c =================================================================== --- platforms/unix/vm/sqUnixMain.c (revision 2372) +++ platforms/unix/vm/sqUnixMain.c (working copy) @@ -60,6 +60,9 @@ # include <execinfo.h> # define BACKTRACE_DEPTH 64 #endif +#if __FreeBSD__ +# include <sys/ucontext.h> +#endif
#if defined(__alpha__) && defined(__osf__) # include <sys/sysinfo.h> @@ -777,6 +780,9 @@ # elif __linux__ && __i386__ void *fp = (void *)(uap ? uap->uc_mcontext.gregs[REG_EBP]: 0); void *sp = (void *)(uap ? uap->uc_mcontext.gregs[REG_ESP]: 0); +# elif __FreeBSD__ && __i386__ + void *fp = (void *)(uap ? uap->uc_mcontext.mc_ebp: 0); + void *sp = (void *)(uap ? uap->uc_mcontext.mc_esp: 0); # else # error need to implement extracting pc from a ucontext_t on this system # endif Index: platforms/Cross/plugins/SqueakFFIPrims/sqFFIPlugin.c =================================================================== --- platforms/Cross/plugins/SqueakFFIPrims/sqFFIPlugin.c (revision 2372) +++ platforms/Cross/plugins/SqueakFFIPrims/sqFFIPlugin.c (working copy) @@ -10,7 +10,7 @@ *****************************************************************************/
#include <stdio.h> -#if !WIN32 +#if !WIN32 && !__FreeBSD__ # include <alloca.h> #endif #include <string.h>
On 21 March 2011 14:50, David Graham dgraham@unthinkable.org wrote:
Hello,
I've noticed a few emails about running Cog on FreeBSD on some of the other mailing lists and was wondering if it would be possible to get a few patches integrated into the main repository? Sorry if I'm not following protocol for patch submission or style, I couldn't find any guidelines. I'd be happy to resubmit if this isn't the place.
Hello, David.
You could make things much easier if you could register at gitorious.org and clone cogvm repository (http://gitorious.org/cogvm)
Then you can have own copy of sources and publish your changes there. So, then its extremely easy to pick them up and integrate them in a couple of minutes.
And more important, in a longer perspective it will serve much better: - your changes will be recorded (and not lost in mailing list) - if you find another bug or two, you already have a place where to put it and its much easier for others to pick them up..
In addition we can create a separate FreeBSD configuration which could build VM out of the box (see CMakeVMMaker package).
Another thing which could be done is , if you (or someone else) having FreeBSD box where you could install Hudson slave software, then we could add it to our continuous integration setup (see https://pharo-ic.lille.inria.fr/hudson/view/Cog/), and then you will have freshly built VMs each time we posting changes to VM.
With the following patches, Cog r2372 will compile and run on FreeBSD (and PCBSD) 8.2 i386. I've been able to use Squeak, Pharo, and Seaside images. Here is the configure line:
../../platforms/unix/config/configure CFLAGS="-g -O2 -msse2 -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DNOEXECINFO -DDEBUGVM=0" LIBS=-lpthread --without-npsqueak
Here is the diff. Index: platforms/unix/plugins/SqueakFFIPrims/ffi-config =================================================================== --- platforms/unix/plugins/SqueakFFIPrims/ffi-config (revision 2372) +++ platforms/unix/plugins/SqueakFFIPrims/ffi-config (working copy) @@ -39,6 +39,7 @@
case ${abi} in linux) abi=sysv;;
- freebsd) abi=sysv;;
darwin*) abi=darwin;; *) abi=libffi; lib="-lffi";; esac Index: platforms/unix/vm/sqUnixMain.c =================================================================== --- platforms/unix/vm/sqUnixMain.c (revision 2372) +++ platforms/unix/vm/sqUnixMain.c (working copy) @@ -60,6 +60,9 @@ # include <execinfo.h> # define BACKTRACE_DEPTH 64 #endif +#if __FreeBSD__ +# include <sys/ucontext.h> +#endif
#if defined(__alpha__) && defined(__osf__) # include <sys/sysinfo.h> @@ -777,6 +780,9 @@ # elif __linux__ && __i386__ void *fp = (void *)(uap ? uap->uc_mcontext.gregs[REG_EBP]: 0); void *sp = (void *)(uap ? uap->uc_mcontext.gregs[REG_ESP]: 0); +# elif __FreeBSD__ && __i386__
- void *fp = (void *)(uap ? uap->uc_mcontext.mc_ebp: 0);
- void *sp = (void *)(uap ? uap->uc_mcontext.mc_esp: 0);
# else # error need to implement extracting pc from a ucontext_t on this system # endif Index: platforms/Cross/plugins/SqueakFFIPrims/sqFFIPlugin.c =================================================================== --- platforms/Cross/plugins/SqueakFFIPrims/sqFFIPlugin.c (revision 2372) +++ platforms/Cross/plugins/SqueakFFIPrims/sqFFIPlugin.c (working copy) @@ -10,7 +10,7 @@ *****************************************************************************/
#include <stdio.h> -#if !WIN32 +#if !WIN32 && !__FreeBSD__ # include <alloca.h> #endif #include <string.h>
On Mar 21, 2011, at 9:03 AM, Igor Stasenko wrote:
On 21 March 2011 14:50, David Graham dgraham@unthinkable.org wrote:
Hello,
I've noticed a few emails about running Cog on FreeBSD on some of the other mailing lists and was wondering if it would be possible to get a few patches integrated into the main repository? Sorry if I'm not following protocol for patch submission or style, I couldn't find any guidelines. I'd be happy to resubmit if this isn't the place.
Hello, David.
You could make things much easier if you could register at gitorious.org and clone cogvm repository (http://gitorious.org/cogvm)
Done. http://gitorious.org/~dgraham/cogvm/dgraham-freebsd
In addition we can create a separate FreeBSD configuration which could build VM out of the box (see CMakeVMMaker package).
Another thing which could be done is , if you (or someone else) having FreeBSD box where you could install Hudson slave software, then we could add it to our continuous integration setup (see https://pharo-ic.lille.inria.fr/hudson/view/Cog/), and then you will have freshly built VMs each time we posting changes to VM.
I'd be interested in getting this working, is there someone I can contact directly?
Thanks, David
Thanks david contact marcus or igor marcus.denker@inria.fr or igor since they manage the slaves. We are waiting for a windows slave.
Stef
Hello, David.
You could make things much easier if you could register at gitorious.org and clone cogvm repository (http://gitorious.org/cogvm)
Done. http://gitorious.org/~dgraham/cogvm/dgraham-freebsd
In addition we can create a separate FreeBSD configuration which could build VM out of the box (see CMakeVMMaker package).
Another thing which could be done is , if you (or someone else) having FreeBSD box where you could install Hudson slave software, then we could add it to our continuous integration setup (see https://pharo-ic.lille.inria.fr/hudson/view/Cog/), and then you will have freshly built VMs each time we posting changes to VM.
I'd be interested in getting this working, is there someone I can contact directly?
Thanks, David
Hi David,
On Mon, Mar 21, 2011 at 6:50 AM, David Graham dgraham@unthinkable.orgwrote:
Hello,
I've noticed a few emails about running Cog on FreeBSD on some of the other mailing lists and was wondering if it would be possible to get a few patches integrated into the main repository? Sorry if I'm not following protocol for patch submission or style, I couldn't find any guidelines. I'd be happy to resubmit if this isn't the place.
This'll do. This is the place. Thanks, but I have some reservations.
With the following patches, Cog r2372 will compile and run on FreeBSD (and PCBSD) 8.2 i386. I've been able to use Squeak, Pharo, and Seaside images. Here is the configure line:
../../platforms/unix/config/configure CFLAGS="-g -O2 -msse2 -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DNOEXECINFO -DDEBUGVM=0" LIBS=-lpthread --without-npsqueak
Thanks.
Here is the diff. Index: platforms/unix/plugins/SqueakFFIPrims/ffi-config =================================================================== --- platforms/unix/plugins/SqueakFFIPrims/ffi-config (revision 2372) +++ platforms/unix/plugins/SqueakFFIPrims/ffi-config (working copy) @@ -39,6 +39,7 @@
case ${abi} in linux) abi=sysv;;
- freebsd) abi=sysv;; darwin*) abi=darwin;; *) abi=libffi; lib="-lffi";;
esac
This should be irrelevant. You should not be building the old plugin but instead be using ReentrantFFIPlugin or ThreadedFFIPlugin. Is this simply to get the configure to run? If so I'll try and excise support for the old FFI plugin.
Index: platforms/unix/vm/sqUnixMain.c
--- platforms/unix/vm/sqUnixMain.c (revision 2372) +++ platforms/unix/vm/sqUnixMain.c (working copy) @@ -60,6 +60,9 @@ # include <execinfo.h> # define BACKTRACE_DEPTH 64 #endif +#if __FreeBSD__ +# include <sys/ucontext.h> +#endif
#if defined(__alpha__) && defined(__osf__) # include <sys/sysinfo.h> @@ -777,6 +780,9 @@ # elif __linux__ && __i386__ void *fp = (void *)(uap ? uap->uc_mcontext.gregs[REG_EBP]: 0); void *sp = (void *)(uap ? uap->uc_mcontext.gregs[REG_ESP]: 0); +# elif __FreeBSD__ && __i386__
void *fp = (void *)(uap ? uap->uc_mcontext.mc_ebp:
0);
void *sp = (void *)(uap ? uap->uc_mcontext.mc_esp:
0); # else # error need to implement extracting pc from a ucontext_t on this system # endif
Excellent. Thanks.
Index: platforms/Cross/plugins/SqueakFFIPrims/sqFFIPlugin.c
--- platforms/Cross/plugins/SqueakFFIPrims/sqFFIPlugin.c (revision 2372) +++ platforms/Cross/plugins/SqueakFFIPrims/sqFFIPlugin.c (working copy) @@ -10,7 +10,7 @@
*****************************************************************************/
#include <stdio.h> -#if !WIN32 +#if !WIN32 && !__FreeBSD__ # include <alloca.h> #endif #include <string.h>
Great, thanks!
Thanks Eliot!
Index: platforms/unix/plugins/SqueakFFIPrims/ffi-config
--- platforms/unix/plugins/SqueakFFIPrims/ffi-config (revision 2372) +++ platforms/unix/plugins/SqueakFFIPrims/ffi-config (working copy) @@ -39,6 +39,7 @@
case ${abi} in linux) abi=sysv;;
- freebsd) abi=sysv;; darwin*) abi=darwin;; *) abi=libffi; lib="-lffi";;
esac
This should be irrelevant. You should not be building the old plugin but instead be using ReentrantFFIPlugin or ThreadedFFIPlugin. Is this simply to get the configure to run? If so I'll try and excise support for the old FFI plugin.
Sorry, I picked this up from the freebsd squeak port and didn't realize it wasn't needed anymore. Cog will configure, build, and run without this change. The other two patches are required to successfully build.
On Mon, Mar 21, 2011 at 08:50:25AM -0500, David Graham wrote:
With the following patches, Cog r2372 will compile and run on FreeBSD (and PCBSD) 8.2 i386. I've been able to use Squeak, Pharo, and Seaside images. Here is the configure line:
Hi David,
Have you by chance tested your patches on 7.x?
I'm still running the older version of Cog I built on 7.3, since 7.3 is an LTS. Will try your patches but just wondering.
Thanks.
Pierce
Hi Pierce, I haven't tested on FreeBSD 7, but none of my changes are specific to 8. Also, most of my testing is with headless builds using RFBServer in the image (I'm running Amazon EC2, ARP Networks VPS, and vmware instances), although I did fire up PCBSD to make sure x11 worked.
On Mar 22, 2011, at 6:23 AM, Pierce Ng wrote:
On Mon, Mar 21, 2011 at 08:50:25AM -0500, David Graham wrote:
With the following patches, Cog r2372 will compile and run on FreeBSD (and PCBSD) 8.2 i386. I've been able to use Squeak, Pharo, and Seaside images. Here is the configure line:
Hi David,
Have you by chance tested your patches on 7.x?
I'm still running the older version of Cog I built on 7.3, since 7.3 is an LTS. Will try your patches but just wondering.
Thanks.
Pierce
I have a (jail on a) FreeBSD 7.3 machine, if we need a Hudson slave.
Can slaves run behind a NAT?
frank
On 2011/03/22 16:06, David Graham wrote:
Hi Pierce, I haven't tested on FreeBSD 7, but none of my changes are specific to 8. Also, most of my testing is with headless builds using RFBServer in the image (I'm running Amazon EC2, ARP Networks VPS, and vmware instances), although I did fire up PCBSD to make sure x11 worked.
On Mar 22, 2011, at 6:23 AM, Pierce Ng wrote:
On Mon, Mar 21, 2011 at 08:50:25AM -0500, David Graham wrote:
With the following patches, Cog r2372 will compile and run on FreeBSD (and PCBSD) 8.2 i386. I've been able to use Squeak, Pharo, and Seaside images. Here is the configure line:
Hi David,
Have you by chance tested your patches on 7.x?
I'm still running the older version of Cog I built on 7.3, since 7.3 is an LTS. Will try your patches but just wondering.
Thanks.
Pierce
"Frank" == Frank Shearar frank.shearar@angband.za.org writes:
Frank> I have a (jail on a) FreeBSD 7.3 machine, if we need a Hudson slave.
Frank> Can slaves run behind a NAT?
I recently gave a slave a 127.1/16 address on my box, and then used pf BINAT to allow selective inward/outward connections to a secondary public IP I had. Worked pretty well.
On 2011/03/22 16:21, Randal L. Schwartz wrote:
"Frank" == Frank Sheararfrank.shearar@angband.za.org writes:
Frank> I have a (jail on a) FreeBSD 7.3 machine, if we need a Hudson slave.
Frank> Can slaves run behind a NAT?
I recently gave a slave a 127.1/16 address on my box, and then used pf BINAT to allow selective inward/outward connections to a secondary public IP I had. Worked pretty well.
I was thinking primarily of my laptop, which I'm happy to have as a slave. It's not always online, and it's always behind some NAT or other, so I wondered whether it'd be suitable as a hudson slave.
But my FreeBSD jail has a public IP so I just need to be told how to set it up!
frank
On 22 March 2011 17:32, Frank Shearar frank.shearar@angband.za.org wrote:
On 2011/03/22 16:21, Randal L. Schwartz wrote:
> > "Frank" == Frank Sheararfrank.shearar@angband.za.org writes:
Frank> I have a (jail on a) FreeBSD 7.3 machine, if we need a Hudson slave.
Frank> Can slaves run behind a NAT?
I recently gave a slave a 127.1/16 address on my box, and then used pf BINAT to allow selective inward/outward connections to a secondary public IP I had. Worked pretty well.
I was thinking primarily of my laptop, which I'm happy to have as a slave. It's not always online, and it's always behind some NAT or other, so I wondered whether it'd be suitable as a hudson slave.
But my FreeBSD jail has a public IP so I just need to be told how to set it up!
create a user named hudson and put the attached file to its .ssh dir (in attachment)
(and probably you have to enable sshd options somewhere to use authorized_keys file(s) if its not on by default)
You also need a working java there. And give your IP :)
frank
On 2011/03/22 18:25, Igor Stasenko wrote:
On 22 March 2011 17:32, Frank Sheararfrank.shearar@angband.za.org wrote:
On 2011/03/22 16:21, Randal L. Schwartz wrote:
>> >> "Frank" == Frank Sheararfrank.shearar@angband.za.org writes:
Frank> I have a (jail on a) FreeBSD 7.3 machine, if we need a Hudson slave.
Frank> Can slaves run behind a NAT?
I recently gave a slave a 127.1/16 address on my box, and then used pf BINAT to allow selective inward/outward connections to a secondary public IP I had. Worked pretty well.
I was thinking primarily of my laptop, which I'm happy to have as a slave. It's not always online, and it's always behind some NAT or other, so I wondered whether it'd be suitable as a hudson slave.
But my FreeBSD jail has a public IP so I just need to be told how to set it up!
create a user named hudson and put the attached file to its .ssh dir (in attachment)
(and probably you have to enable sshd options somewhere to use authorized_keys file(s) if its not on by default)
You also need a working java there. And give your IP :)
OK, the account's set up, and I have a java 1.6 installed.
You also have my IP, in another mail :)
frank
Frank> I have a (jail on a) FreeBSD 7.3 machine, if we need a Hudson slave.
Frank> Can slaves run behind a NAT?
I recently gave a slave a 127.1/16 address on my box, and then used pf BINAT to allow selective inward/outward connections to a secondary public IP I had. Worked pretty well.
I was thinking primarily of my laptop, which I'm happy to have as a slave. It's not always online, and it's always behind some NAT or other, so I wondered whether it'd be suitable as a hudson slave.
But my FreeBSD jail has a public IP so I just need to be told how to set it up!
create a user named hudson and put the attached file to its .ssh dir (in attachment)
(and probably you have to enable sshd options somewhere to use authorized_keys file(s) if its not on by default)
You also need a working java there. And give your IP :)
OK, the account's set up, and I have a java 1.6 installed.
You also have my IP, in another mail :)
frank
We probably don't need two freebsd build servers, but I now have a dedicated host available if you guys are still interested?
On 2011/03/22 22:15, David Graham wrote:
Frank> I have a (jail on a) FreeBSD 7.3 machine, if we need a Hudson slave.
Frank> Can slaves run behind a NAT?
I recently gave a slave a 127.1/16 address on my box, and then used pf BINAT to allow selective inward/outward connections to a secondary public IP I had. Worked pretty well.
I was thinking primarily of my laptop, which I'm happy to have as a slave. It's not always online, and it's always behind some NAT or other, so I wondered whether it'd be suitable as a hudson slave.
But my FreeBSD jail has a public IP so I just need to be told how to set it up!
create a user named hudson and put the attached file to its .ssh dir (in attachment)
(and probably you have to enable sshd options somewhere to use authorized_keys file(s) if its not on by default)
You also need a working java there. And give your IP :)
OK, the account's set up, and I have a java 1.6 installed.
You also have my IP, in another mail :)
frank
We probably don't need two freebsd build servers, but I now have a dedicated host available if you guys are still interested?
David, I offered because I thought you were running 8, and it'd be useful verifying things on both a 7.x and 8.x machine. (Also, for extra kinks/kicks my box is an amd64, so that might help push the envelope further.)
But even if you're also running a 7.3 amd64, a bit of redundancy won't hurt.
frank
On 22 March 2011 23:24, Frank Shearar frank.shearar@angband.za.org wrote:
On 2011/03/22 22:15, David Graham wrote:
Frank> I have a (jail on a) FreeBSD 7.3 machine, if we need a Hudson slave.
Frank> Can slaves run behind a NAT?
I recently gave a slave a 127.1/16 address on my box, and then used pf BINAT to allow selective inward/outward connections to a secondary public IP I had. Worked pretty well.
I was thinking primarily of my laptop, which I'm happy to have as a slave. It's not always online, and it's always behind some NAT or other, so I wondered whether it'd be suitable as a hudson slave.
But my FreeBSD jail has a public IP so I just need to be told how to set it up!
create a user named hudson and put the attached file to its .ssh dir (in attachment)
(and probably you have to enable sshd options somewhere to use authorized_keys file(s) if its not on by default)
You also need a working java there. And give your IP :)
OK, the account's set up, and I have a java 1.6 installed.
You also have my IP, in another mail :)
frank
We probably don't need two freebsd build servers, but I now have a dedicated host available if you guys are still interested?
David, I offered because I thought you were running 8, and it'd be useful verifying things on both a 7.x and 8.x machine. (Also, for extra kinks/kicks my box is an amd64, so that might help push the envelope further.)
But even if you're also running a 7.3 amd64, a bit of redundancy won't hurt.
Yep. No problem.. we could use both slaves for SETI program (in case of need ;)
frank
So, at this point could someone either build me a FreeBSD 8.1 amd64 VM, or point me at an up-to-date set of instructions to build it myself?
And it'd be nice to get the FreeBSD "port" updated as well, since I'd rather install it from a port. The existing port is still building 3.9 at patchlevel 7067. :)
On 22 March 2011 23:35, Randal L. Schwartz merlyn@stonehenge.com wrote:
So, at this point could someone either build me a FreeBSD 8.1 amd64 VM, or point me at an up-to-date set of instructions to build it myself?
Here i sketched a brief instructions how to do that:
http://code.google.com/p/cog/wiki/CMakeVMMaker
And it'd be nice to get the FreeBSD "port" updated as well, since I'd rather install it from a port. The existing port is still building 3.9 at patchlevel 7067. :)
-- Randal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095 merlyn@stonehenge.com URL:http://www.stonehenge.com/merlyn/ Smalltalk/Perl/Unix consulting, Technical writing, Comedy, etc. etc. See http://methodsandmessages.posterous.com/ for Smalltalk discussion
On Wed, Mar 23, 2011 at 12:15:23AM +0100, Igor Stasenko wrote:
On 22 March 2011 23:35, Randal L. Schwartz merlyn@stonehenge.com wrote:
So, at this point could someone either build me a FreeBSD 8.1 amd64 VM, or point me at an up-to-date set of instructions to build it myself?
Here i sketched a brief instructions how to do that:
Randal,
Igor's instructions should yield a much faster VM, but to build a 64-bit standard VM, the following steps should also work. Caveat: I do not have a FreeBSD system to test.
Assumptions: Generate sources on a Linux box or some other box with a working VM (assume Linux) Target is FreeBSD 64-bit AMD The FreeBSD box has a reasonably recent version of CMake (www.cmake.org)
Start in clean directory on the Linux box. Download files and run Squeak.
$ mkdir myworkingdir; cd myworkingdir $ svn co http://squeakvm.org/svn/squeak/trunk/platforms $ wget http://ftp.squeak.org/4.2/Squeak4.2-10966.zip $ unzip Squeak4.2-10966.zip $ wget http://ftp.squeak.org/4.2/SqueakV41.sources.gz $ gunzip SqueakV41.sources.gz $ squeak Squeak4.2-10966.image
Load VMMaker.
- Open a Monticello browser - Add repository http://www.squeaksource.com/VMMaker - Open repository, package category 'update', load latest (update-dtl.7.mcm) - Evaluate "VMMaker updateFromServer" (accept merges for FFI).
Generate sources.
- World menu -> open... -> VMMaker - Click on the Help button, upper left corner the VMMaker tool - Read it (really, no kidding, read it, thanks to tpr for this) - Drag the following from "Plugins not built" pane to "Internal Plugins" pane: BalloonEnginePlugin BitBltSimulation FilePlugin MiscPrimitivePlugin SocketPlugin - Drag the following from "Plugins not built" pane to "External Plugins" pane: DeflatePlugin - Note, you must have at least one external plugin (this is a bug in the CMake build procedure, note to self - follow up and get it fixed) - Click on the generate "Entire" button.
Exit the image and go back to unix. At this point you have a ./platforms and ./src directory. You will copy these over to the BSD target to build the final VM, but before doing that make sure you you build it here. So...
$ mkdir build; cd build $ ../platforms/unix/cmake/configure --help $ ../platforms/unix/cmake/configure --src=../src --without-gl $ make $ make install
Assuming that the above produces a working VM, you can copy the ./src and ./platforms over to your BSD system and repeat the configure and make on that system.
HTH, Dave
Hi Randal, I have a 32bit vm available (which I've tested on a 64bit vps). http://www.unthinkable.org/dl/cogvm-2373-freebsd-i386.tgz
On Mar 22, 2011, at 5:35 PM, Randal L. Schwartz wrote:
So, at this point could someone either build me a FreeBSD 8.1 amd64 VM, or point me at an up-to-date set of instructions to build it myself?
And it'd be nice to get the FreeBSD "port" updated as well, since I'd rather install it from a port. The existing port is still building 3.9 at patchlevel 7067. :)
-- Randal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095 merlyn@stonehenge.com URL:http://www.stonehenge.com/merlyn/ Smalltalk/Perl/Unix consulting, Technical writing, Comedy, etc. etc. See http://methodsandmessages.posterous.com/ for Smalltalk discussion
On Tue, Mar 22, 2011 at 03:35:37PM -0700, Randal L. Schwartz wrote:
So, at this point could someone either build me a FreeBSD 8.1 amd64 VM, or point me at an up-to-date set of instructions to build it myself?
I believe Cog is 32-bit only, for now?
I too am running Cog on 7.3 amd64, but the executable is 32-bit. I installed 7.3 x86 in a VirtualBox instance and built Cog there.
I configured both slaves,
and David's is up and running now. https://pharo-ic.lille.inria.fr/hudson/computer/cogvm.unthinkable.org%20%28F...
Frank's one seems like down? ssh says that connection refused on port 22. https://pharo-ic.lille.inria.fr/hudson/computer/FreeBSD-7%20slave/
Oh.. forgot to say, i need a running VM there to use it for generating stuff before build.
Actually i could generate everything at one of our hosts, and then at FreeBSD slave just run cmake / make But right now it works like that :)
So, please provide me a full path to existing VM installed in your system(s), like /usr/bin/squeak etc. Or set environment var SQUEAKVM for hudson user.
On 23 March 2011 17:27, Igor Stasenko siguctua@gmail.com wrote:
I configured both slaves,
and David's is up and running now. https://pharo-ic.lille.inria.fr/hudson/computer/cogvm.unthinkable.org%20%28F...
Frank's one seems like down? ssh says that connection refused on port 22. https://pharo-ic.lille.inria.fr/hudson/computer/FreeBSD-7%20slave/
-- Best regards, Igor Stasenko AKA sig.
Oh, OK - I thought the slaves were precisely for building the VMs!
I don't have a VM running on the machine at all at the moment.
What do I need to do to get one running?
frank
On 2011/03/23 16:30, Igor Stasenko wrote:
Oh.. forgot to say, i need a running VM there to use it for generating stuff before build.
Actually i could generate everything at one of our hosts, and then at FreeBSD slave just run cmake / make But right now it works like that :)
So, please provide me a full path to existing VM installed in your system(s), like /usr/bin/squeak etc. Or set environment var SQUEAKVM for hudson user.
On 23 March 2011 17:27, Igor Stasenkosiguctua@gmail.com wrote:
I configured both slaves,
and David's is up and running now. https://pharo-ic.lille.inria.fr/hudson/computer/cogvm.unthinkable.org%20%28F...
Frank's one seems like down? ssh says that connection refused on port 22. https://pharo-ic.lille.inria.fr/hudson/computer/FreeBSD-7%20slave/
-- Best regards, Igor Stasenko AKA sig.
On 23 March 2011 17:48, Frank Shearar frank.shearar@angband.za.org wrote:
Oh, OK - I thought the slaves were precisely for building the VMs!
I don't have a VM running on the machine at all at the moment.
What do I need to do to get one running?
Follow instructions here: http://code.google.com/p/cog/wiki/CMakeVMMaker
Download this tarball: https://pharo-ic.lille.inria.fr/hudson/view/Cog/job/Stack%20VM%20Unix/lastSu...
And then replace build directory contents with attached .zip file
then cd build cmake . make
and in build/results you will have StackVM and its modules.
frank
On 2011/03/23 16:30, Igor Stasenko wrote:
Oh.. forgot to say, i need a running VM there to use it for generating stuff before build.
Actually i could generate everything at one of our hosts, and then at FreeBSD slave just run cmake / make But right now it works like that :)
So, please provide me a full path to existing VM installed in your system(s), like /usr/bin/squeak etc. Or set environment var SQUEAKVM for hudson user.
On 23 March 2011 17:27, Igor Stasenkosiguctua@gmail.com wrote:
I configured both slaves,
and David's is up and running now.
https://pharo-ic.lille.inria.fr/hudson/computer/cogvm.unthinkable.org%20%28F...
Frank's one seems like down? ssh says that connection refused on port 22. https://pharo-ic.lille.inria.fr/hudson/computer/FreeBSD-7%20slave/
-- Best regards, Igor Stasenko AKA sig.
Hi Igor, A cog vm binary is located at /usr/home/hudson/cogvm/bin/squeak. I also set the SQUEAKVM var.
I'm a very recent convert to smalltalk (about a month now), but I'll look into the package you reference. I've been building the traditional way following the instructions in unixbuild/HowToBuild. BTW, I'm still working on build issues (got the UUID plugin compiling this morning, now looking at sound).
Hi Frank, The vm I have uploaded at http://www.unthinkable.org/dl/ might work for you, otherwise cogvm r2373 currently builds on 32bit FreeBSD with the following:
#Install the subversion-freebsd port/package
mkdir cogsrc cd cd cogsrc
svn co http://squeakvm.org/svn/squeak/branches/Cog/platforms svn co http://squeakvm.org/svn/squeak/branches/Cog/src svn co http://squeakvm.org/svn/squeak/branches/Cog/unixbuild
cd unixbuild/bld
# No ports/packages are needed for a minimal headless install: ../../platforms/unix/config/configure CFLAGS="-g -O2 -msse2 -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DNOEXECINFO -DDEBUGVM=0" LIBS=-pthread --without-x --without-gl --without-npsqueak
# If you have a desktop system with X installed: ../../platforms/unix/config/configure CFLAGS="-g -O2 -msse2 -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DNOEXECINFO -DDEBUGVM=0" LIBS=-pthread --without-npsqueak
make install prefix=$HOME/cogvm
On Mar 23, 2011, at 11:57 AM, Igor Stasenko wrote:
On 23 March 2011 17:48, Frank Shearar frank.shearar@angband.za.org wrote:
Oh, OK - I thought the slaves were precisely for building the VMs!
I don't have a VM running on the machine at all at the moment.
What do I need to do to get one running?
Follow instructions here: http://code.google.com/p/cog/wiki/CMakeVMMaker
Download this tarball: https://pharo-ic.lille.inria.fr/hudson/view/Cog/job/Stack%20VM%20Unix/lastSu...
And then replace build directory contents with attached .zip file
then cd build cmake . make
and in build/results you will have StackVM and its modules.
frank
On 2011/03/23 16:30, Igor Stasenko wrote:
Oh.. forgot to say, i need a running VM there to use it for generating stuff before build.
Actually i could generate everything at one of our hosts, and then at FreeBSD slave just run cmake / make But right now it works like that :)
So, please provide me a full path to existing VM installed in your system(s), like /usr/bin/squeak etc. Or set environment var SQUEAKVM for hudson user.
On 23 March 2011 17:27, Igor Stasenkosiguctua@gmail.com wrote:
I configured both slaves,
and David's is up and running now.
https://pharo-ic.lille.inria.fr/hudson/computer/cogvm.unthinkable.org%20%28F...
Frank's one seems like down? ssh says that connection refused on port 22. https://pharo-ic.lille.inria.fr/hudson/computer/FreeBSD-7%20slave/
-- Best regards, Igor Stasenko AKA sig.
-- Best regards, Igor Stasenko AKA sig. <build.zip>
Hi David,
Those are great instructions.
On my machine I can't make install because of the following error though:
/usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:787:3: error: #error need to implement extracting pc from a ucontext_t on this system /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c: In function 'reportStackState': /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:791: error: 'fp' undeclared (first use in this function) /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:791: error: (Each undeclared identifier is reported only once /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:791: error: for each function it appears in.) /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:791: error: 'sp' undeclared (first use in this function) /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c: In function 'main': /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:1718: warning: assignment from incompatible pointer type /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:1723: warning: assignment from incompatible pointer type *** Error code 1
Stop in /usr/home/frank/temp/cogvm-64/unixbuild/bld/vm. *** Error code 1
Stop in /usr/home/frank/temp/cogvm-64/unixbuild/bld.
frank
On 2011/03/23 17:55, David Graham wrote:
Hi Igor, A cog vm binary is located at /usr/home/hudson/cogvm/bin/squeak. I also set the SQUEAKVM var.
I'm a very recent convert to smalltalk (about a month now), but I'll look into the package you reference. I've been building the traditional way following the instructions in unixbuild/HowToBuild. BTW, I'm still working on build issues (got the UUID plugin compiling this morning, now looking at sound).
Hi Frank, The vm I have uploaded at http://www.unthinkable.org/dl/ might work for you, otherwise cogvm r2373 currently builds on 32bit FreeBSD with the following:
#Install the subversion-freebsd port/package
mkdir cogsrc cd cd cogsrc
svn co http://squeakvm.org/svn/squeak/branches/Cog/platforms svn co http://squeakvm.org/svn/squeak/branches/Cog/src svn co http://squeakvm.org/svn/squeak/branches/Cog/unixbuild
cd unixbuild/bld
# No ports/packages are needed for a minimal headless install: ../../platforms/unix/config/configure CFLAGS="-g -O2 -msse2 -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DNOEXECINFO -DDEBUGVM=0" LIBS=-pthread --without-x --without-gl --without-npsqueak
# If you have a desktop system with X installed: ../../platforms/unix/config/configure CFLAGS="-g -O2 -msse2 -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DNOEXECINFO -DDEBUGVM=0" LIBS=-pthread --without-npsqueak
make install prefix=$HOME/cogvm
On Mar 23, 2011, at 11:57 AM, Igor Stasenko wrote:
On 23 March 2011 17:48, Frank Sheararfrank.shearar@angband.za.org wrote:
Oh, OK - I thought the slaves were precisely for building the VMs!
I don't have a VM running on the machine at all at the moment.
What do I need to do to get one running?
Follow instructions here: http://code.google.com/p/cog/wiki/CMakeVMMaker
Download this tarball: https://pharo-ic.lille.inria.fr/hudson/view/Cog/job/Stack%20VM%20Unix/lastSu...
And then replace build directory contents with attached .zip file
then cd build cmake . make
and in build/results you will have StackVM and its modules.
frank
On 2011/03/23 16:30, Igor Stasenko wrote:
Oh.. forgot to say, i need a running VM there to use it for generating stuff before build.
Actually i could generate everything at one of our hosts, and then at FreeBSD slave just run cmake / make But right now it works like that :)
So, please provide me a full path to existing VM installed in your system(s), like /usr/bin/squeak etc. Or set environment var SQUEAKVM for hudson user.
On 23 March 2011 17:27, Igor Stasenkosiguctua@gmail.com wrote:
I configured both slaves,
and David's is up and running now.
https://pharo-ic.lille.inria.fr/hudson/computer/cogvm.unthinkable.org%20%28F...
Frank's one seems like down? ssh says that connection refused on port 22. https://pharo-ic.lille.inria.fr/hudson/computer/FreeBSD-7%20slave/
-- Best regards, Igor Stasenko AKA sig.
-- Best regards, Igor Stasenko AKA sig. <build.zip>
Hi Frank,
There is some 32bit x86 dependent code in that section. Are you trying to compile the vm on a 64bit host with the 32bit compatibility libs?
On Mar 23, 2011, at 2:08 PM, Frank Shearar wrote:
Hi David,
Those are great instructions.
On my machine I can't make install because of the following error though:
/usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:787:3: error: #error need to implement extracting pc from a ucontext_t on this system /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c: In function 'reportStackState': /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:791: error: 'fp' undeclared (first use in this function) /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:791: error: (Each undeclared identifier is reported only once /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:791: error: for each function it appears in.) /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:791: error: 'sp' undeclared (first use in this function) /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c: In function 'main': /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:1718: warning: assignment from incompatible pointer type /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:1723: warning: assignment from incompatible pointer type *** Error code 1
Stop in /usr/home/frank/temp/cogvm-64/unixbuild/bld/vm. *** Error code 1
Stop in /usr/home/frank/temp/cogvm-64/unixbuild/bld.
frank
Yes, I think. Well, I just blindly followed your instructions on a 64 bit machine :)
frank
On 2011/03/23 19:38, David Graham wrote:
Hi Frank,
There is some 32bit x86 dependent code in that section. Are you trying to compile the vm on a 64bit host with the 32bit compatibility libs?
On Mar 23, 2011, at 2:08 PM, Frank Shearar wrote:
Hi David,
Those are great instructions.
On my machine I can't make install because of the following error though:
/usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:787:3: error: #error need to implement extracting pc from a ucontext_t on this system /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c: In function 'reportStackState': /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:791: error: 'fp' undeclared (first use in this function) /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:791: error: (Each undeclared identifier is reported only once /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:791: error: for each function it appears in.) /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:791: error: 'sp' undeclared (first use in this function) /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c: In function 'main': /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:1718: warning: assignment from incompatible pointer type /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:1723: warning: assignment from incompatible pointer type *** Error code 1
Stop in /usr/home/frank/temp/cogvm-64/unixbuild/bld/vm. *** Error code 1
Stop in /usr/home/frank/temp/cogvm-64/unixbuild/bld.
frank
On 23 March 2011 20:47, Frank Shearar frank.shearar@angband.za.org wrote:
Yes, I think. Well, I just blindly followed your instructions on a 64 bit machine :)
JIT won't run on 64 bits. But you can try building StackVM
frank
On 2011/03/23 19:38, David Graham wrote:
Hi Frank,
There is some 32bit x86 dependent code in that section. Are you trying to compile the vm on a 64bit host with the 32bit compatibility libs?
On Mar 23, 2011, at 2:08 PM, Frank Shearar wrote:
Hi David,
Those are great instructions.
On my machine I can't make install because of the following error though:
/usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:787:3: error: #error need to implement extracting pc from a ucontext_t on this system /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c: In function 'reportStackState': /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:791: error: 'fp' undeclared (first use in this function) /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:791: error: (Each undeclared identifier is reported only once /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:791: error: for each function it appears in.) /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:791: error: 'sp' undeclared (first use in this function) /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c: In function 'main': /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:1718: warning: assignment from incompatible pointer type /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:1723: warning: assignment from incompatible pointer type *** Error code 1
Stop in /usr/home/frank/temp/cogvm-64/unixbuild/bld/vm. *** Error code 1
Stop in /usr/home/frank/temp/cogvm-64/unixbuild/bld.
frank
On Wed, Mar 23, 2011 at 08:51:08PM +0100, Igor Stasenko wrote:
On 23 March 2011 20:47, Frank Shearar frank.shearar@angband.za.org wrote:
Yes, I think. Well, I just blindly followed your instructions on a 64 bit machine :)
JIT won't run on 64 bits. But you can try building StackVM
You should be able to build the 32-bit JIT on a 64-bit machine. On Linux I was able to do it with Eliot's build as follows:
../platforms/unix/config/configure CC="gcc -m32" CFLAGS="-g -O2 -msse2 -D_GNU_SOURCE -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DDEBUGVM=0" LDFLAGS="-m32" LIBS=-lpthread
The problem (on Linux at least) was just that libtool insists on linking to 64-bit libraries regardless of what you do with CFLAGS and LDFLAGS, so you have to trick it into submission with the CC="gcc -m32" hack.
It was not me that figured this out, but I can't recall who gets the credit.
The libtool issues go away with Ian's CMake build, and that may be the case with the new CMake build procedures also. In any case it certainly is possible to build and run Cog on 64-bit machines.
HTH, Dave
On 2011/03/23 21:17, David T. Lewis wrote:
On Wed, Mar 23, 2011 at 08:51:08PM +0100, Igor Stasenko wrote:
On 23 March 2011 20:47, Frank Sheararfrank.shearar@angband.za.org wrote:
Yes, I think. Well, I just blindly followed your instructions on a 64 bit machine :)
JIT won't run on 64 bits. But you can try building StackVM
You should be able to build the 32-bit JIT on a 64-bit machine. On Linux I was able to do it with Eliot's build as follows:
../platforms/unix/config/configure CC="gcc -m32" CFLAGS="-g -O2 -msse2 -D_GNU_SOURCE -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DDEBUGVM=0" LDFLAGS="-m32" LIBS=-lpthread
The problem (on Linux at least) was just that libtool insists on linking to 64-bit libraries regardless of what you do with CFLAGS and LDFLAGS, so you have to trick it into submission with the CC="gcc -m32" hack.
It was not me that figured this out, but I can't recall who gets the credit.
The libtool issues go away with Ian's CMake build, and that may be the case with the new CMake build procedures also. In any case it certainly is possible to build and run Cog on 64-bit machines.
Sorry, I should know this. We spoke about this in December, in fact:
http://lists.squeakfoundation.org/pipermail/vm-dev/2010-December/006008.html
I think it was Pierce Ng who found out the final magic recipe.
It's not just the "gcc -m32" bit - which gets you far enough to hit the "C compiler cannot create executables" problem - you have to say "gcc -m32 -B/usr/lib32", at which point I get new errors:
/usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:60:23: error: execinfo.h: No such file or directory /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c: In function 'reportStackState': /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:784: error: 'mcontext_t' has no member named 'mc_ebp' /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:785: error: 'mcontext_t' has no member named 'mc_esp' /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c: In function 'main': /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:1718: warning: assignment from incompatible pointer type /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:1723: warning: assignment from incompatible pointer type *** Error code 1
frank
http://lists.squeakfoundation.org/pipermail/vm-dev/2010-December/006008.html
I think it was Pierce Ng who found out the final magic recipe.
It's not just the "gcc -m32" bit - which gets you far enough to hit the "C compiler cannot create executables" problem - you have to say "gcc -m32 -B/usr/lib32", at which point I get new errors:
/usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:60:23: error: execinfo.h: No such file or directory /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c: In function 'reportStackState': /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:784: error: 'mcontext_t' has no member named 'mc_ebp' /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:785: error: 'mcontext_t' has no member named 'mc_esp' /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c: In function 'main': /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:1718: warning: assignment from incompatible pointer type /usr/home/frank/temp/cogvm-64/platforms/unix/vm/sqUnixMain.c:1723: warning: assignment from incompatible pointer type *** Error code 1
frank
Do you have -DNOEXECINFO in your CFLAGS?
On 23 March 2011 18:55, David Graham dgraham@unthinkable.org wrote:
Hi Igor, A cog vm binary is located at /usr/home/hudson/cogvm/bin/squeak. I also set the SQUEAKVM var.
I'm a very recent convert to smalltalk (about a month now), but I'll look into the package you reference. I've been building the traditional way following the instructions in unixbuild/HowToBuild. BTW, I'm still working on build issues (got the UUID plugin compiling this morning, now looking at sound).
Your slave is aready set up and running. Just one little issue:
[cut of console output] + cmake . cmake: not found
:)
On 2011/03/23 19:34, Igor Stasenko wrote:
On 23 March 2011 18:55, David Grahamdgraham@unthinkable.org wrote:
Hi Igor, A cog vm binary is located at /usr/home/hudson/cogvm/bin/squeak. I also set the SQUEAKVM var.
I'm a very recent convert to smalltalk (about a month now), but I'll look into the package you reference. I've been building the traditional way following the instructions in unixbuild/HowToBuild. BTW, I'm still working on build issues (got the UUID plugin compiling this morning, now looking at sound).
Your slave is aready set up and running. Just one little issue:
[cut of console output]
- cmake .
cmake: not found
:)
*cough* Right!
It's now installed on my machine too.
frank
Fixed, but I see a new error: javax.mail.internet.AddressException: Illegal address in string ``,''
I'm guessing that's on the hudson config side?
On Mar 23, 2011, at 2:34 PM, Igor Stasenko wrote:
On 23 March 2011 18:55, David Graham dgraham@unthinkable.org wrote:
Hi Igor, A cog vm binary is located at /usr/home/hudson/cogvm/bin/squeak. I also set the SQUEAKVM var.
I'm a very recent convert to smalltalk (about a month now), but I'll look into the package you reference. I've been building the traditional way following the instructions in unixbuild/HowToBuild. BTW, I'm still working on build issues (got the UUID plugin compiling this morning, now looking at sound).
Your slave is aready set up and running. Just one little issue:
[cut of console output]
- cmake .
cmake: not found
:)
-- Best regards, Igor Stasenko AKA sig.
On 23 March 2011 20:56, David Graham dgraham@unthinkable.org wrote:
Fixed, but I see a new error: javax.mail.internet.AddressException: Illegal address in string ``,''
I'm guessing that's on the hudson config side?
yeah . my fault. I used comma to separate mails instead of space. Btw i added you to that list, so you will get notified about problems.
On Mar 23, 2011, at 2:34 PM, Igor Stasenko wrote:
On 23 March 2011 18:55, David Graham dgraham@unthinkable.org wrote:
Hi Igor, A cog vm binary is located at /usr/home/hudson/cogvm/bin/squeak. I also set the SQUEAKVM var.
I'm a very recent convert to smalltalk (about a month now), but I'll look into the package you reference. I've been building the traditional way following the instructions in unixbuild/HowToBuild. BTW, I'm still working on build issues (got the UUID plugin compiling this morning, now looking at sound).
Your slave is aready set up and running. Just one little issue:
[cut of console output]
- cmake .
cmake: not found
:)
-- Best regards, Igor Stasenko AKA sig.
On 2011/03/23 17:55, David Graham wrote:
Hi Igor, A cog vm binary is located at /usr/home/hudson/cogvm/bin/squeak. I also set the SQUEAKVM var.
I'm a very recent convert to smalltalk (about a month now), but I'll look into the package you reference. I've been building the traditional way following the instructions in unixbuild/HowToBuild. BTW, I'm still working on build issues (got the UUID plugin compiling this morning, now looking at sound).
Hi Frank, The vm I have uploaded at http://www.unthinkable.org/dl/ might work for you, otherwise cogvm r2373 currently builds on 32bit FreeBSD with the following:
It complains that it can't find libutil.so.8, which is understandable because I only have libutil.so.7
I'll try some more with getting it to build from source this evening. I have managed to do it before, last December.
frank
#Install the subversion-freebsd port/package
mkdir cogsrc cd cd cogsrc
svn co http://squeakvm.org/svn/squeak/branches/Cog/platforms svn co http://squeakvm.org/svn/squeak/branches/Cog/src svn co http://squeakvm.org/svn/squeak/branches/Cog/unixbuild
cd unixbuild/bld
# No ports/packages are needed for a minimal headless install: ../../platforms/unix/config/configure CFLAGS="-g -O2 -msse2 -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DNOEXECINFO -DDEBUGVM=0" LIBS=-pthread --without-x --without-gl --without-npsqueak
# If you have a desktop system with X installed: ../../platforms/unix/config/configure CFLAGS="-g -O2 -msse2 -DNDEBUG -DITIMER_HEARTBEAT=1 -DNO_VM_PROFILE=1 -DCOGMTVM=0 -DNOEXECINFO -DDEBUGVM=0" LIBS=-pthread --without-npsqueak
make install prefix=$HOME/cogvm
On Mar 23, 2011, at 11:57 AM, Igor Stasenko wrote:
On 23 March 2011 17:48, Frank Sheararfrank.shearar@angband.za.org wrote:
Oh, OK - I thought the slaves were precisely for building the VMs!
I don't have a VM running on the machine at all at the moment.
What do I need to do to get one running?
Follow instructions here: http://code.google.com/p/cog/wiki/CMakeVMMaker
Download this tarball: https://pharo-ic.lille.inria.fr/hudson/view/Cog/job/Stack%20VM%20Unix/lastSu...
And then replace build directory contents with attached .zip file
then cd build cmake . make
and in build/results you will have StackVM and its modules.
frank
On 2011/03/23 16:30, Igor Stasenko wrote:
Oh.. forgot to say, i need a running VM there to use it for generating stuff before build.
Actually i could generate everything at one of our hosts, and then at FreeBSD slave just run cmake / make But right now it works like that :)
So, please provide me a full path to existing VM installed in your system(s), like /usr/bin/squeak etc. Or set environment var SQUEAKVM for hudson user.
On 23 March 2011 17:27, Igor Stasenkosiguctua@gmail.com wrote:
I configured both slaves,
and David's is up and running now.
https://pharo-ic.lille.inria.fr/hudson/computer/cogvm.unthinkable.org%20%28F...
Frank's one seems like down? ssh says that connection refused on port 22. https://pharo-ic.lille.inria.fr/hudson/computer/FreeBSD-7%20slave/
-- Best regards, Igor Stasenko AKA sig.
-- Best regards, Igor Stasenko AKA sig. <build.zip>
On 2011/03/23 16:27, Igor Stasenko wrote:
I configured both slaves,
and David's is up and running now. https://pharo-ic.lille.inria.fr/hudson/computer/cogvm.unthinkable.org%20%28F...
Frank's one seems like down? ssh says that connection refused on port 22. https://pharo-ic.lille.inria.fr/hudson/computer/FreeBSD-7%20slave/
Ah, right. I forgot the small detail that my sshd runs on a non-standard port!
frank
We probably don't need two freebsd build servers, but I now have a dedicated host available if you guys are still interested?
David, I offered because I thought you were running 8, and it'd be useful verifying things on both a 7.x and 8.x machine. (Also, for extra kinks/kicks my box is an amd64, so that might help push the envelope further.)
But even if you're also running a 7.3 amd64, a bit of redundancy won't hurt.
frank
Hi Frank,
Sounds good, I just didn't know if it would create extra work for the build admins. You're correct, the host is FreeBSD 8.2 i386.
thanks, David
On 22 March 2011 23:38, David Graham dgraham@unthinkable.org wrote:
We probably don't need two freebsd build servers, but I now have a dedicated host available if you guys are still interested?
David, I offered because I thought you were running 8, and it'd be useful verifying things on both a 7.x and 8.x machine. (Also, for extra kinks/kicks my box is an amd64, so that might help push the envelope further.)
But even if you're also running a 7.3 amd64, a bit of redundancy won't hurt.
frank
Hi Frank,
Sounds good, I just didn't know if it would create extra work for the build admins. You're correct, the host is FreeBSD 8.2 i386.
Adding/configuring extra job(s) is few minutes. We reuse existing (and working jobs) as a template, so mostly its just a copy/paste process with changing some little details.
thanks, David
vm-dev@lists.squeakfoundation.org