Forum Replies Created
-
AuthorPosts
-
I’m sure I will use pyro at some point once I get my feet wet. Just now finally getting to check things out a bit
I’ll give it a go if you can give me a little direction (I’m still trying to wrap my head around Mx2)
Where do I need to import files? I have a little extra time and would love to see this runningxrandr reports everything should be around 60hz, so I’m not sure why this is happening
Monkey12345678910111213141516171819202122232425262728293031323334353637viavacavi@viavacavi-ThinkPad-P70:~$ xrandrScreen 0: minimum 8 x 8, current 1920 x 1080, maximum 16384 x 16384DP-0 disconnected (normal left inverted right x axis y axis)DP-1 disconnected (normal left inverted right x axis y axis)DP-2 disconnected (normal left inverted right x axis y axis)DP-3 disconnected (normal left inverted right x axis y axis)DP-4 disconnected (normal left inverted right x axis y axis)DP-5 disconnected (normal left inverted right x axis y axis)eDP-1-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 382mm x 215mm1920x1080 60.00*+ 59.931680x1050 59.95 59.881600x1024 60.171400x1050 59.981280x1024 60.021440x900 59.891280x960 60.001360x768 59.80 59.961152x864 60.001024x768 60.04 60.00960x720 60.00928x696 60.05896x672 60.01960x600 60.00960x540 59.99800x600 60.00 60.32 56.25840x525 60.01 59.88800x512 60.17700x525 59.98640x512 60.02720x450 59.89640x480 60.00 59.94680x384 59.80 59.96576x432 60.06512x384 60.00400x300 60.32 56.34320x240 60.05From the little reading that i’ve been able to do, it seems that libui is normally built with cmake on linux. I wonder if this is the last missing piece. Unfortunately, I’m not yet familiar at all with the Monkey2 build process to try much of anything out
just filed a bug report for mark to consider this for Monkey2 default
thanks for the reply
The spacechimps example already has SwapInterval set to 1, and everything still runs ungoverned. Maybe I’ll do a bug report
Got a step closer compiling on linux. To test the pkg-config hunch out, I edited env_linux.txt:
MX2_CPP_OPTS_LINUX_RELEASE=-O3 -DNDEBUG pkg-config --cflags --libs gtk+-3.0
note: the above does not display correctly here. There are backquotes surrounding the entire last part beginning at pkg-config, and ending after gtk+-3.0.
and there are no more gtk header errors, though now there’s a boatload of other errors:
viavacavi@viavacavi-ThinkPad-P70:~/Dropbox/monkey2/bin$ ./mx2cc_linux makemods -clean -target=desktop -config=release m2libui
Mx2cc version 1.1.10
***** Making module ‘m2libui’ (linux release x64 gcc) *****
Parsing…
Semanting…
Translating…
Compiling…
Build error: System command failed:g++ -c -std=c++11 -O3 -DNDEBUG pkg-config --cflags --libs gtk+-3.0 -I”/home/viavacavi/Dropbox/monkey2/modules/” -I”/home/viavacavi/Dropbox/monkey2/modules/monkey/native” -o “/home/viavacavi/Dropbox/monkey2/modules/m2libui/m2libui.buildv1.1.10/linux_release/build/m2libui_0makefile_00linux.cpp.o” “/home/viavacavi/Dropbox/monkey2/modules/m2libui/m2libui.buildv1.1.10/linux_release/src/m2libui_makefile_0linux.cpp”
In file included from /home/viavacavi/Dropbox/monkey2/modules/m2libui/m2libui.buildv1.1.10/linux_release/include/m2libui_makefile_0linux.h:6:0,
from /home/viavacavi/Dropbox/monkey2/modules/m2libui/m2libui.buildv1.1.10/linux_release/src/m2libui_makefile_0linux.cpp:2:
/home/viavacavi/Dropbox/monkey2/modules/m2libui/libui-master/unix/draw.h:5:2: error: ‘cairo_t’ does not name a type; did you mean ‘caddr_t’?
cairo_t *cr;
^~~~~~~
caddr_t
/home/viavacavi/Dropbox/monkey2/modules/m2libui/libui-master/unix/draw.h:9:21: error: variable or field ‘runPath’ declared void
extern void runPath(uiDrawPath *p, cairo_t *cr);
^~~~~~~~~~
/home/viavacavi/Dropbox/monkey2/modules/m2libui/libui-master/unix/draw.h:9:21: error: ‘uiDrawPath’ was not declared in this scope
/home/viavacavi/Dropbox/monkey2/modules/m2libui/libui-master/unix/draw.h:9:21: note: suggested alternative: ‘uiDrawContext’
extern void runPath(uiDrawPath *p, cairo_t *cr);
^~~~~~~~~~
uiDrawContext
/home/viavacavi/Dropbox/monkey2/modules/m2libui/libui-master/unix/draw.h:9:33: error: ‘p’ was not declared in this scope
extern void runPath(uiDrawPath *p, cairo_t *cr);
^
/home/viavacavi/Dropbox/monkey2/modules/m2libui/libui-master/unix/draw.h:9:36: error: ‘cairo_t’ was not declared in this scope
extern void runPath(uiDrawPath *p, cairo_t *cr);
^~~~~~~
/home/viavacavi/Dropbox/monkey2/modules/m2libui/libui-master/unix/draw.h:9:36: note: suggested alternative: ‘caddr_t’
extern void runPath(uiDrawPath *p, cairo_t *cr);
^~~~~~~
caddr_t
/home/viavacavi/Dropbox/monkey2/modules/m2libui/libui-master/unix/draw.h:9:45: error: ‘cr’ was not declared in this scope
extern void runPath(uiDrawPath *p, cairo_t *cr);
^~
/home/viavacavi/Dropbox/monkey2/modules/m2libui/libui-master/unix/draw.h:10:8: error: ‘uiDrawFillMode’ does not name a type
extern uiDrawFillMode pathFillMode(uiDrawPath *path);
^~~~~~~~~~~~~~
/home/viavacavi/Dropbox/monkey2/modules/m2libui/libui-master/unix/draw.h:13:17: error: variable or field ‘m2c’ declared void
extern void m2c(uiDrawMatrix *m, cairo_matrix_t *c);
^~~~~~~~~~~~
/home/viavacavi/Dropbox/monkey2/modules/m2libui/libui-master/unix/draw.h:13:17: error: ‘uiDrawMatrix’ was not declared in this scope
/home/viavacavi/Dropbox/monkey2/modules/m2libui/libui-master/unix/draw.h:13:17: note: suggested alternative: ‘uiDrawContext’
extern void m2c(uiDrawMatrix *m, cairo_matrix_t *c);
^~~~~~~~~~~~
uiDrawContext
/home/viavacavi/Dropbox/monkey2/modules/m2libui/libui-master/unix/draw.h:13:31: error: ‘m’ was not declared in this scope
extern void m2c(uiDrawMatrix *m, cairo_matrix_t *c);
^
/home/viavacavi/Dropbox/monkey2/modules/m2libui/libui-master/unix/draw.h:13:34: error: ‘cairo_matrix_t’ was not declared in this scope
extern void m2c(uiDrawMatrix *m, cairo_matrix_t *c);
^~~~~~~~~~~~~~
/home/viavacavi/Dropbox/monkey2/modules/m2libui/libui-master/unix/draw.h:13:34: note: suggested alternative: ‘cairo_matrix_copy’
extern void m2c(uiDrawMatrix *m, cairo_matrix_t *c);
^~~~~~~~~~~~~~
cairo_matrix_copy
/home/viavacavi/Dropbox/monkey2/modules/m2libui/libui-master/unix/draw.h:13:50: error: ‘c’ was not declared in this scope
extern void m2c(uiDrawMatrix *m, cairo_matrix_t *c);
^
In file included from /usr/include/glib-2.0/gobject/gobject.h:24:0,
from /usr/include/glib-2.0/gobject/gbinding.h:29,
from /usr/include/glib-2.0/glib-object.h:23,
from /usr/include/glib-2.0/gio/gioenums.h:28,
from /usr/include/glib-2.0/gio/giotypes.h:28,
from /usr/include/glib-2.0/gio/gio.h:26,
from /usr/include/gtk-3.0/gdk/gdkapplaunchcontext.h:28,
from /usr/include/gtk-3.0/gdk/gdk.h:32,
from /usr/include/gtk-3.0/gtk/gtk.h:30,
from /home/viavacavi/Dropbox/monkey2/modules/m2libui/libui-master/unix/uipriv_unix.h:6,
from /home/viavacavi/Dropbox/monkey2/modules/m2libui/m2libui.buildv1.1.10/linux_release/include/m2libui_makefile_0linux.h:7,
from /home/viavacavi/Dropbox/monkey2/modules/m2libui/m2libui.buildv1.1.10/linux_release/src/m2libui_makefile_0linux.cpp:2:
/usr/include/glib-2.0/gio/glistmodel.h: In function ‘GListModel* G_LIST_MODEL(gpointer)’:
/usr/include/glib-2.0/gobject/gtype.h:1573:73: warning: ‘GType g_list_model_get_type()’ is deprecated: Not available before 2.44 [-Wdeprecated-declarations]
return G_TYPE_CHECK_INSTANCE_CAST (ptr, module_obj_name##_get_type (), ModuleObjName); } \
^
/usr/include/glib-2.0/gobject/gtype.h:2224:61: note: in definition of macro ‘_G_TYPE_CIC’
((ct*) g_type_check_instance_cast ((GTypeInstance*) ip, gt))
^~
/usr/include/glib-2.0/gobject/gtype.h:1573:12: note: in expansion of macro ‘G_TYPE_CHECK_INSTANCE_CAST’
return G_TYPE_CHECK_INSTANCE_CAST (ptr, module_obj_name##_get_type (), ModuleObjName); } \
^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gio/glistmodel.h:36:1: note: in expansion of macro ‘G_DECLARE_INTERFACE’
G_DECLARE_INTERFACE(GListModel, g_list_model, G, LIST_MODEL, GObject)
^~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gio/glistmodel.h:36:33: note: declared here
G_DECLARE_INTERFACE(GListModel, g_list_model, G, LIST_MODEL, GObject)
^
/usr/include/glib-2.0/gobject/gtype.h:1565:9: note: in definition of macro ‘G_DECLARE_INTERFACE’
GType module_obj_name##_get_type (void); \
^~~~~~~~~~~~~~~
/usr/include/glib-2.0/gio/glistmodel.h: In function ‘gboolean G_IS_LIST_MODEL(gpointer)’:
/usr/include/glib-2.0/gobject/gtype.h:1575:73: warning: ‘GType g_list_model_get_type()’ is deprecated: Not available before 2.44 [-Wdeprecated-declarations]
return G_TYPE_CHECK_INSTANCE_TYPE (ptr, module_obj_name##_get_type ()); } \
^
/usr/include/glib-2.0/gobject/gtype.h:2238:60: note: in definition of macro ‘_G_TYPE_CIT’
GTypeInstance *__inst = (GTypeInstance*) ip; GType __t = gt; gboolean __r; \
^~
/usr/include/glib-2.0/gobject/gtype.h:1575:12: note: in expansion of macro ‘G_TYPE_CHECK_INSTANCE_TYPE’
return G_TYPE_CHECK_INSTANCE_TYPE (ptr, module_obj_name##_get_type ()); } \
^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gio/glistmodel.h:36:1: note: in expansion of macro ‘G_DECLARE_INTERFACE’
G_DECLARE_INTERFACE(GListModel, g_list_model, G, LIST_MODEL, GObject)
^~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gio/glistmodel.h:36:33: note: declared here
G_DECLARE_INTERFACE(GListModel, g_list_model, G, LIST_MODEL, GObject)
^
/usr/include/glib-2.0/gobject/gtype.h:1565:9: note: in definition of macro ‘G_DECLARE_INTERFACE’
GType module_obj_name##_get_type (void); \
^~~~~~~~~~~~~~~
/usr/include/glib-2.0/gio/glistmodel.h: In function ‘GListModelInterface* G_LIST_MODEL_GET_IFACE(gpointer)’:
/usr/include/glib-2.0/gobject/gtype.h:1577:76: warning: ‘GType g_list_model_get_type()’ is deprecated: Not available before 2.44 [-Wdeprecated-declarations]
return G_TYPE_INSTANCE_GET_INTERFACE (ptr, module_obj_name##_get_type (), ModuleObjName##Interface); } \
^
/usr/include/glib-2.0/gobject/gtype.h:2234:103: note: in definition of macro ‘_G_TYPE_IGI’
#define _G_TYPE_IGI(ip, gt, ct) ((ct*) g_type_interface_peek (((GTypeInstance*) ip)->g_class, gt))
^~
/usr/include/glib-2.0/gobject/gtype.h:1577:12: note: in expansion of macro ‘G_TYPE_INSTANCE_GET_INTERFACE’
return G_TYPE_INSTANCE_GET_INTERFACE (ptr, module_obj_name##_get_type (), ModuleObjName##Interface); } \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gio/glistmodel.h:36:1: note: in expansion of macro ‘G_DECLARE_INTERFACE’
G_DECLARE_INTERFACE(GListModel, g_list_model, G, LIST_MODEL, GObject)
^~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gio/glistmodel.h:36:33: note: declared here
G_DECLARE_INTERFACE(GListModel, g_list_model, G, LIST_MODEL, GObject)
^
/usr/include/glib-2.0/gobject/gtype.h:1565:9: note: in definition of macro ‘G_DECLARE_INTERFACE’
GType module_obj_name##_get_type (void); \
^~~~~~~~~~~~~~~
/usr/include/glib-2.0/gio/gliststore.h: In function ‘GListStore* G_LIST_STORE(gpointer)’:
/usr/include/glib-2.0/gobject/gtype.h:1404:73: warning: ‘GType g_list_store_get_type()’ is deprecated: Not available before 2.44 [-Wdeprecated-declarations]
return G_TYPE_CHECK_INSTANCE_CAST (ptr, module_obj_name##_get_type (), ModuleObjName); } \
^
/usr/include/glib-2.0/gobject/gtype.h:2224:61: note: in definition of macro ‘_G_TYPE_CIC’
((ct*) g_type_check_instance_cast ((GTypeInstance*) ip, gt))
^~
/usr/include/glib-2.0/gobject/gtype.h:1404:12: note: in expansion of macro ‘G_TYPE_CHECK_INSTANCE_CAST’
return G_TYPE_CHECK_INSTANCE_CAST (ptr, module_obj_name##_get_type (), ModuleObjName); } \
^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gio/gliststore.h:36:1: note: in expansion of macro ‘G_DECLARE_FINAL_TYPE’
G_DECLARE_FINAL_TYPE(GListStore, g_list_store, G, LIST_STORE, GObject)
^~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gio/gliststore.h:36:34: note: declared here
G_DECLARE_FINAL_TYPE(GListStore, g_list_store, G, LIST_STORE, GObject)
^
/usr/include/glib-2.0/gobject/gtype.h:1396:9: note: in definition of macro ‘G_DECLARE_FINAL_TYPE’
GType module_obj_name##_get_type (void); \
^~~~~~~~~~~~~~~
/usr/include/glib-2.0/gio/gliststore.h: In function ‘gboolean G_IS_LIST_STORE(gpointer)’:
/usr/include/glib-2.0/gobject/gtype.h:1406:73: warning: ‘GType g_list_store_get_type()’ is deprecated: Not available before 2.44 [-Wdeprecated-declarations]
return G_TYPE_CHECK_INSTANCE_TYPE (ptr, module_obj_name##_get_type ()); } \
^
/usr/include/glib-2.0/gobject/gtype.h:2238:60: note: in definition of macro ‘_G_TYPE_CIT’
GTypeInstance *__inst = (GTypeInstance*) ip; GType __t = gt; gboolean __r; \
^~
/usr/include/glib-2.0/gobject/gtype.h:1406:12: note: in expansion of macro ‘G_TYPE_CHECK_INSTANCE_TYPE’
return G_TYPE_CHECK_INSTANCE_TYPE (ptr, module_obj_name##_get_type ()); } \
^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gio/gliststore.h:36:1: note: in expansion of macro ‘G_DECLARE_FINAL_TYPE’
G_DECLARE_FINAL_TYPE(GListStore, g_list_store, G, LIST_STORE, GObject)
^~~~~~~~~~~~~~~~~~~~
/usr/include/glib-2.0/gio/gliststore.h:36:34: note: declared here
G_DECLARE_FINAL_TYPE(GListStore, g_list_store, G, LIST_STORE, GObject)
^
/usr/include/glib-2.0/gobject/gtype.h:1396:9: note: in definition of macro ‘G_DECLARE_FINAL_TYPE’
GType module_obj_name##_get_type (void); \
^~~~~~~~~~~~~~~
/usr/include/gtk-3.0/gtk/gtknativedialog.h: In function ‘GtkNativeDialog* GTK_NATIVE_DIALOG(gpointer)’:
/usr/include/glib-2.0/gobject/gtype.h:1495:73: warning: ‘GType gtk_native_dialog_get_type()’ is deprecated: Not available before 3.20 [-Wdeprecated-declarations]
return G_TYPE_CHECK_INSTANCE_CAST (ptr, module_obj_name##_get_type (), ModuleObjName); } \
^
/usr/include/glib-2.0/gobject/gtype.h:2224:61: note: in definition of macro ‘_G_TYPE_CIC’
((ct*) g_type_check_instance_cast ((GTypeInstance*) ip, gt))
^~
/usr/include/glib-2.0/gobject/gtype.h:1495:12: note: in expansion of macro ‘G_TYPE_CHECK_INSTANCE_CAST’
return G_TYPE_CHECK_INSTANCE_CAST (ptr, module_obj_name##_get_type (), ModuleObjName); } \
^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/gtk-3.0/gtk/gtknativedialog.h:33:1: note: in expansion of macro ‘G_DECLARE_DERIVABLE_TYPE’
G_DECLARE_DERIVABLE_TYPE (GtkNativeDialog, gtk_native_dialog, GTK, NATIVE_DIALOG, GObject)
^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/gtk-3.0/gtk/gtknativedialog.h:33:44: note: declared here
G_DECLARE_DERIVABLE_TYPE (GtkNativeDialog, gtk_native_dialog, GTK, NATIVE_DIALOG, GObject)
^
/usr/include/glib-2.0/gobject/gtype.h:1486:9: note: in definition of macro ‘G_DECLARE_DERIVABLE_TYPE’
GType module_obj_name##_get_type (void); \
^~~~~~~~~~~~~~~
/usr/include/gtk-3.0/gtk/gtknativedialog.h: In function ‘GtkNativeDialogClass* GTK_NATIVE_DIALOG_CLASS(gpointer)’:
/usr/include/glib-2.0/gobject/gtype.h:1497:70: warning: ‘GType gtk_native_dialog_get_type()’ is deprecated: Not available before 3.20 [-Wdeprecated-declarations]
return G_TYPE_CHECK_CLASS_CAST (ptr, module_obj_name##_get_type (), ModuleObjName##Class); } \
^
/usr/include/glib-2.0/gobject/gtype.h:2226:55: note: in definition of macro ‘_G_TYPE_CCC’
((ct*) g_type_check_class_cast ((GTypeClass*) cp, gt))
^~
/usr/include/glib-2.0/gobject/gtype.h:1497:12: note: in expansion of macro ‘G_TYPE_CHECK_CLASS_CAST’
return G_TYPE_CHECK_CLASS_CAST (ptr, module_obj_name##_get_type (), ModuleObjName##Class); } \
^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/gtk-3.0/gtk/gtknativedialog.h:33:1: note: in expansion of macro ‘G_DECLARE_DERIVABLE_TYPE’
G_DECLARE_DERIVABLE_TYPE (GtkNativeDialog, gtk_native_dialog, GTK, NATIVE_DIALOG, GObject)
^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/gtk-3.0/gtk/gtknativedialog.h:33:44: note: declared here
G_DECLARE_DERIVABLE_TYPE (GtkNativeDialog, gtk_native_dialog, GTK, NATIVE_DIALOG, GObject)
^
/usr/include/glib-2.0/gobject/gtype.h:1486:9: note: in definition of macro ‘G_DECLARE_DERIVABLE_TYPE’
GType module_obj_name##_get_type (void); \
^~~~~~~~~~~~~~~
/usr/include/gtk-3.0/gtk/gtknativedialog.h: In function ‘gboolean GTK_IS_NATIVE_DIALOG(gpointer)’:
/usr/include/glib-2.0/gobject/gtype.h:1499:73: warning: ‘GType gtk_native_dialog_get_type()’ is deprecated: Not available before 3.20 [-Wdeprecated-declarations]
return G_TYPE_CHECK_INSTANCE_TYPE (ptr, module_obj_name##_get_type ()); } \
^
/usr/include/glib-2.0/gobject/gtype.h:2238:60: note: in definition of macro ‘_G_TYPE_CIT’
GTypeInstance *__inst = (GTypeInstance*) ip; GType __t = gt; gboolean __r; \
^~
/usr/include/glib-2.0/gobject/gtype.h:1499:12: note: in expansion of macro ‘G_TYPE_CHECK_INSTANCE_TYPE’
return G_TYPE_CHECK_INSTANCE_TYPE (ptr, module_obj_name##_get_type ()); } \
^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/gtk-3.0/gtk/gtknativedialog.h:33:1: note: in expansion of macro ‘G_DECLARE_DERIVABLE_TYPE’
G_DECLARE_DERIVABLE_TYPE (GtkNativeDialog, gtk_native_dialog, GTK, NATIVE_DIALOG, GObject)
^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/gtk-3.0/gtk/gtknativedialog.h:33:44: note: declared here
G_DECLARE_DERIVABLE_TYPE (GtkNativeDialog, gtk_native_dialog, GTK, NATIVE_DIALOG, GObject)
^
/usr/include/glib-2.0/gobject/gtype.h:1486:9: note: in definition of macro ‘G_DECLARE_DERIVABLE_TYPE’
GType module_obj_name##_get_type (void); \
^~~~~~~~~~~~~~~
/usr/include/gtk-3.0/gtk/gtknativedialog.h: In function ‘gboolean GTK_IS_NATIVE_DIALOG_CLASS(gpointer)’:
/usr/include/glib-2.0/gobject/gtype.h:1501:70: warning: ‘GType gtk_native_dialog_get_type()’ is deprecated: Not available before 3.20 [-Wdeprecated-declarations]
return G_TYPE_CHECK_CLASS_TYPE (ptr, module_obj_name##_get_type ()); } \
^
/usr/include/glib-2.0/gobject/gtype.h:2248:55: note: in definition of macro ‘_G_TYPE_CCT’
GTypeClass *__class = (GTypeClass*) cp; GType __t = gt; gboolean __r; \
^~
/usr/include/glib-2.0/gobject/gtype.h:1501:12: note: in expansion of macro ‘G_TYPE_CHECK_CLASS_TYPE’
return G_TYPE_CHECK_CLASS_TYPE (ptr, module_obj_name##_get_type ()); } \
^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/gtk-3.0/gtk/gtknativedialog.h:33:1: note: in expansion of macro ‘G_DECLARE_DERIVABLE_TYPE’
G_DECLARE_DERIVABLE_TYPE (GtkNativeDialog, gtk_native_dialog, GTK, NATIVE_DIALOG, GObject)
^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/gtk-3.0/gtk/gtknativedialog.h:33:44: note: declared here
G_DECLARE_DERIVABLE_TYPE (GtkNativeDialog, gtk_native_dialog, GTK, NATIVE_DIALOG, GObject)
^
/usr/include/glib-2.0/gobject/gtype.h:1486:9: note: in definition of macro ‘G_DECLARE_DERIVABLE_TYPE’
GType module_obj_name##_get_type (void); \
^~~~~~~~~~~~~~~
/usr/include/gtk-3.0/gtk/gtkfilechoosernative.h: In function ‘GtkFileChooserNative* GTK_FILE_CHOOSER_NATIVE(gpointer)’:
/usr/include/glib-2.0/gobject/gtype.h:1404:73: warning: ‘GType gtk_file_chooser_native_get_type()’ is deprecated: Not available before 3.20 [-Wdeprecated-declarations]
return G_TYPE_CHECK_INSTANCE_CAST (ptr, module_obj_name##_get_type (), ModuleObjName); } \
^
/usr/include/glib-2.0/gobject/gtype.h:2224:61: note: in definition of macro ‘_G_TYPE_CIC’
((ct*) g_type_check_instance_cast ((GTypeInstance*) ip, gt))
^~
/usr/include/glib-2.0/gobject/gtype.h:1404:12: note: in expansion of macro ‘G_TYPE_CHECK_INSTANCE_CAST’
return G_TYPE_CHECK_INSTANCE_CAST (ptr, module_obj_name##_get_type (), ModuleObjName); } \
^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/gtk-3.0/gtk/gtkfilechoosernative.h:34:1: note: in expansion of macro ‘G_DECLARE_FINAL_TYPE’
G_DECLARE_FINAL_TYPE (GtkFileChooserNative, gtk_file_chooser_native, GTK, FILE_CHOOSER_NATIVE, GtkNativeDialog)
^~~~~~~~~~~~~~~~~~~~
/usr/include/gtk-3.0/gtk/gtkfilechoosernative.h:34:45: note: declared here
G_DECLARE_FINAL_TYPE (GtkFileChooserNative, gtk_file_chooser_native, GTK, FILE_CHOOSER_NATIVE, GtkNativeDialog)
^
/usr/include/glib-2.0/gobject/gtype.h:1396:9: note: in definition of macro ‘G_DECLARE_FINAL_TYPE’
GType module_obj_name##_get_type (void); \
^~~~~~~~~~~~~~~
/usr/include/gtk-3.0/gtk/gtkfilechoosernative.h: In function ‘gboolean GTK_IS_FILE_CHOOSER_NATIVE(gpointer)’:
/usr/include/glib-2.0/gobject/gtype.h:1406:73: warning: ‘GType gtk_file_chooser_native_get_type()’ is deprecated: Not available before 3.20 [-Wdeprecated-declarations]
return G_TYPE_CHECK_INSTANCE_TYPE (ptr, module_obj_name##_get_type ()); } \
^
/usr/include/glib-2.0/gobject/gtype.h:2238:60: note: in definition of macro ‘_G_TYPE_CIT’
GTypeInstance *__inst = (GTypeInstance*) ip; GType __t = gt; gboolean __r; \
^~
/usr/include/glib-2.0/gobject/gtype.h:1406:12: note: in expansion of macro ‘G_TYPE_CHECK_INSTANCE_TYPE’
return G_TYPE_CHECK_INSTANCE_TYPE (ptr, module_obj_name##_get_type ()); } \
^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/gtk-3.0/gtk/gtkfilechoosernative.h:34:1: note: in expansion of macro ‘G_DECLARE_FINAL_TYPE’
G_DECLARE_FINAL_TYPE (GtkFileChooserNative, gtk_file_chooser_native, GTK, FILE_CHOOSER_NATIVE, GtkNativeDialog)
^~~~~~~~~~~~~~~~~~~~
/usr/include/gtk-3.0/gtk/gtkfilechoosernative.h:34:45: note: declared here
G_DECLARE_FINAL_TYPE (GtkFileChooserNative, gtk_file_chooser_native, GTK, FILE_CHOOSER_NATIVE, GtkNativeDialog)
^
/usr/include/glib-2.0/gobject/gtype.h:1396:9: note: in definition of macro ‘G_DECLARE_FINAL_TYPE’
GType module_obj_name##_get_type (void); \
^~~~~~~~~~~~~~~***** Fatal mx2cc error *****
Internal mx2cc build error
Oh wow, I’d love go see this running on Linux.
I see the gtk error. I’m pretty sure it has to do with not using the pkg-config compiler option, though I’m not familiar enough yet with M2 to fix this
I looked into the whole “shared library” executable problem.
The problem is not with Monkey, it’s with newer versions of GCC using the -pie option (PIE= Position Independent Executable, a newer security feature). Because of this, anything compiled with it will appear to Nautilus file manager as a shared library rather than an executable. I’ve read through tons of bug reports and complaints about the new behavior, and Nautilus devs don’t think it’s their job, the GCC devs don’t think it’s theirs, etc..
However, we can pass the -no-pie parameter to the linker to make “older style” executables. I did a quick test and it worked beautifully!
Monkey1234'LD optionsMX2_LD_OPTS_LINUX= -no-pieMX2_LD_OPTS_LINUX_DEBUG=MX2_LD_OPTS_LINUX_RELEASE=-s -O3I added -no-pie to the MX2_LDS_OPTS in bin/env_linux.txt than ran a rebuild2go
Now my executables launch as normal and even have the correct executable icon
Just used DruggedBunny’s posted script on Ubuntu 17.10.
Worked like a charm – full download and build all in about 15 minutes.
Some notes:
- All bananas run extremely (unusably) fast. Literally hundreds of FPS. Is this just because the examples aren’t using any kind of delta timing, or is something messed up on my end?
- As others have pointed out, the monkey (Linux) executable name cannot be launched by double click as it wants to be opened as a shared library. Is this something that can be changed with compiler flags? Also, the naming convention is quite strange and awkward, especially with spaces and parenthesis..
- I’ve been anxiously following this project from the beginning as a long time BBasic and BMax user (and Blitz Plus, and Monkey 1..). I have been donating via Patreon since Mark made the option available, but not because I have used it at all – just because I think it’s an important project. So this is my first go with the language. Very very nice!
Thanks for the information guys, I’m excited to get things fully set up to test out other targets
I’d love to have this feature too
I was going to wrap Linux v4l2 API but just haven’t had the chance. Native cross platform support would be great though, especially on mobile devices!
Why not allow either?
As long as documentation is good. I don’t see where the confusion would be. I know of no other paint or color program that deals with rgb data as floats, so to me this is a different kind of inconsistency. Quite actually I’d also like an overload for htmlcolor strings as well
Nevertheless. For my own needs I’ll just extend Color and add my own overloads- was just adding my opinion
I would like to see the New method overloaded for a more common convention of using 0-255 Ints while creating colors. Of course, floats would still be used internally, but for convenience I think this would be nice
Monkey12Method New( r:Int,g:Int,b:Int,a:Float=1 )Mark covered implementing Generators using Fibers and gives a few examples in his Feb 1st “Fun with fibers” blog post on the main page. It has all the info you need to make your own generators
-
AuthorPosts