[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: redirecting produced files
From: |
Ralf Wildenhues |
Subject: |
Re: redirecting produced files |
Date: |
Mon, 28 Aug 2006 09:55:09 +0200 |
User-agent: |
Mutt/1.5.12 (2006-08-10) |
Hello Isajha, Stefan,
* Stefan Puiu wrote on Mon, Aug 28, 2006 at 09:12:02AM CEST:
> On 8/26/06, Isajha <address@hidden> wrote:
> >
> >Makefile.am
> > bin_PROGRAMS = helloworldlinux client
> > helloworldlinux_SOURCES = ../../src/helloworldlinux/HelloWorldLinux.cpp
> > client_SOURCES = ../../src/client/MainLinux.cpp
This looks very suspicious. You should have the Makefile.am file in the
same directory (or directory tree) as the source files. So something
like
bin_PROGRAMS = helloworldlinux client
helloworldlinux_SOURCES = helloworldlinux/HelloWorldLinux.cpp
client_SOURCES = client/MainLinux.cpp
would look much better. And create the configure.ac file in that same
directory, too.
> >I do not want these files within the source directory nor in the directy
> >of the makefile - the executable should be in
Please get familiar with the GNU build concept of three different
directory trees: the source tree (the one where all the files are
which you write manually; usually at the top directory there is a
configure.ac file, and this tree has one or more Makefile.am files).
Tools like autoconf, automake, or autoreconf are run within this
source tree.
Then the build tree: that's a (possibly) different tree _from where_
you execute the configure script. This tree will hold for example
all Makefiles, and all files created by a compiler: object files,
libraries, programs. You can have several build trees for one
project at the same time.
Then the install tree: where programs and libraries (and possibly
more) will be copied to by
make install
The paths for the install tree are chosen by arguments to `configure',
for example --prefix, or --bindir. By default, installed files will
live below /usr/local.
Once you've grasped this concept, choose whether this:
> >"../../bin/[os]/[compiler]/[debug/release]"
should be a build tree or an install tree; it sounds like you want
the former.
The next Automake release will have an introductory chapter covering
this better than the current documentation does; but still, it has all
the gory details. And there's a nice tutorial:
http://www-src.lip6.fr/homepages/Alexandre.Duret-Lutz/autotools.html
Cheers,
Ralf