For this question i produced little example program without I got the following automake (and autoconf) code - the real code is made up of several static and dynamic libraries as well as several executables.
If you got a solution for me that might cause problems with debugging, linking, clean-up or anything else please mention it. I try to produce a non recursive makefile but im stuck already at the very beginning. Here the test program: Makefile.am bin_PROGRAMS = helloworldlinux client helloworldlinux_SOURCES = ../../src/helloworldlinux/HelloWorldLinux.cpp client_SOURCES = ../../src/client/MainLinux.cpp configure in. AC_INIT(test,0.1) AM_INIT_AUTOMAKE AC_PROG_CXX AC_PROG_INSTALL AC_OUTPUT(Makefile) The directory layout seems ok the file gets compiled and is linked - no errors. My problem is that the resulting executable (helloworldlinux in small letters) as well as the generated HelloWorldLinux.o (with capital letters) is located in the folder where the make file is. I do not want these files within the source directory nor in the directy of the makefile - the executable should be in "../../bin/[os]/[compiler]/[debug/release]" (an eventually produced static library in "../../lib/[os]/[compiler]/[debug/release]") and the intermediate files in "../../obj/[os]/[compiler]/[debug/release]") Now im stuck since 5 days and i just don't find any solution. I'd love to know how just to set the output directory and then perhaps the best way to accomplish the [os]/[compiler]/[debug/release] and so on. Perhaps im googling for the wrong terms and therefore can't find anything. Any help would be very welcome. Thanks in advance.