Re: [Vala] Debugging the compiler command generated by valac




On Thu, 2013-12-26 at 11:58 -0500, Joe Sapp wrote:
I'm having an issue with the C compiler command generated by valac.
Specifically, an include directory is being included unexpectedly (see
[1]).  Is there any way to figure out what causes this to happen, or
which package or file is at fault?  I can't seem to find any way to
get intermediate information between the `valac` call and the `cc`
call.

There are really only two pieces of information which are relevant—the
generated C (which, in this case, is saved thanks to passing
--save-temps to valac) and the arguments passed to cc.  Most build
systems keep the valac and cc invocations separate, but Shotwell rolled
their own and chose not to do that, so the easiest way to see that
information would probably be just running the valac command yourself,
but pass --cc=echo.  It looks like the problematic valac invocation is
on lines 100-106 of that build log.

That said, you probably don't really need to.  One of these packages is
adding the gee-1.0 include directory, probably through a (possibly
indirect) dependency on gee-1.0:

      * shotwell-plugin-dev-1.0
      * gobject-2.0
      * glib-2.0
      * gdk-3.0
      * gtk+-3.0
      * gee-0.8
      * gtk+-3.0
      * libsoup-2.4
      * libxml-2.0
      * webkitgtk-3.0
      * gexiv2
      * rest-0.7
      * gee-0.8
      * json-glib-1.0

If you can't find the dependency in the pkg-config file (a `pkg-config
--cflags shotwell-plugin-dev-1.0 gobject-2.0 glib-2.0 ...` should tell
you) for those libraries, look at the *.deps file next to the *.vapi—
those libraries will also be included.

If I were you I would first look at gexiv2 and shotwell-plugin-dev-1.0,
since the others are pretty well tested on other platforms.


-Evan




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]