jonathanBieler / GtkIDE.jl

A Gtk based IDE for Julia
Other
74 stars 5 forks source link

Some errors on Windows #10

Open joa-quim opened 8 years ago

joa-quim commented 8 years ago

Hi,

(julia.exe:77200): GtkSourceView-WARNING **: no color named 'white'

(julia.exe:77200): Gtk-WARNING **: Theme parsing error: <data>:3:17: Not using units is deprecated. Assuming 'px'.
WARNING: Method definition figure() in module Immerse at C:\j\.julia\v0.4\Immerse\src\display_gadfly.jl:245 overwritten in module
Main at C:\j\.julia\v0.4\GtkIDE\src\PlotWindow.jl:126.
WARNING: Method definition figure(Array) in module Immerse overwritten in module Main.
WARNING: Method definition figure(Integer) in module Immerse at C:\j\.julia\v0.4\Immerse\src\display_gadfly.jl:255 overwritten in
module Main at C:\j\.julia\v0.4\GtkIDE\src\PlotWindow.jl:143.
WARNING: Method definition figure(Array, Integer) in module Immerse overwritten in module Main.
WARNING: Method definition closefig(Integer) in module Immerse at C:\j\.julia\v0.4\Immerse\src\display_gadfly.jl:284 overwritten in module Main at C:\j\.julia\v0.4\GtkIDE\src\PlotWindow.jl:158.

(julia.exe:77200): GModule-CRITICAL **: g_module_symbol: assertion 'symbol != NULL' failed

(julia.exe:77200): GModule-CRITICAL **: g_module_symbol: assertion 'symbol != NULL' failed
ERROR: LoadError: LoadError: MethodError: `convert` has no method matching convert(::Type{Ptr{Gtk.GtkTreePath}}, ::Void)
This may have arisen from a call to the constructor Ptr{Gtk.GtkTreePath}(...),
since type constructors fall back to convert methods.
Closest candidates are:
  call{T}(::Type{T}, ::Any)
  convert{T}(::Type{Ptr{T}}, ::UInt64)
  convert{T}(::Type{Ptr{T}}, ::Int64)
  ...
 in call at C:\j\.julia\v0.4\Gtk\src\lists.jl:82
 in update! at C:\j\.julia\v0.4\GtkIDE\src\FilesPanel.jl:243
while loading C:\j\.julia\v0.4\GtkIDE\src\SidePanels.jl, in expression starting on line 51
while loading C:\j\.julia\v0.4\GtkIDE\src\GtkIDE.jl, in expression starting on line 125

julia>
(julia.exe:77200): Gdk-WARNING **: Failed to OpenClipboard on window handle 0000000000611090
jonathanBieler commented 8 years ago

Do you have the lastest version of Gtk?

Pkg.checkout("Gtk")

Then restart everything.

joa-quim commented 8 years ago

Ok, now I do but, sorry, it makes no difference. Same errors.

jonathanBieler commented 8 years ago

I think gtk_tree_path_new_from_string return a null pointer for some reason (it works on my windows 7 machine), can you try with this ?

https://github.com/jonathanBieler/GtkIDE.jl/commit/41e8b91ee945886a78f7e72c9aff9aaadee88deb

You just need to checkout the package and retry:

Pkg.checkout("GtkIDE")

joa-quim commented 8 years ago

