Repository navigation
FreeBSD Build --with-dtrace fails #461
Description
Activity
@indutny or @jbergstroem, maybe one of you can take a look?
Pretty busy at the moment, but the issue at least seems to start from
tools/genv8constants.pynot generating a proper header; the output is essentially empty from this:builder% tools/genv8constants.py foo.h /usr/home/jbergstroem/io.js/out/Release/obj.target/deps/v8/tools/gyp/libv8_base.a && cat foo.h /* * File automatically generated by genv8constants. Do not edit. * * The following offsets are dynamically from libv8_base.a. See src/v8ustack.d * for details on how these values are used. */ #ifndef V8_CONSTANTS_H #define V8_CONSTANTS_H #endif /* V8_CONSTANTS_H */
Oh gosh, need to look into it.
So @indutny @jbergstroem spent a little time on this tonight.
objdump -z -D /usr/home/freebsd/io.js/out/Release/obj.target/deps/v8/tools/gyp/libv8_base.a | grep frametype_EntryFrame
Returns nothingBut
objdump -z -D /usr/home/freebsd/node/out/Release/obj.target/deps/v8/tools/gyp/libv8_base.a | grep frametype_EntryFrame
In the node v.0.10.35 build returns
0000000000000000 <v8dbg_frametype_EntryFrame>:So it would seem that the technique used to identify the V8_CONSTANTS in tools/genv8constants.py is not going to work with the current build output of
/usr/home/freebsd/io.js/out/Release/obj.target/deps/v8/tools/gyp/libv8_base.aCould there be an option missing on the V8 build part that is preventing the inclusion of the v8dbg sym?
Or have they gone away completely in this version of V8?Oddly, I got this:
clang++: error: no such file or directory: '/usr/home/indutny/io.js/out/Release/obj.target/iojs/src/node_dtrace_ustack.o' clang++: error: no such file or directory: '/usr/home/indutny/io.js/out/Release/obj.target/iojs/src/node_dtrace_provider.o' iojs.target.mk:198: recipe for target '/usr/home/indutny/io.js/out/Release/iojs' failedWhen trying to build it... Will figure out details.
Should be fixed by https://codereview.chromium.org/894003003/, I guess.
And by partially reverting: 8a83eba
@indutny Cheers Ill apply that and see where I get to.
Also can you verify that I will need to patch FreeBSD with
https://svnweb.freebsd.org/base/head/cddl/contrib/opensolaris/lib/lib0dtrace/common/drti.c?pathrev=276250&view=log&r1=276250&log_pagestart=0Because of
dtrace DOF node: .SUNW_dof section corruptAs mentioned here https://gist.github.com/indutny/d3fee964995eea206fb3#comment-1373787
Thanks again for finding time to dive into these issues 👍
That svnweb link gives me 404... :(
Hmmm yup broken for me too :(
This is the another view here.
https://svnweb.freebsd.org/base?view=revision&revision=276250Yeah, this is the fix. Luckily, it does not require rebuilding kernel.
So applyied the patches to
globals.h
objects.h
gen-postmortem-metadata.py
And common.gypi has the patch you mention
But still gettingclang++: error: no such file or directory: '/usr/home/freebsd/io.js/out/Release/obj.target/iojs/src/node_dtrace_ustack.o' clang++: error: no such file or directory: '/usr/home/freebsd/io.js/out/Release/obj.target/iojs/src/node_dtrace_provider.o' iojs.target.mk:198: recipe for target '/usr/home/freebsd/io.js/out/Release/iojs' failed gmake[1]: *** [/usr/home/freebsd/io.js/out/Release/iojs] Error 1 gmake[1]: Leaving directory '/usr/home/freebsd/io.js/out' Makefile:52: recipe for target 'iojs' failed gmake: *** [iojs] Error 2Have I missed something?
Looking...
@No9 see https://github.com/indutny/io.js/tree/fix/postmortem for progress. So far getting:
failed to resolve INP_IPV4: Unknown variable name1 remaining item
@No9 landed last patch, should be working fine now. Could you please verify?
Cloning and testing now
Yeah built !!
$ node dtrace DOF iojs: .SUNW_dof section corrupt dtrace DOF iojs: .SUNW_dof section corrupt > process.version > 'v1.0.5'
Now I have to put the BSD patch in to get rid of
dtrace DOF iojs: .SUNW_dof section corrupt dtrace DOF iojs: .SUNW_dof section corruptShould we validate this on illumOS too?
idk, do we want to? :) Thanks for testing FreeBSD.
LOL I have an openindiana I can take for a quick spin. Ill kick it off now "to be sure to be sure"
See #706 for complete rebased fix.
- added 3 commits that reference this issue
on Feb 3, 2015 Assuming "fixed"!
Yeah so all my illumOS distros are back at g++4.6 so I couldn't validate that easily
Happy to call it fixed too
Thanks for taking time on the @indutny
Apologies if this is a known issue as I seem to recall from a nodeup that there was some significant changes for DTrace going into 0.12.
Anyway I hope this is useful
The same issue presents on node v0.11.14 on the same system.
But on the same system v0.10.35 compiles OK
(But has the post compilation problem highlighted here
https://gist.github.com/indutny/d3fee964995eea206fb3)
On a digital ocean droplet..
Full info on all the ENV config I did here:
http://venshare.com/2015/01/16/dtrace-with-iojs-on-freebsd-10-1-using-digital-ocean/
So the following:
Fails with