Work: citcon new zealand photos travel wellington
by Cliffano Subagio
leave a comment
New Zealand Workcapade 2010
Workcapade -noun: like an escapade, extra work days on a weekend.
Last weekend I went to Wellington, New Zealand, to attend CITCON A/NZ 2010. Write ups about the event have been posted on ShineTech blog:
- CITCON Australia/New Zealand 2010 – Day 1
- CITCON Australia/New Zealand 2010 – Day 2 (Part 1)
- CITCON Australia/New Zealand 2010 – Day 2 (Part 2)
In summary, the current hotness in CI world is continuous deployment, citing the experiences from IMVU and Flickr.
I didn’t get much chance to check out Wellington, it was raining for the whole three days I was there. My immediate impression of Wellington was that the CBD resembled Melbourne, while the areas up the hills reminded me of Hobart. It’s also strange how Lambton Quay was empty at 10pm on a weekend, even many of the cafes weren’t open at 11am on a Sunday. No people, no traffic, no worries, no problem.
I didn’t see any sheep in New Zealand.
Compiling node.js on Solaris – The Issues
Disclaimer: I’m not a sysadmin, better solutions are welcome.
Earlier today, I was trying to compile node.js on Solaris (x86, 64-bit), get it installed, and setup a simple OHAI server.
And as usual, installing stuffs on Solaris is never straightforward and I ended up encountering several issues. I’m sure these issues (specially the errors) will bite me again in the future, hence I’m blogging this.
First up…
nom> ./configure /usr/bin/env: No such file or directory
Oh right, I forgot to install python and all of its dependencies. From node.js home page “The build system requires Python 2.4 or better.”
obj/release/mksnapshot obj/release/snapshot.cc --logfile "~/blah/ry-node-29ca7af/build/default/obj/release/snapshot.log" --log-snapshot-positions
ld.so.1: mksnapshot: fatal: libstdc++.so.6: open failed: No such file or directory
scons: *** [obj/release/snapshot.cc] Error -9
scons: building terminated because of errors.
Waf: Leaving directory `~/blah/ry-node-29ca7af/build'
Build failed: -> task failed (err #2):
{task: libv8.a SConstruct -> libv8.a}
*** Error code 1
ldd is your friend every time you hit this kind of error.
So I inspected mksnapshot…
nom> ldd obj/release/mksnapshot
libpthread.so.1 => /lib/libpthread.so.1
libsocket.so.1 => /lib/libsocket.so.1
libnsl.so.1 => /lib/libnsl.so.1
librt.so.1 => /lib/librt.so.1
libstdc++.so.6 => (file not found)
libm.so.2 => /lib/libm.so.2
libgcc_s.so.1 => (file not found)
libc.so.1 => /lib/libc.so.1
libmp.so.2 => /lib/libmp.so.2
libmd.so.1 => /lib/libmd.so.1
libscf.so.1 => /lib/libscf.so.1
libaio.so.1 => /lib/libaio.so.1
libdoor.so.1 => /lib/libdoor.so.1
libuutil.so.1 => /lib/libuutil.so.1
libgen.so.1 => /lib/libgen.so.1
Turned out that both libstdc++.so.6 and libgcc_s.so.1 were installed in /usr/local/lib but not available from /lib. So I simply created symlinks for /lib/libstdc++.so.6 and libgcc_s.so.1 pointing to /usr/local/lib . Another workaround was to set LD_LIBRARY_PATH=/usr/local/lib, but I heard it’s bad.
On to the next one…
ImportError: ld.so.1: python: fatal: relocation error: file /usr/local/lib/python2.6/lib-dynload/_socket.so: symbol inet_aton: referenced symbol not found
This one was just strange, I couldn’t figure out which library dependency was missing, and it took me a while to find out that the python binary I had wasn’t built correctly (some library links were missing from _socket.so) . At the end I used the binary from Sunfreeware which had the correct links.
I got this next error when I accidentally compiled node on a SPARC box, which I believe is not a supported architecture. c-ares only has sunos-x86 header files for Solaris.
../deps/c-ares/ares_expand_string.c:18:24: ares_setup.h: No such file or directory
And another one, on the same SPARC box…
TypeError: cannot concatenate 'str' and 'NoneType' objects:
This is a similar issue that stevel mentioned on nodejs Google Group. Basically deps/v8/SConstruct couldn’t figure out the compiler and returns ‘None’ which can’t be concatenated to a String, this line here…
the toolchain to use (' + TOOLCHAIN_GUESS + ')'
After 3-4 hours, I finally got node.js installed, and a simple server up and running on Solaris.
OHAI KTHXBYE
Projects Work: hudson jslint shinetech sitemonitor violations
by Cliffano Subagio
1 comment
Re Hudson SiteMonitor Plugin And JSLint Violations Support
Just a quick note about a post I made over at Shine Technologies blog re Hudson SiteMonitor Plugin and JSLint Violations support.
My current employer, Shine Technologies, allowed me to spend a couple of days to contribute to an open source project, so naturally I chose Hudson and worked on things that are useful for the projects I’m involved with at work.
SiteMonitor Plugin was a late follow up to this short thread on Hudson users mailing list about a year ago. JSLint support in Violations Plugin was an effort to add JSLint report handling in Hudson a la Checkstyle.












