Hello, > I think that's just tracing the shell wrapper; use meta/uninstalled-env > libtool --mode=execute dtruss guile to get a more proper trace.
Got it, thanks! Again there's a lot of output, but the most important bit seems to be here (with some context): ;; Here Guile is finishing loading its compiler open("/Users/noah/Desktop/guile/guile/module/language/assembly/spec.go\0", 0x0, 0x0) = 54 0 fstat64(0x36, 0x7FFF5FBFEC00, 0x7FFF70825630) = 0 0 mmap(0x0, 0x3D2, 0x1, 0x1, 0x36, 0x100000001) = 0xFE0000 0 stat64("/Users/noah/Desktop/guile/guile/module/language/assembly/decompile-bytecode.scm\0", 0x7FFF5FBFEA30, 0x10070A11B) = 0 0 mmap(0x0, 0x19F, 0x1, 0x1, 0x1C, 0x1FFFFFFFF) = 0x1F11000 0 ;; At this point it's running the script socket(0x2, 0x1, 0x0) = 73 0 ; make a socket - INET family, SOCK_STREAM, internet protocol; we got one with descriptor 73 fcntl(0x49, 0x3, 0x0) = 2 0 ; get flags for file descriptor 49. result 2 probably means it is read and writable. lseek(0x49, 0x0, 0x1) = -1 Err#29 ; errno 29 is "illegal seek" setsockopt(0x49, 0xFFFF, 0x4) = 0 0 ; setsockopt on descriptor 49 bind(0x49, 0x100709EE0, 0x10) = -1 Err#49 ; bind descriptor 49. errno 49 is "protocol driver not attached" ;; And now there's already been an error, and we'll backtrace it. write(0x2, "Backtrace:\n\0", 0xB) = 11 0 ... It seems to me that the strangest issue is that socket() return file descriptor 73, but the script then did system calls on file descriptor 49. Does anyone know a reason that would happen? Noah