Looks like the same type of error was pushed up to someplace else (Win8.1 here but shouldn't make any difference)

(julia.exe:77288): GtkSourceView-WARNING **: no color named 'white'

(julia.exe:77288): Gtk-WARNING **: Theme parsing error: <data>:3:17: Not using units is deprecated. Assuming 'px'.
WARNING: Method definition figure() in module Immerse at C:\j\.julia\v0.4\Immerse\src\display_gadfly.jl:245 overwritten in module
Main at C:\j\.julia\v0.4\GtkIDE\src\PlotWindow.jl:126.
WARNING: Method definition figure(Array) in module Immerse overwritten in module Main.
WARNING: Method definition figure(Integer) in module Immerse at C:\j\.julia\v0.4\Immerse\src\display_gadfly.jl:255 overwritten in
module Main at C:\j\.julia\v0.4\GtkIDE\src\PlotWindow.jl:143.
WARNING: Method definition figure(Array, Integer) in module Immerse overwritten in module Main.
WARNING: Method definition closefig(Integer) in module Immerse at C:\j\.julia\v0.4\Immerse\src\display_gadfly.jl:284 overwritten in module Main at C:\j\.julia\v0.4\GtkIDE\src\PlotWindow.jl:158.

(julia.exe:77288): GModule-CRITICAL **: g_module_symbol: assertion 'symbol != NULL' failed

(julia.exe:77288): GModule-CRITICAL **: g_module_symbol: assertion 'symbol != NULL' failed
ERROR: LoadError: MethodError: `convert` has no method matching convert(::Type{Immerse.Figure})
This may have arisen from a call to the constructor Immerse.Figure(...),
since type constructors fall back to convert methods.
Closest candidates are:
  convert{T}(::Type{T}, ::T)
  Immerse.Figure(, ::Gtk.GtkCanvas)
  Immerse.Figure(, ::Gtk.GtkCanvas, ::Gadfly.Plot)
  ...
 in figure at C:\j\.julia\v0.4\GtkIDE\src\PlotWindow.jl:127
while loading C:\j\.julia\v0.4\GtkIDE\src\GtkIDE.jl, in expression starting on line 171
jonathanBieler commented 8 years ago

See the same issue that just got posted https://github.com/jonathanBieler/GtkIDE.jl/issues/11.

joa-quim commented 8 years ago

Ah, I probably missed the Pkg.checkout("Immerse") too. But now get all these cairo errors and a Julia crash at the end. However, I happen to have my own build of Cairo (with VS2013) and apparently something screws badly with it.

(julia.exe:12636): GModule-CRITICAL **: g_module_symbol: assertion 'symbol != NULL' failed

(julia.exe:12636): GModule-CRITICAL **: g_module_symbol: assertion 'symbol != NULL' failed

julia>
(julia.exe:12636): GLib-GObject-WARNING **: cannot register existing type 'PangoCairoWin32FontMap'

(julia.exe:12636): GLib-GObject-WARNING **: cannot register existing type 'PangoCairoFontMap'

(julia.exe:12636): GLib-GObject-CRITICAL **: g_type_interface_add_prerequisite: assertion 'G_TYPE_IS_INTERFACE (interface_type)' failed

(julia.exe:12636): GLib-CRITICAL **: g_once_init_leave: assertion 'result != 0' failed

(julia.exe:12636): GLib-GObject-CRITICAL **: g_type_add_interface_static: assertion 'G_TYPE_IS_INSTANTIATABLE (instance_type)' failed

(julia.exe:12636): GLib-CRITICAL **: g_once_init_leave: assertion 'result != 0' failed

(julia.exe:12636): GLib-GObject-CRITICAL **: g_object_new: assertion 'G_TYPE_IS_OBJECT (object_type)' failed

(julia.exe:12636): Pango-CRITICAL **: pango_font_map_create_context: assertion 'fontmap != NULL' failed

(julia.exe:12636): Pango-CRITICAL **: pango_cairo_update_context: assertion 'PANGO_IS_CONTEXT (context)' failed

(julia.exe:12636): Pango-CRITICAL **: pango_layout_new: assertion 'context != NULL' failed

(julia.exe:12636): GLib-GObject-CRITICAL **: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
Assertion failed!

Program: C:\programs\Julia-0.4\bin\julia.exe
File: cairo-pattern.c, Line 822

Expression: CAIRO_REFERENCE_COUNT_HAS_REFERENCE (&pattern->ref_count)
joa-quim commented 8 years ago

So I hide my outside Gtk (was from a internet install, not build by me as I thought) and forced a rebuild using WinRPM and now it seams to work, though it still complains of

WARNING: Method definition figure(Array, Integer) in module Immerse overwritten in module Main.
WARNING: Method definition closefig(Integer) in module Immerse at C:\j\.julia\v0.4\Immerse\src\display_gadfly.jl:293 overwritten in module Main at C:\j\.julia\v0.4\GtkIDE\src\PlotWindow.jl:158.

(julia.exe:76608): GModule-CRITICAL **: g_module_symbol: assertion 'symbol != NULL' failed

(julia.exe:76608): GModule-CRITICAL **: g_module_symbol: assertion 'symbol != NULL' failed

julia>
(julia.exe:76608): GtkSourceView-WARNING **: could not parse color '#bg'

(julia.exe:76608): GtkSourceView-WARNING **: could not parse color '#bg'

(julia.exe:76608): GtkSourceView-WARNING **: could not parse color '#bg'

(julia.exe:76608): GtkSourceView-WARNING **: could not parse color '#bg'

(julia.exe:76608): GtkSourceView-WARNING **: could not parse color '#bg'
jonathanBieler commented 8 years ago

Cool, the warnings are "normal", although the GModule-CRITICAL one looks a bit scary. I don't know where it comes from.