--- src/cacao/cacao.cpp.orig 2012-09-03 12:10:00.000000000 -0400 +++ src/cacao/cacao.cpp 2012-10-04 14:34:51.000000000 -0400 @@ -90,7 +90,11 @@ path = (char*) os::malloc(sizeof(char) * 4096); +# if defined(__FreeBSD__) + if (readlink("/proc/curproc/file", path, 4095) == -1) { +# else if (readlink("/proc/self/exe", path, 4095) == -1) { +# endif fprintf(stderr, "main: readlink failed: %s\n", strerror(errno)); os::abort(); }