في ث، 27-03-2012 عند 17:05 +0200 ، كتب Alejandro T Colombini Gómez:
> August,
>   I just didn't know that. Reading the documentation and looking at an
> official gnome project (GDA, that does the same thing I was trying to do) I
> though it was the only way to bind C to Vala. And the other developers I
> mentioned are using Vala by the first time, too.
> 
>   If I can do this that way I'll save some time! Can you give me some
> reference to that method?

Actually, the recommended way to use a gobject library from Vala is to
generate the vapi from the GIR. It's actually possible to use the GIR
directly, but I'm not sure whether it's a good idea.

Anyway, in case you didn't already see it, look at this:
http://live.gnome.org/Vala/UpstreamGuide

As for your question:
>   To generate the .girs I've used the --include-uninstalled option to
> include the previously generated .gir file of the project. Now, when
> the
> build system tries to run vapigen to generate a .vapi that depends on
> another part of the library, it fails.
> 
>   The call to vapigen is something like this:
>     $(VAPIGEN) --pkg glib-2.0 --pkg gobject-2.0 --pkg gvn-0.1 -d
> $(vapidir) --vapidir=$(vapidir) --library foo-0.1 Foo-0.1.gir
> 
>   The .vapi file of the "gvn" package is alredy generated (and put in
> the directory specified via the --vapidir option) at this point, as
> well
> as the .gir of the current package.
> 
>   And this is the error it produces:
>     error: Package `Gvn-0.1' not found in specified Vala API
> directories
> or GObject-Introspection GIR directories

Just a guess, but I think the problem is that your gir file doesn't
reference the package, and so valac doesn't know that gvn-0.1.vapi and
Gvn-0.1.gir are the same. You have to add --pkg-export=gvn-0.1 to your
g-ir-scanner flags.

HTH,
Abderrahim

_______________________________________________
vala-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/vala-list

Reply via email to