Date: Mon, 08 Dec 2014 16:39:42 +0100 From: =?UTF-8?B?VmlrdG9yIMWgdHVqYmVy?= <viktor.stujber@gmail.com> To: freebsd-dtrace@freebsd.org Subject: missing system struct definitions during compilation files in /usr/lib/dtrace/ in local releng/10.1 build Message-ID: <5485C63E.3090002@gmail.com>
next in thread | raw e-mail | index | archive | help
I was running releng/10.0 from 10-jul-2014 and dtrace was working fine. I built/installed releng/10.1 from 07-dec-2014 and now when running "dtrace -s anyfile", even an empty file, it prints the following errors: dtrace: failed to compile script test.d: "/usr/lib/dtrace/tcp.d", line 166: operator -> cannot be applied to a forward declaration: no struct tcpcb definition is available (same with io.d struct devstat and struct bio) I tried a clean install of release/10.1 from the 12-nov-2014 iso file, and it works fine there. There doesn't seem to have been any changes to the branch since the release. I went through all the directories in / and /usr, making sure there are no stale config/header/lib files, and that the contents of all existing config/header files is identical to the clean version (plusminus my custom changes). I also temporarily moved the entire /usr/local tree to make sure its contents don't interfere; did not help. Finally I tried just shoving the missing system C header information into the D code, which might have worked, but after the 5th time I got tired of it. I would like to fix this problem without doing a full system reinstall. However at this point I'm stuck. I don't know how to make the D compiler built into dtrace to print diagnostic information about the build process. I'm not even sure what exactly the compiler is trying to do - does it parse the system C headers (possibly indicating an INCLUDE path problem)? But I think I checked all the files... Maybe something went wrong during buildworld and the executable itself is broken?
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5485C63E.3090002>