GTK on Mac again

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
11 messages Options
Reply | Threaded
Open this post in threaded view
|

GTK on Mac again

Damien Pollet
Hi, here's what a fresh compile from git tells me:

st> PackageLoader fileInPackage: 'GTK'
"Global garbage collection... done"
Loading package GTK
Recompiling classes...
Recompiling classes...
/Users/damien/Documents/Scratch/GnuSmalltalk/install/share/smalltalk/GTK.star#VFS.ZipFile/MoreFuncs.st:50:
key GObject not found
/Users/damien/Documents/Scratch/GnuSmalltalk/install/share/smalltalk/GTK.star#VFS.ZipFile/MoreFuncs.st:50:
expected Eval, Namespace or class definition
/Users/damien/Documents/Scratch/GnuSmalltalk/install/share/smalltalk/GTK.star#VFS.ZipFile/MoreFuncs.st:59:
expected expression
/Users/damien/Documents/Scratch/GnuSmalltalk/install/share/smalltalk/GTK.star#VFS.ZipFile/GtkImpl.st:1:
key GtkWidget not found
/Users/damien/Documents/Scratch/GnuSmalltalk/install/share/smalltalk/GTK.star#VFS.ZipFile/GtkImpl.st:1:
expected Eval, Namespace or class definition
/Users/damien/Documents/Scratch/GnuSmalltalk/install/share/smalltalk/GTK.star#VFS.ZipFile/GtkImpl.st:13:
expected expression

It's on mac, but with the gtk2 from macports (built against X11) and
according to otool, the libs are loaded from the correct place…

--
Damien Pollet
type less, do more [ | ] http://people.untyped.org/damien.pollet


_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk
Reply | Threaded
Open this post in threaded view
|

Re: GTK on Mac again

Paolo Bonzini-2
Damien Pollet wrote:

> Hi, here's what a fresh compile from git tells me:
>
> st> PackageLoader fileInPackage: 'GTK'
> "Global garbage collection... done"
> Loading package GTK
> Recompiling classes...
> Recompiling classes...
> /Users/damien/Documents/Scratch/GnuSmalltalk/install/share/smalltalk/GTK.star#VFS.ZipFile/MoreFuncs.st:50:
> key GObject not found
> /Users/damien/Documents/Scratch/GnuSmalltalk/install/share/smalltalk/GTK.star#VFS.ZipFile/MoreFuncs.st:50:
> expected Eval, Namespace or class definition
> /Users/damien/Documents/Scratch/GnuSmalltalk/install/share/smalltalk/GTK.star#VFS.ZipFile/MoreFuncs.st:59:
> expected expression
> /Users/damien/Documents/Scratch/GnuSmalltalk/install/share/smalltalk/GTK.star#VFS.ZipFile/GtkImpl.st:1:
> key GtkWidget not found
> /Users/damien/Documents/Scratch/GnuSmalltalk/install/share/smalltalk/GTK.star#VFS.ZipFile/GtkImpl.st:1:
> expected Eval, Namespace or class definition
> /Users/damien/Documents/Scratch/GnuSmalltalk/install/share/smalltalk/GTK.star#VFS.ZipFile/GtkImpl.st:13:
> expected expression
>
> It's on mac, but with the gtk2 from macports (built against X11) and
> according to otool, the libs are loaded from the correct place…

It's the structs.st and funcs.st files that are not built correctly.
They're probably empty.  What's in packages/gtk/order in the build
directory?

Paolo


_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk
Reply | Threaded
Open this post in threaded view
|

Re: GTK on Mac again

Damien Pollet
On Thu, Mar 26, 2009 at 18:13, Paolo Bonzini <[hidden email]> wrote:
> It's the structs.st and funcs.st files that are not built correctly.
> They're probably empty.  What's in packages/gtk/order in the build
> directory?

Many .h file names, from glib pango gtk atk… much like what mathieu
pasted last month. Should I be looking for something in particular
there ?


