Opened 10 years ago

Closed 10 years ago

#30413 closed defect (fixed)

glib2 build tries to use dtrace and fails

Reported by: jmeyer@… Owned by: ryandesign (Ryan Schmidt)
Priority: Normal Milestone:
Component: ports Version: 2.0.0
Keywords: lion Cc:
Port: glib2

Description (last modified by ryandesign (Ryan Schmidt))

It appears that dtrace doesn't support -G. I am running Lion 10.7. xCode 4.1.

:info:build dtrace -G -s glib_probes.d -o glib_probes.o
:info:build Usage: dtrace [-aACeFHlqSvVwZ] [-arch i386|x86_64] [-b bufsz] [-c cmd] [-D name[=def]]
:info:build 	[-I path] [-L path] [-o output] [-p pid] [-s script] [-U name]
:info:build 	[-x opt[=val]]
:info:build 
:info:build 	[-P provider [[ predicate ] action ]]
:info:build 	[-m [ provider: ] module [[ predicate ] action ]]
:info:build 	[-f [[ provider: ] module: ] func [[ predicate ] action ]]
:info:build 	[-n [[[ provider: ] module: ] func: ] name [[ predicate ] action ]]
:info:build 	[-i probe-id [[ predicate ] action ]] [ args ... ]
:info:build 
:info:build 	predicate -> '/' D-expression '/'
:info:build 	   action -> '{' D-statements '}'
:info:build 
:info:build 	-arch Generate programs and Mach-O files for the specified architecture
:info:build 
:info:build 	-a  claim anonymous tracing state
:info:build 	-A  generate plist(5) entries for anonymous tracing
:info:build 	-b  set trace buffer size
:info:build 	-c  run specified command and exit upon its completion
:info:build 	-C  run cpp(1) preprocessor on script files
:info:build 	-D  define symbol when invoking preprocessor
:info:build 	-e  exit after compiling request but prior to enabling probes
:info:build 	-f  enable or list probes matching the specified function name
:info:build 	-F  coalesce trace output by function
:info:build 	-h  generate a header file with definitions for static probes
:info:build 	-H  print included files when invoking preprocessor
:info:build 	-i  enable or list probes matching the specified probe id
:info:build 	-I  add include directory to preprocessor search path
:info:build 	-l  list probes matching specified criteria
:info:build 	-L  add library directory to library search path
:info:build 	-m  enable or list probes matching the specified module name
:info:build 	-n  enable or list probes matching the specified probe name
:info:build 	-o  set output file
:info:build 	-p  grab specified process-ID and cache its symbol tables
:info:build 	-P  enable or list probes matching the specified provider name
:info:build 	-q  set quiet mode (only output explicitly traced data)
:info:build 	-s  enable or list probes according to the specified D script
:info:build 	-S  print D compiler intermediate code
:info:build 	-U  undefine symbol when invoking preprocessor
:info:build 	-v  set verbose mode (report stability attributes, arguments)
:info:build 	-V  report DTrace API version
:info:build 	-w  permit destructive actions
:info:build 	-x  enable or modify compiler and tracing options
:info:build 	-Z  permit probe descriptions that match zero probes
:info:build make[2]: *** [glib_probes.o] Error 2

Attachments (2)

Untitled.txt (2.6 KB) - added by jmeyer@… 10 years ago.
Error - a little more readable.
main.log (23.2 KB) - added by jmeyer@… 10 years ago.

Download all attachments as: .zip

Change History (11)

Changed 10 years ago by jmeyer@…

Attachment: Untitled.txt added

Error - a little more readable.

comment:1 Changed 10 years ago by jmeyer@…

Here is the dtrace version.

dtrace: Sun D 1.6.2

comment:2 Changed 10 years ago by ryandesign (Ryan Schmidt)

Description: modified (diff)

Please use WikiFormatting.

What port are you trying to install that is generating this error?

comment:3 in reply to:  2 Changed 10 years ago by jmeyer@…

Replying to ryandesign@…:

Please use WikiFormatting.

What port are you trying to install that is generating this error?

The glib2 install is where it is failing. I was trying to install metasploit3 port.

Thanks

Changed 10 years ago by jmeyer@…

Attachment: main.log added

comment:4 Changed 10 years ago by jmroot (Joshua Root)

Owner: changed from macports-tickets@… to ryandesign@…
Port: glib2 added
Summary: Issue in make scriptglib2: Issue in make script

comment:5 Changed 10 years ago by ryandesign (Ryan Schmidt)

The log is incomplete. Please clean glib2 and try again and attach the complete main.log.

dtrace support was added to glib2 in the 2.25.x development series but was disabled on Mac OS X because it did not work there; I wonder why it's being enabled on your system. Hopefully the complete log will tell us.

comment:6 Changed 10 years ago by ryandesign (Ryan Schmidt)

Keywords: lion added
Summary: glib2: Issue in make scriptglib2 build tries to use dtrace and fails

Hmm, it looks like glib2's check for whether to use dtrace on Mac OS X is based only on whether Carbon is available. Carbon is disappearing more and more in each version of Mac OS X so that doesn't seem like the best way to test for this. Still, I wonder why the problem only affects you and not all the other MacPorts users who have upgraded to Lion and are not seeing this problem.

comment:7 Changed 10 years ago by ryandesign (Ryan Schmidt)

In r81247 I've modified glib2 (and glib2-devel) to ensure we don't try to enable dtrace. Wait 30 minutes then "sudo port selfupdate" and see if that helps.

comment:8 in reply to:  7 Changed 10 years ago by jmeyer@…

Replying to ryandesign@…:

In r81247 I've modified glib2 (and glib2-devel) to ensure we don't try to enable dtrace. Wait 30 minutes then "sudo port selfupdate" and see if that helps.

Thanks - that worked and I am up and running. As to why it only affected me, maybe because I had upgraded my xCode tools to the latest version from the AppStore. My guess would be that after the upgrade the old version is not completely uninstalled?

Thanks for your work on this.

comment:9 Changed 10 years ago by ryandesign (Ryan Schmidt)

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.