I really didn\'t think it would be this difficult. Geany clearly has the ability to create projects, add files to the projects, compile the individual files, but then even a
Geany builds projects using external commands. This is flexible and allows the IDE to be language-agnostic, thus being able to build large and heterogeneous projects.
Regarding C++, it's very simple to create a basic Makefile (much simpler than the example above). Supose your project builds a program called "my_program", consists of the files my_program.cpp and bar.cpp, and links with the foo library. All you need is this:
LDLIBS += -lfoo
my_program: my_program.cpp bar.cpp
Save this with the name "Makefile" in the same directory of the sources.Now you have to create the Geany project proper, indicating that the base directory is where the code (and Makefile) are stored.
That's it! you can now compile you program with a keypress (shift+F9). For also running it with a key just enter your program name (my_program in the example) in the Geany's project properties.
Note that it's important that one of your source files has the same name as the target binary, otherwise you cannot user Make's implicit rules, wich complicates the Makefile a bit.