--
Damien Pollet
type less, do more [ | ] http://people.untyped.org/damien.pollet


_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk
Reply | Threaded
Open this post in threaded view
|

Re: GTK on Mac again

Paolo Bonzini-2
Damien Pollet wrote:
> On Thu, Mar 26, 2009 at 18:13, Paolo Bonzini <[hidden email]> wrote:
>> It's the structs.st and funcs.st files that are not built correctly.
>> They're probably empty.  What's in packages/gtk/order in the build
>> directory?
>
> Many .h file names, from glib pango gtk atk… much like what mathieu
> pasted last month. Should I be looking for something in particular
> there ?

No, that should be fine...

I wonder if your awk is not gawk?

Paolo


_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk
Reply | Threaded
Open this post in threaded view
|

Re: GTK on Mac again

Damien Pollet
On Thu, Mar 26, 2009 at 18:47, Paolo Bonzini <[hidden email]> wrote:
> I wonder if your awk is not gawk?

awk version 20040207
it's /usr/bin/awk, and I didn't install gawk from macports…

--
Damien Pollet
type less, do more [ | ] http://people.untyped.org/damien.pollet


_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk
Reply | Threaded
Open this post in threaded view
|

Re: GTK on Mac again

Paolo Bonzini-2
Damien Pollet wrote:
> On Thu, Mar 26, 2009 at 18:47, Paolo Bonzini <[hidden email]> wrote:
>> I wonder if your awk is not gawk?
>
> awk version 20040207
> it's /usr/bin/awk, and I didn't install gawk from macports…

Thanks.  Can anybody update the wiki?

Paolo


_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk
Reply | Threaded
Open this post in threaded view
|

Re: GTK on Mac again

Damien Pollet
On Thu, Mar 26, 2009 at 19:00, Paolo Bonzini <[hidden email]> wrote:
> Damien Pollet wrote:
>> On Thu, Mar 26, 2009 at 18:47, Paolo Bonzini <[hidden email]> wrote:
>>> I wonder if your awk is not gawk?
>>
>> awk version 20040207
>> it's /usr/bin/awk, and I didn't install gawk from macports…
>
> Thanks.  Can anybody update the wiki?

So do I want awk or gawk ? ook ?
I rebuilt after port install gawk, same result.


--
Damien Pollet
type less, do more [ | ] http://people.untyped.org/damien.pollet


_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk
Reply | Threaded
Open this post in threaded view
|

Re: GTK on Mac again

Paolo Bonzini-2
Damien Pollet wrote:
> On Thu, Mar 26, 2009 at 19:00, Paolo Bonzini <[hidden email]> wrote:
>> Damien Pollet wrote:
>>> On Thu, Mar 26, 2009 at 18:47, Paolo Bonzini <[hidden email]> wrote:
>>>> I wonder if your awk is not gawk?
>>> awk version 20040207
>>> it's /usr/bin/awk, and I didn't install gawk from macports…
>> Thanks.  Can anybody update the wiki?
>
> So do I want awk or gawk ? ook ?

gawk

> I rebuilt after port install gawk, same result.

Have you rebuilt from scratch?  Can you send me the generated
packages/gtk/Structs.st file?  It should be empty.

Paolo


_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk
Reply | Threaded
Open this post in threaded view
|

Re: GTK on Mac again

Damien Pollet
On Thu, Mar 26, 2009 at 19:24, Paolo Bonzini <[hidden email]> wrote:
> Have you rebuilt from scratch?  Can you send me the generated
> packages/gtk/Structs.st file?  It should be empty.

No just re-configured etc. Now after removing all the files and
rebuilding, I get this…

