Le 21/09/2017 à 07:31, Matthew Brush a écrit :
On 2017-09-21 01:59 AM, sogal wrote:
[…] try geany-jedi-complete plugin [0] but install fails with the following output :
### g++ -c src/preferences.cpp -O2 -fPIC `pkg-config --cflags geany` -std=c++0x -I./geany-complete-core/include -o lib/src/preferences.o In file included from /usr/include/geany/editor.h:28:0, from /usr/include/geany/document.h:32, from /usr/include/geany/build.h:27, from /usr/include/geany/geanyplugin.h:37, from ./geany-complete-core/include/geanycc/cc_plugin.hpp:23, from ./geany-complete-core/include/geanycc/geanycc.hpp:25, from src/preferences.cpp:22: src/preferences.cpp: In member function ‘virtual GtkWidget* geanycc::PythonCompletionFramework::create_config_widget(GtkDialog*)’: /usr/include/geany/gtkcompat.h:81:11: error: invalid conversion from ‘gpointer {aka void*}’ to ‘GtkWidget* {aka _GtkWidget*}’ [-fpermissive] NULL) ^ /usr/include/geany/gtkcompat.h:83:3: note: in expansion of macro ‘compat_gtk_box_new’ compat_gtk_box_new(GTK_ORIENTATION_VERTICAL, (homogeneous), (spacing)) ^ src/preferences.cpp:122:24: note: in expansion of macro ‘gtk_vbox_new’ GtkWidget* vbox = gtk_vbox_new(FALSE, 5); ^ geany-complete-core/Makefile.core:39: recipe for target 'lib/src/preferences.o' failed make: *** [lib/src/preferences.o] Error 1 ###
OS : GNU/Linux openSUSE Leap 42.3 Geany : 1.29 (Gtk 3.20) Package geany-devel is installed as well as other plugin build-time dependencies.
[…]
C++ doesn't allow implicit cast from void* to other pointer type, so you have to cast it explicitly:
auto vbox = static_cast<GtkWidget*>(gtk_vbox_new(FALSE, 5));
Indeed, but the root cause is likely that the plugin was never tested with GTK3, which might suggest it might have some issues with it, or at least need some polishing.
Cheers, Colomban