l i n u x - u s e r s - g r o u p - o f - d a v i s
Next Meeting:
July 7: Social gathering
Next Installfest:
Latest News:
Jun. 14: June LUGOD meeting cancelled
Page last updated:
2006 Jan 30 12:42

The following is an archive of a post made to our 'vox-tech mailing list' by one of its subscribers.

Report this post as spam:

(Enter your email address)
Re: [vox-tech] gcc easy question
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [vox-tech] gcc easy question

Jeff Newmiller wrote:
Alex Mandel wrote:
So I'm trying to learn how to compile things for distribution and had an easy question.
1. When I use gcc how do I tell it to output the files to a separate directory so that I have just the libraries and executables I need for distribution.
see the "-o" option for gcc.  Just specify a relative directory name as
part of the destination filename.
I guess what I'm confused about it that I'm running.
I know it uses gcc but I'm not calling it explicitly so I can' seem where to fit the -o option in.
Should I be using $gcc ?

2. Will it output only what I need or will there be a bunch of intermediate files too that I could skip for the distribution.
While is is possible to compile and link from source to executable
in one step, it isn't very common for medium to large-scale programs
because the all-in-one compilation slows the development cycle down.
For this reason, many makefile authors put in a "clean" virtual target
to delete temporary files.

You might find reading [1] and [2] helpful... in particular the link to
"Makefile Conventions" in the latter.

[1] http://en.wikipedia.org/wiki/Make
[2] http://www.gnu.org/software/make/

As you can see from the above commands, maybe it's not one step. I need the results of make to end up in a directory on its own. Right now I'm using a diff program to extract new files that didn't exist in the source files but this gets me a lot of files, a ton with the .lo extension and I'm not sure I need these for the one component I need to run.


vox-tech mailing list

LUGOD Group on LinkedIn
Sign up for LUGOD event announcements
Your email address:
LUGOD Group on Facebook
'Like' LUGOD on Facebook:

Hosting provided by:
Sunset Systems
Sunset Systems offers preconfigured Linux systems, remote system administration and custom software development.

LUGOD: Linux Users' Group of Davis
PO Box 2082, Davis, CA 95617
Contact Us

LUGOD is a 501(c)7 non-profit organization
based in Davis, California
and serving the Sacramento area.
"Linux" is a trademark of Linus Torvalds.

Sponsored in part by:
Sunset Systems
Who graciously hosts our website & mailing lists!