Le dimanche 31 mai 2015 à 02:30 -0700, Andreas Lobinger a écrit :
> Hello colleagues,
> 
> i'd like to do some GUI related things with julia and thought "hey,
> i'm doing quite nice things with pygtk, so let's try here also" and
> looked into Gtk.jl. Gtk.jl which is (seems to be) part of the official
> julialang repository on githup. So my expectation is: This is working.
> 
> All the following might be a strange configuration issue on my side,
> and i'd really appreciate a pointer where to start to get this clean,
> but i have the feeling this is only showing up as symptom of an way
> more complicated unterlying problem.
> 
> So.
> 
> I'm using a recent 0.4.0-dev+5114 (2015-05-30 03:57 UTC) Commit
> 894a31e* (1 day old master). I usually go to my build directory, git
> pull origin master and make. Additional info: i have a parallel v0.3.9
> copy, so both .julia/v.0.3 and .julia/v.0.4 package directories exist.
> I've forked a Gtk.jl to my githup presence and git cloned this to my
> local copy, where i use a branch.
> 
> 
> lobi@orange4:~$ ./julia04/julia 
>                _
>    _       _ _(_)_     |  A fresh approach to technical computing
>   (_)     | (_) (_)    |  Documentation: http://docs.julialang.org
>    _ _   _| |_  __ _   |  Type "help()" for help.
>   | | | | | | |/ _` |  |
>   | | |_| | | | (_| |  |  Version 0.4.0-dev+5114 (2015-05-30 03:57
> UTC)
>  _/ |\__'_|_|_|\__'_|  |  Commit 894a31e* (1 day old master)
> |__/                   |  x86_64-linux-gnu
> 
> julia> Pkg.status()
> WARNING: unknown Clang commit c4d18994, metadata may be ahead of
> package cache
> 7 required packages:
>  - BinDeps                       0.3.12
>  - Dates                         0.4.4
>  - Gtk                           0.8.1+             LibDL_problem
> (dirty)
>  - PyCall                        0.8.1
>  - PyPlot                        1.5.3
>  - Tk                            0.3.3
>  - Winston                       0.11.11
> 
The LibDL_problem (dirty) mention means that you have local changes in
your the Gtk package directory. More precisely, you seem to have created
a custom branch and left the repository in that state. I think you can
get rid of them by running git reset --hard from the package directory
(warning, it will destroy local changes!) and then call Pkg.free("Gtk").


Regards


> 
> Pkg.build("Gtk") works and gives me 2 deprecation warnings on Cairo.jl
> (a dependency of Gtk.jl).
> 
> 
> julia> Pkg.build("Gtk")
> INFO: Building Cairo
> WARNING: beginswith is deprecated, use startswith instead.
>  in depwarn at ./deprecated.jl:62
>  in beginswith at deprecated.jl:30
>  in available_versions
> at /home/lobi/.julia/v0.4/BinDeps/src/dependencies.jl:116
>  in package_available
> at /home/lobi/.julia/v0.4/BinDeps/src/dependencies.jl:111
>  in can_provide
> at /home/lobi/.julia/v0.4/BinDeps/src/dependencies.jl:608
>  in _find_library
> at /home/lobi/.julia/v0.4/BinDeps/src/dependencies.jl:451
>  in allf at /home/lobi/.julia/v0.4/BinDeps/src/dependencies.jl:622
>  in satisfy! at /home/lobi/.julia/v0.4/BinDeps/src/dependencies.jl:690
> (repeats 2 times)
>  in anonymous
> at /home/lobi/.julia/v0.4/BinDeps/src/dependencies.jl:793
>  in include at ./boot.jl:252
>  in include_from_node1 at ./loading.jl:133
>  in evalfile at loading.jl:175 (repeats 2 times)
>  in anonymous at pkg/entry.jl:652
>  in cd at ./file.jl:22
>  in build! at pkg/entry.jl:651
>  in build! at pkg/entry.jl:646
>  in build at pkg/entry.jl:663
>  in anonymous at pkg/dir.jl:31
>  in cd at file.jl:22
>  in cd at pkg/dir.jl:31
>  in build at pkg.jl:64
> while loading /home/lobi/.julia/v0.4/Cairo/deps/build.jl, in
> expression starting on line 144
> WARNING: beginswith is deprecated, use startswith instead.
>  in depwarn at ./deprecated.jl:62
>  in beginswith at deprecated.jl:30
>  in available_versions
> at /home/lobi/.julia/v0.4/BinDeps/src/dependencies.jl:124
>  in package_available
> at /home/lobi/.julia/v0.4/BinDeps/src/dependencies.jl:111
>  in can_provide
> at /home/lobi/.julia/v0.4/BinDeps/src/dependencies.jl:608
>  in _find_library
> at /home/lobi/.julia/v0.4/BinDeps/src/dependencies.jl:451
>  in allf at /home/lobi/.julia/v0.4/BinDeps/src/dependencies.jl:622
>  in satisfy! at /home/lobi/.julia/v0.4/BinDeps/src/dependencies.jl:690
> (repeats 2 times)
>  in anonymous
> at /home/lobi/.julia/v0.4/BinDeps/src/dependencies.jl:793
>  in include at ./boot.jl:252
>  in include_from_node1 at ./loading.jl:133
>  in evalfile at loading.jl:175 (repeats 2 times)
>  in anonymous at pkg/entry.jl:652
>  in cd at ./file.jl:22
>  in build! at pkg/entry.jl:651
>  in build! at pkg/entry.jl:646
>  in build at pkg/entry.jl:663
>  in anonymous at pkg/dir.jl:31
>  in cd at file.jl:22
>  in cd at pkg/dir.jl:31
>  in build at pkg.jl:64
> while loading /home/lobi/.julia/v0.4/Cairo/deps/build.jl, in
> expression starting on line 144
> INFO: Building Gtk
> 
> 
> 
> 
> Using Gtk gives me a rather consistent error, which i get in the same
> way, as using Gtk from githup master (and i decided trying to debug
> this, so the fork and the branch.
> 
> 
> julia> using Gtk
> Warning: New definition 
>     convert(Type{Gtk.GLib.GBoxed}, Ptr{#T<:Gtk.GLib.GBoxed})
> at /home/lobi/.julia/v0.4/Gtk/src/GLib/gtype.jl:279
> is ambiguous with: 
>     convert(Type{#T<:Gtk.GLib.GBoxed}, Ptr{Gtk.GLib.GBoxed})
> at /home/lobi/.julia/v0.4/Gtk/src/GLib/gtype.jl:277.
> To fix, define 
>     convert(Type{Gtk.GLib.GBoxed}, Ptr{Gtk.GLib.GBoxed})
> before the new definition.
> ERROR: LoadError: LoadError: TypeError: get_fn_ptr: in typeassert,
> expected Ptr{Void}, got Base.Libdl.DLHandle
>  in include at ./boot.jl:252
>  in include_from_node1 at ./loading.jl:133
>  in include at ./boot.jl:252
>  in include_from_node1 at ./loading.jl:133
>  in reload_path at ./loading.jl:157
>  in _require at ./loading.jl:69
>  in require at ./loading.jl:52
> while loading /home/lobi/.julia/v0.4/Gtk/src/interfaces.jl, in
> expression starting on line 5
> while loading /home/lobi/.julia/v0.4/Gtk/src/Gtk.jl, in expression
> starting on line 38
> 
> 
> 
> 
> 
> and now the punchline: line 5
> of /home/lobi/.julia/v0.4/Gtk/src/interfaces.jl is empty! 
> 
> 
> 
> lobi@orange4:~/.julia/v0.4/Gtk$ git diff 
> diff --git a/src/interfaces.jl b/src/interfaces.jl
> index ef1ab27..51665f7 100644
> --- a/src/interfaces.jl
> +++ b/src/interfaces.jl
> @@ -2,6 +2,7 @@
>  @Giface GTypePlugin Gtk.GLib.libgobject g_type_plugin
>  @Giface GtkBuildable Gtk.libgtk gtk_buildable
>  @Giface GtkCellEditable Gtk.libgtk gtk_cell_editable
> +
>  @Giface GtkCellLayout Gtk.libgtk gtk_cell_layout
>  @Giface GtkOrientable Gtk.libgtk gtk_orientable
>  @Giface GtkPrintOperationPreview Gtk.libgtk
> gtk_print_operation_preview
> 
> 
> 
> 
> 
> I guess the error message is created from some copy or cache which is
> not under my control.
> 
> Any idea what is happening here?
> 

Reply via email to