$ ../install/bin/gst-load -iI gtk.im GTK
Recompiling classes...
Recompiling class: GTK.GtkRequisition class
Recompiling classes...
Recompiling classes...
Recompiling classes...
Recompiling class: GTK.GdkEventButton class
Recompiling classes...
Recompiling class: GTK.GdkEventMotion class
Recompiling classes...
Recompiling class: GTK.GdkEventConfigure class
Object: CFunctionDescriptor new: 1 "<0x1086860>" error: Invalid C
call-out g_initially_unowned_get_type
SystemExceptions.CInterfaceError(Smalltalk.Exception)>>signal
(AnsiExcept.st:216)
SystemExceptions.CInterfaceError class(Smalltalk.Exception
class)>>signal: (AnsiExcept.st:79)
Smalltalk.CFunctionDescriptor(Smalltalk.CCallable)>>callInto: (CCallable.st:165)
GInitiallyUnowned class>>getType (GTK.star#VFS.ZipFile/Funcs.st:1)
optimized [] in GLib class>>registerAllTypes
(GTK.star#VFS.ZipFile/GtkDecl.st:94)
Smalltalk.OrderedCollection(Smalltalk.SequenceableCollection)>>do:
(SeqCollect.st:823)
GLib class>>registerAllTypes (GTK.star#VFS.ZipFile/GtkDecl.st:94)
Smalltalk.UndefinedObject>>executeStatements
(GTK.star#VFS.ZipFile/GtkImpl.st:447)


apparently g_initially_unowned_get_type returns a GType but I suppose
it's a typedef for #long as says Funcs.st ?

!GInitiallyUnowned class methodsFor: 'C call-outs'!
getType
    <cCall: 'g_initially_unowned_get_type' returning: #long
        args: #( )>! !

--
Damien Pollet
type less, do more [ | ] http://people.untyped.org/damien.pollet


_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk
Reply | Threaded
Open this post in threaded view
|

Re: GTK on Mac again

Paolo Bonzini-2

> apparently g_initially_unowned_get_type returns a GType but I suppose
> it's a typedef for #long as says Funcs.st ?
>
> !GInitiallyUnowned class methodsFor: 'C call-outs'!
> getType
>     <cCall: 'g_initially_unowned_get_type' returning: #long
>         args: #( )>! !
>

It looks like you don't have a g_initially_unowned_get_type in your GTK+
library.  It might be that you're using different versions of headers
(to generate the st files) and libraries (to link).

Try this:

otool -L .libs/gst-gtk.so|grep gobject
nm OUTPUT-OF-OTOOL |grep g_init

and compare with the paths in packages/gtk/order.

Paolo


_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk
Reply | Threaded
Open this post in threaded view
|

Re: GTK on Mac again

Damien Pollet
On Fri, Mar 27, 2009 at 12:48, Paolo Bonzini <[hidden email]> wrote:
> otool -L .libs/gst-gtk.so|grep gobject

 /opt/local/lib/libgobject-2.0.0.dylib

> and compare with the paths in packages/gtk/order.

$ grep -R g_initially_unowned_get_type /opt/local/include/glib-2.0/
/opt/local/include/glib-2.0/gobject/gobject.h:#define
G_TYPE_INITIALLY_UNOWNED        (g_initially_unowned_get_type())
/opt/local/include/glib-2.0/gobject/gobject.h:GType
g_initially_unowned_get_type      (void);

and both this .h and the .dylib above are provided my the same macports package:
$ port provides /opt/local/include/glib-2.0/gobject/gobject.h
/opt/local/lib/libgobject-2.0.0.dylib
/opt/local/include/glib-2.0/gobject/gobject.h is provided by: glib2
/opt/local/lib/libgobject-2.0.0.dylib is provided by: glib2

there is a glib2-devel that is a bit more recent though, I could try
and install this one instead:
$ port search glib2
glib2 @2.18.3 (devel)
    Library with data structure functions and other constructs

glib2-devel @2.19.6 (devel)
    Library with data structure functions and other constructs
--
Damien Pollet
type less, do more [ | ] http://people.untyped.org/damien.pollet


_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk