Re: [anjuta-list] Setting up the project



Jens et al,

On Fri, May 20, 2016 at 8:08 PM, Jens Mühlenhoff <j muehlenhoff gmx de> wrote:
Hello Igor,

Am 21.05.2016 um 01:15 schrieb Igor Korot:
Then I did "Build->Remove Configuration...". It failed because it couldn't find
src/Makefile. So I just went in the MyApp/Debug folder and deleted everything.
Next I tried to do "Build->Configure Project..." To my surprise it also failed
asking for src/Makefile.

Anjuta uses autoconf + automake (+ optionally libtool) as the primary build system.

The "configure.ac" file in the project root folder is the primary autoconf file.

The "Makefile.am" file in the project root folder is the primary automake file.

Both by default assume there is a "src/Makefile.am" (that will be processed by automake to 
"src/Makefile.in" and by autoconf / configure to "src/Makefile").

If you want to change the process you have to edit both "configure.ac" and "Makefile.am".

In your concrete case replace all the "src/" references by "MyApp" references.

For the record:

I fixed by changing also the "configure" script.

Thank you.



So, now my question is: is "src" folder hardcoded? Can I change the place
where the executable binary is located?

If I can how do I fix this?

The executable binary will be located at the same relative folder that your sources are sitting at.

For example if your primary source file is "/home/igor/MyApp/src/main.cpp" and you run "../configure" in 
"/home/igor/MyApp/Debug" a build with "make" will produce an object file in 
"/home/igor/MyApp/Debug/src/main.o" and an executable in i.e. "/home/igor/MyApp/Debug/src/MyApp".

At least that is what the default configuration from the Anjuta project template would do.

It really all depends on the "configure.ac" and "Makefile.am" files. You should read these files and 
understand them.

All that the GUI commands in the Anjuta menu actually do is calling command line commands like:

- autoreconf
- ./configure (or ../configure when run from a sub dir like "Debug" in my example)
- make clean
- make
- make dist-clean
- make dist
- (sudo) make install
- (sudo) make uinstall

Etc., see also https://www.gnu.org/software/make/manual/html_node/Goals

A good read is also this online book: 
http://www.freesoftwaremagazine.com/books/autotools_a_guide_to_autoconf_automake_libtool

--
Mit freundlichen Grüßen
Jens Mühlenhoff


_______________________________________________
anjuta-list mailing list
anjuta-list gnome org
https://mail.gnome.org/mailman/listinfo/anjuta-list



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]