Gtk.jl not working on Ubuntu 12.04, 64 bits

169 views
Skip to first unread message

Uwe Fechner

unread,
Sep 28, 2014, 5:42:36 AM9/28/14
to julia...@googlegroups.com
Hello,

I installed Gtk.jl as described at https://github.com/JuliaLang/Gtk.jl .

Nevertheless, using Gtk fails:

julia> using Gtk
ERROR: libgobject not defined
 in anonymous at no file
 in include at ./boot.jl:245
 in include_from_node1 at ./loading.jl:128
 in include at ./boot.jl:245
 in include_from_node1 at ./loading.jl:128
 in reload_path at loading.jl:152
 in _require at loading.jl:67
 in require at loading.jl:51
while loading /home/ufechner/.julia/v0.3/Gtk/src/GLib/GLib.jl, in expression starting on line 34
while loading /home/ufechner/.julia/v0.3/Gtk/src/Gtk.jl, in expression starting on line 6

julia>


My versioninfo:

julia> versioninfo()
Julia Version 0.3.1
Commit c03f413 (2014-09-21 21:30 UTC)
Platform Info:
  System: Linux (x86_64-linux-gnu)
  CPU: Intel(R) Core(TM) i7-2600K CPU @ 3.40GHz
  WORD_SIZE: 64
  BLAS: libopenblas (NO_LAPACK NO_LAPACKE DYNAMIC_ARCH NO_AFFINITY Sandybridge)
  LAPACK: liblapack.so.3
  LIBM: libopenlibm
  LLVM: libLLVM-3.3

julia>


Any idea how to fix this?

Best regards:

Uwe Fechner

Tim Holy

unread,
Sep 28, 2014, 7:20:37 AM9/28/14
to julia...@googlegroups.com
Are your packages up-to-date?

Also, the README should be updated; these days, just Pkg.add("Gtk") should be
sufficient.

--Tim

Uwe Fechner

unread,
Sep 28, 2014, 8:15:47 AM9/28/14
to julia...@googlegroups.com
I updated all Ubuntu packages, deleted the .julia folder and reinstalled Gtk, using
Pkg.add("Gtk").

Still the same problem.

Any idea?

Regards:

Uwe

Andreas Lobinger

unread,
Sep 28, 2014, 8:29:39 AM9/28/14
to julia...@googlegroups.com
The error message is on glib. Check, where it resides and what version number it has. Then see, if deps,jl is matching.

Uwe Fechner

unread,
Sep 28, 2014, 8:42:17 AM9/28/14
to julia...@googlegroups.com
I found:
ufechner@uwe-desktop64:/lib/x86_64-linux-gnu$ ls libgl*
libglib-2.0.so.0  libglib-2.0.so.0.3200.4


The file ~/.julia/v0.3/Gtk/deps/ext_glib.jl contains:
if isfile(_depspath)
    include(_depspath)
else
    if OS_NAME == :Windows
        const libgobject = "libgobject-2.0-0"
        const libglib = "libglib-2.0-0"
    else
        const libgobject = "libgobject-2.0"
        const libglib = "libglib-2.0"
    end
end


For me, this looks correct. Any idea?

Regards:

Uwe

Jameson Nash

unread,
Sep 28, 2014, 12:39:09 PM9/28/14
to julia...@googlegroups.com
Is BinDeps generating a corrupt `deps.jl` file? Try deleting that and seeing if it works.

Elliot Saba

unread,
Sep 28, 2014, 12:48:05 PM9/28/14
to julia...@googlegroups.com

The output of BinDeps.debug("Gtk") will be helpful. You will have to "using BinDeps" first, of course.

Uwe Fechner

unread,
Sep 28, 2014, 1:57:54 PM9/28/14
to julia...@googlegroups.com
Output of BinDeps.debug("Gtk"):

julia> BinDeps.debug("Gtk")
INFO: Reading build script...
The package declares 1 dependencies.
 - Library Group "gtk"
     - Library "glib"
        - Satisfied by:
          - AptGet package libgtk-3-0 at /usr/lib/x86_64-linux-gnu/libglib-2.0.so
        - Providers:
          - AptGet package libgtk-3-0
          - Yum package gtk3 (can't provide)
     - Library "gobject"
        - Satisfied by:
          - AptGet package libgtk-3-0 at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so
        - Providers:
          - AptGet package libgtk-3-0
          - Yum package gtk3 (can't provide)
     - Library "gtk"
        - Satisfied by:
          - System Paths at /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
        - Providers:
          - AptGet package libgtk-3-0
          - Yum package gtk3 (can't provide)
     - Library "gdk"
        - Satisfied by:
          - System Paths at /usr/lib/x86_64-linux-gnu/libgdk-3.so.0
        - Providers:
          - AptGet package libgtk-3-0
          - Yum package gtk3 (can't provide)
     - Library "gdk_pixbuf"
        - Satisfied by:
          - AptGet package libgtk-3-0 at /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so
        - Providers:
          - AptGet package libgtk-3-0
          - Yum package gtk3 (can't provide)
     - Library "gio"
        - Satisfied by:
          - AptGet package libgtk-3-0 at /usr/lib/x86_64-linux-gnu/libgio-2.0.so
        - Providers:
          - AptGet package libgtk-3-0
          - Yum package gtk3 (can't provide)

julia>


Any ideas?

Uwe

Uwe Fechner

unread,
Sep 29, 2014, 1:52:18 PM9/29/14
to julia...@googlegroups.com
Ok, this helped. I renamed the file deps.jl and now everything works fine.

Content of the deps.jl file:
macro checked_lib(libname, path)
        (dlopen_e(path) == C_NULL) && error("Unable to load \n\n$libname ($path)\n\nPlease re-run Pkg.build(package), and restart Julia.")
        quote const $(esc(libname)) = $path end
    end

Any idea were this wrong file is coming from and how to fix the error in the package?

Regards: Uwe

Jameson Nash

unread,
Sep 29, 2014, 2:01:13 PM9/29/14
to julia...@googlegroups.com
@Keno. Can you investigate why BinDeps is sometimes generating corrupt deps.jl files?
Reply all
Reply to author
Forward
0 new messages