Index: SConstruct --- SConstruct.orig 2010-09-04 20:47:40.000000000 +0200 +++ SConstruct 2010-09-04 22:47:20.000000000 +0200 @@ -603,14 +603,14 @@ 'LIBS': ['pthread'], }, 'os:freebsd': { - 'LIBS': ['pthread'], + 'LIBS': ['execinfo', 'pthread'] }, 'os:solaris': { 'LIBS': ['m', 'pthread', 'socket', 'nsl', 'rt'], 'LINKFLAGS': ['-mt'] }, 'os:openbsd': { - 'LIBS': ['pthread'], + 'LIBS': ['execinfo', 'pthread'] }, 'os:android': { 'LIBPATH': [ANDROID_TOP + '/out/target/product/generic/obj/lib', Index: src/d8-posix.cc --- src/d8-posix.cc.orig 2010-09-04 20:47:40.000000000 +0200 +++ src/d8-posix.cc 2010-09-04 22:46:52.000000000 +0200 @@ -374,7 +374,7 @@ // We're disabling usage of waitid in Mac OS X because it doens't work for us: // a parent process hangs on waiting while a child process is already a zombie. // See http://code.google.com/p/v8/issues/detail?id=401. -#if defined(WNOWAIT) && !defined(ANDROID) && !defined(__APPLE__) +#if defined(WNOWAIT) && !defined(ANDROID) && !defined(__APPLE__) && !defined(__FreeBSD__) #define HAS_WAITID 1 #endif