Well darn I wanted to try the latest version of Geany because of the updated plugins ... The version that Ubuntu provides is: 1.32.2
I first ran: sudo apt-get install gcc sudo apt-get install g++ sudo apt-get install make
The versions: gcc (Ubuntu 7.3.0-16ubuntu3) 7.3.0 g++ (Ubuntu 7.3.0-16ubuntu3) 7.3.0 GNU Make 4.1, Built for x86_64-pc-linux-gnu
Then I downloaded the file geany-1.33.tar.gz, extracted it and tried to to follow the instructions: ./configure fails with the following messages: configure: error: Package requirements (gtk+-2.0 >= 2.24 glib-2.0 >= 2.32 gio-2.0 >= 2.32 gmodule-no-export-2.0) were not met:
No package 'gtk+-2.0' found No package 'glib-2.0' found No package 'gio-2.0' found No package 'gmodule-no-export-2.0' found ======= I old, senile and incompetent so I do not know where to go from here.
[gtk2_installed.txt](https://github.com/geany/geany/files/2255388/gtk2_installed.txt)
You appear to be missing the development packages required to build Geany. Your Ubuntu separates dev and run packages.
You could try `apt-get build-dep geany`
I did and that added: chrpath intltool libatk-bridge2.0-dev libatspi2.0-dev libdbus-1-dev libdrm-dev libegl1-mesa-dev libepoxy-dev libglvnd-core-dev libglvnd-dev libgtk-3-dev libopengl0 libwayland-bin libwayland-dev libx11-xcb-dev libxcb-dri2-0-dev libxcb-dri3-dev libxcb-glx0-dev libxcb-present-dev libxcb-randr0-dev libxcb-shape0-dev libxcb-sync-dev libxcb-xfixes0-dev libxkbcommon-dev libxshmfence-dev libxtst-dev libxxf86vm-dev wayland-protocols x11proto-dri2-dev x11proto-gl-dev x11proto-record-dev x11proto-xf86vidmode-dev
I have also ran: sudo apt-get install libgtk2.0-dev sudo apt-get install libperl-dev sudo apt-get install libglib2.0-dev
I still get the same error.
one other little note: pkg-config --version 0.29.2
Can you run the Geany supplied by Ubuntu and post the line with GTK version from `Menu->Help->Debug Messages`
I will but I blew that VM away and will need to reload it. I am currently working on another approach that is showing promise (mama always said I was pigheaded):
### adapted from https://www.geany.org/Download/Git#nightly ####
# you need all of the following installed sudo apt-get install autoconf sudo apt-get install libtool sudo apt-get install make sudo apt-get install gettext sudo apt-get install pkg-config sudo apt-get install intltool sudo apt-get install gcc sudo apt-get install g++ sudo apt-get install glib2.0 sudo apt-get install gtk2.0 sudo apt-get install docutils-common sudo apt-get install git
cd ~/Downloads git clone git://github.com/geany/geany.git geany cd geany ./autogen.sh
# follow instructions in file named "INSTALL" # at this point you might wish to create a backup copy
./autogen.sh Make make check sudo make install
Ok, for your info, I suspect your problem is that Ubuntu is distributing a GTK3 version of Geany, so the dependencies are GTK3 and thats what `apt-get build-deps` checked for, but the source built defaults to GTK2 and so that is why it is whining about missing GTK2. You could try `--enable-gtk3` on configure to build the GTK3 version from source if the installed version is gtk3 (as indicated by the debug messages).
Well that worked and I now have a full working copy of geany 1.34 with all the plugins that will compile. Unfortunately the reason I was interested in geany was the debugger plugin and it is one of the several that will NOT compile. something to do with this I suspect: ... $ make Making all in src make[1]: Entering directory '/home/lewis/Downloads/geany-plugins/debugger/src' CC debugger_la-bptree.lo bptree.c: In function ‘on_hitscount_changed’: bptree.c:373:5: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation] if (oldcount != count) ^~ bptree.c:376:2: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’ gtk_tree_path_free(tree_path); ^~~~~~~~~~~~~~~~~~ CC debugger_la-breakpoint.lo CC debugger_la-breakpoints.lo CC debugger_la-btnpanel.lo CC debugger_la-callbacks.lo CC debugger_la-calltip.lo CC debugger_la-dbm_gdb.lo CC debugger_la-dconfig.lo dconfig.c: In function ‘saving_thread_func’: dconfig.c:314:2: warning: ‘g_cond_timed_wait’ is deprecated [-Wdeprecated-declarations] while (!g_cond_timed_wait(cond, change_config_mutex, &interval)); ^~~~~ In file included from /usr/include/glib-2.0/glib.h:108:0, from /usr/include/glib-2.0/glib/gprintf.h:21, from /usr/include/glib-2.0/glib/gstdio.h:22, from dconfig.c:30: /usr/include/glib-2.0/glib/deprecated/gthread.h:285:17: note: declared here gboolean g_cond_timed_wait (GCond *cond, ^~~~~~~~~~~~~~~~~ dconfig.c: In function ‘config_init’: dconfig.c:461:2: warning: ‘g_mutex_new’ is deprecated [-Wdeprecated-declarations] change_config_mutex = g_mutex_new(); ^~~~~~~~~~~~~~~~~~~ In file included from /usr/include/glib-2.0/glib.h:108:0, from /usr/include/glib-2.0/glib/gprintf.h:21, from /usr/include/glib-2.0/glib/gstdio.h:22, from dconfig.c:30: /usr/include/glib-2.0/glib/deprecated/gthread.h:277:17: note: declared here GMutex * g_mutex_new (void); ^~~~~~~~~~~ dconfig.c:462:2: warning: ‘g_cond_new’ is deprecated [-Wdeprecated-declarations] cond = g_cond_new(); ^~~~ In file included from /usr/include/glib-2.0/glib.h:108:0, from /usr/include/glib-2.0/glib/gprintf.h:21, from /usr/include/glib-2.0/glib/gstdio.h:22, from dconfig.c:30: /usr/include/glib-2.0/glib/deprecated/gthread.h:281:17: note: declared here GCond * g_cond_new (void); ^~~~~~~~~~ dconfig.c:463:2: warning: ‘g_thread_create’ is deprecated: Use 'g_thread_new' instead [-Wdeprecated-declarations] saving_thread = g_thread_create(saving_thread_func, NULL, TRUE, NULL); ^~~~~~~~~~~~~ In file included from /usr/include/glib-2.0/glib.h:108:0, from /usr/include/glib-2.0/glib/gprintf.h:21, from /usr/include/glib-2.0/glib/gstdio.h:22, from dconfig.c:30: /usr/include/glib-2.0/glib/deprecated/gthread.h:104:10: note: declared here GThread *g_thread_create (GThreadFunc func, ^~~~~~~~~~~~~~~ dconfig.c: In function ‘config_destroy’: dconfig.c:474:2: warning: ‘g_mutex_free’ is deprecated [-Wdeprecated-declarations] g_mutex_free(change_config_mutex); ^~~~~~~~~~~~ In file included from /usr/include/glib-2.0/glib.h:108:0, from /usr/include/glib-2.0/glib/gprintf.h:21, from /usr/include/glib-2.0/glib/gstdio.h:22, from dconfig.c:30: /usr/include/glib-2.0/glib/deprecated/gthread.h:279:17: note: declared here void g_mutex_free (GMutex *mutex); ^~~~~~~~~~~~ dconfig.c:475:2: warning: ‘g_cond_free’ is deprecated [-Wdeprecated-declarations] g_cond_free(cond); ^~~~~~~~~~~ In file included from /usr/include/glib-2.0/glib.h:108:0, from /usr/include/glib-2.0/glib/gprintf.h:21, from /usr/include/glib-2.0/glib/gstdio.h:22, from dconfig.c:30: /usr/include/glib-2.0/glib/deprecated/gthread.h:283:17: note: declared here void g_cond_free (GCond *cond); ^~~~~~~~~~~ CC debugger_la-debug.lo debug.c:53:10: fatal error: vte/vte.h: No such file or directory #include <vte/vte.h> ^~~~~~~~~~~ compilation terminated. Makefile:1032: recipe for target 'debugger_la-debug.lo' failed make[1]: *** [debugger_la-debug.lo] Error 1 make[1]: Leaving directory '/home/lewis/Downloads/geany-plugins/debugger/src' Makefile:583: recipe for target 'all-recursive' failed make: *** [all-recursive] Error 1 $ ... By the way there are a LOT of plugins that do not compile: ... geany-plugins-1.34
Build Environment: Geany version: 1.34 (GTK2) Install prefix: /usr/local Datadir: /usr/local/share/geany-plugins Libdir: /usr/local/lib/geany-plugins Docdir: /usr/local/share/doc/geany-plugins Plugins path: /usr/local/lib/geany
Build Features: Unit tests: no Static code checking: no Extra C compiler warnings: yes Extra linker options: yes
Plugins: Addons: yes Autoclose: yes Automark: yes CodeNav: yes Commander: yes Debugger: no Defineformat: yes DevHelp: no GeanyCtags: yes GeanyDoc: yes GeanyExtraSel: yes GeanyGenDoc: no GeanyInsertNum: yes LaTeX: yes GeanyLua: no GeanyMacro: yes GeanyMiniScript: yes GeanyNumberedBookmarks: yes GeanyPrj: yes Geanypy: no GeanyVC: yes GeanyPG: no GeniusPaste: no GitChangeBar: no keyrecord: yes LineOperations: yes Lipsum: yes Markdown: no MultiTerm: no Overview: yes PairTagHighlighter: yes PoHelper: yes Pretty Printer: no ProjectOrganizer: yes Scope: no Sendmail: yes ShiftColumn: yes Spellcheck: no TreeBrowser: yes Tableconvert: yes Updatechecker: no Vimode: yes WebHelper: no Workbench: yes XMLSnippets: yes
Features: GeanyVC GtkSpell support: no Markdown library: peg-markdown Utility library: yes ...
What exactly was the "that" that worked?
Note that plugins issues is [here](https://github.com/geany/geany-plugins). (Each plugin is maintained by individuals, only a few of whom are Geany team members and so may not be watching here).
Plugins have their own build dependency requirements in addition to Geany ones, you need to read the docs for each plugin, thats usually why they don't configure. The debugger plugin is missing the VTE dev package according to the compile error.
I'm also interested in why it even tried to build debugger when the configure said "no". A problem for the plugins maintainer or debuggers maintainer I guess.
**What exactly was the "that" that worked?**
See the message above: "I am currently working on another approach that is showing promise" I started with a fairly clean virtual machine image _(gcc, g++ and make were already installed)_ and loaded the software as listed. Then I got the latest files from git huh and went through autogen.sh, etc. By the way, by the time I am done that adds about 500 MBytes to my file system --- lightweight ???
**I'm also interested in why it even tried to build debugger when the configure said "no".** Because I ran make in its subdirectory to determine if it was a minor problem that I could address. It was not.
**Can you run the Geany supplied by Ubuntu and post the line with GTK version from Menu->Help-Debug Messages** OK ... I started with another clean virtual machine image and used synaptic package manager to install geany geany-plugins ``` 00:56:19: Geany INFO : Creating configuration directory 00:56:19: Geany INFO : Geany 1.32, en_US.UTF-8 00:56:19: Geany INFO : GTK 3.22.30, GLib 2.56.1 00:56:19: Geany INFO : System data dir: /usr/share/geany 00:56:19: Geany INFO : User config dir: /home/lewis/.config/geany 00:56:19: Geany INFO : System plugin path: /usr/lib/x86_64-linux-gnu/geany 00:56:19: Geany INFO : No user config file found, trying to use global configuration. 00:56:19: Geany INFO : Added filetype Graphviz (61). 00:56:19: Geany INFO : Added filetype Arduino (62). 00:56:19: Geany INFO : Added filetype JSON (63). 00:56:19: Geany INFO : Added filetype CUDA (64). 00:56:19: Geany INFO : Added filetype Cython (65). 00:56:19: Geany INFO : Added filetype Scala (66). 00:56:19: Geany INFO : Added filetype Clojure (67). 00:56:19: Geany INFO : Added filetype Genie (68). 00:56:19: Geany INFO : Loaded libvte from libvte-2.91.so.0 00:56:19: Geany INFO : unknown : None (UTF-8) 00:56:19: (null) DEBUG : Name com.canonical.AppMenu.Registrar does not exist on the session bus
``` You are correct: GTK 3.22.30
**You could try --enable-gtk3 on configure to build the GTK3 version from source if the installed version is gtk3 (as indicated by the debug messages).** I am not sure exactly what you mean. should the command be "./configure --enable-gtk3" ? OK .. I started with another clean virtual machine image and copied the file geany-1.3.3.tar.gz to ~/Downloads. The folder geany-1.33 was extracted to the same directory. I opened a terminal window in that directory.
``` cd /home/lewis/Downloads/geany-1.33 ./configure --enable-gtk3
``` no joy So I tried
``` sudo apt-get install GTK3.0 ./configure --enable-gtk3 ``` Now the error message is: ``` configure: error: Package requirements (gtk+-3.0 >= 3.0 glib-2.0 >= 2.32 gio-2.0 >= 2.32 gmodule-no-export-2.0) were not met:
No package 'gtk+-3.0' found No package 'glib-2.0' found No package 'gio-2.0' found No package 'gmodule-no-export-2.0' found ``` One more time
``` sudo apt-get install glib2.0 sudo apt-get install gtk2.0 ./configure --enable-gtk3 ```
and the error is: ``` checking for gtk+-3.0 >= 3.0 glib-2.0 >= 2.32 gio-2.0 >= 2.32 gmodule-no-export-2.0... no configure: error: Package requirements (gtk+-3.0 >= 3.0 glib-2.0 >= 2.32 gio-2.0 >= 2.32 gmodule-no-export-2.0) were not met:
No package 'gtk+-3.0' found
``` I am going to blow that image away and surender.
500 MBytes to my file system --- lightweight ???
Those are things required for **development** we never said that was lightweight :wink:
The Geany and Geany-common runtime packages are <11Mb according to synaptic, thats lightweight.
configure: error: Package requirements (gtk+-3.0 >= 3.0 glib-2.0 >= 2.32 gio-2.0 >= 2.32 gmodule-no-export-2.0) were not met:
You did remember to run `apt-get build-deps geany` again on this new VM? Remember you need development packages to build against those libraries, even if the runtime is already installed.
sudo apt-get install gtk2.0 ./configure --enable-gtk3
Ummmm, you installed GTK2 then enabled GTK3 :grin:
And as I said above, you need the -dev packages to compile against, not just the runtime packages.
00:56:19: Geany INFO : GTK 3.22.30, GLib 2.56.1
Yeah, the Ubuntu standard is GTK3 as suspected.
**You did remember to run apt-get build-deps geany again** The answer to that would be a negative. So I started over ... again . The attached text file has complete instructions that do work (I ran through it twice to be certain). The instructions as given on the webpage: https://www.geany.org/Download/Git#nightly are wee bit sparse.
One interesting thing to note is when ones runs "sudo apt-get build-deps geany-plugins", it decides it needs to download two files from the previous version of geany (1.32): ``` Get:1 http://us.archive.ubuntu.com/ubuntu bionic/universe amd64 geany-common all 1.32-2 [1,816 kB] Get:2 http://us.archive.ubuntu.com/ubuntu bionic/universe amd64 geany amd64 1.32-2 [1,033 kB]
``` Anyway I have a new virtual machine image named "BuildGeany" that has all the autotools and dependencies installed on it. Now all I have to do is wait for someone to fix the debugger plugin. Then I can rebuild everything and work on figuring out how to turn it into a deb package. ``` =========================================================== 05:10:20: Geany INFO : Geany 1.34 (git >= 0c658c6a), en_US.UTF-8 05:10:20: Geany INFO : GTK 3.22.30, GLib 2.56.1 05:10:20: Geany INFO : System data dir: /usr/local/share/geany 05:10:20: Geany INFO : User config dir: /home/lewis/.config/geany 05:10:20: Geany INFO : Loaded GTK+ CSS theme '/usr/local/share/geany/geany.css' 05:10:20: Geany INFO : Loaded GTK+ CSS theme '/usr/local/share/geany/geany-3.20.css' 05:10:20: Geany INFO : System plugin path: /usr/local/lib/geany 05:10:20: Geany INFO : Added filetype Graphviz (61). 05:10:20: Geany INFO : Added filetype Arduino (62). 05:10:20: Geany INFO : Added filetype JSON (63). 05:10:20: Geany INFO : Added filetype CUDA (64). 05:10:20: Geany INFO : Added filetype Cython (65). 05:10:20: Geany INFO : Added filetype Scala (66). 05:10:20: Geany INFO : Added filetype Clojure (67). 05:10:20: Geany INFO : Added filetype Genie (68). 05:10:21: Geany INFO : Loaded libvte from libvte-2.91.so.0 05:10:21: Geany INFO : unknown : None (UTF-8) 05:10:21: (null) DEBUG : Name com.canonical.AppMenu.Registrar does not exist on the session bus ===========================================================
```
[BuildGeanyInstructions.txt](https://github.com/geany/geany/files/2257078/BuildGeanyInstructions.txt)
Now all I have to do is wait for someone to fix the debugger plugin.
Work is progressing https://github.com/geany/geany-plugins/pull/645
I use Xubuntu 18.04 x64 and GTK2-version 1.33, [geany-1.33-18.04-gtk2](https://www99.zippyshare.com/v/91mAk4AC/file.html): deb-files and all needed files to build deb
build/geany_1.33-1ubuntu1.dsc build/geany_1.33-1ubuntu1.debian.tar.xz build/geany-plugins_1.33+dfsg-1ubuntu1.dsc build/geany-plugins_1.33+dfsg-1ubuntu1.debian.tar.xz
But one moment: I use [this PR](https://github.com/geany/geany/pull/1752).
For portable use from ```$HOME/geany``` with config directory ```$HOME/geany/config```: ```sh #!/bin/sh
export LD_LIBRARY_PATH=${HOME}/geany/lib:${HOME}/geany/lib/x86_64-linux-gnu:${LD_LIBRARY_PATH} export XDG_DATA_DIRS=${HOME}/geany/share:${XDG_DATA_DIRS} export GSETTINGS_SCHEMA_DIR=${HOME}/geany/share/glib-2.0/schemas:${GSETTINGS_SCHEMA_DIR} exec ${HOME}/geany/bin/geany --config=${HOME}/geany/config "$@" ```
try install pkg-config libperl-dev libgtk2.0-dev
Closing since the original issue is resolved.
Closed #1916.
github-comments@lists.geany.org