pratnala
pratnala

Reputation: 3843

Newbie to makefiles. Want to understand some flags

I wanted to know what these flags mean in a makefile

-rpath
-soname
-cvq
-MD
2> and some code here

Upvotes: 0

Views: 251

Answers (2)

John
John

Reputation: 57

The -cvq is combined by three flags:

-c: Whenever an archive is created, an informational message to that effect is written to standard error.

If the -c option is specified, ar creates the archive silently.

-v: Provide verbose output.

-q: Quickly append the specified files to the archive. If the archive does not exist a new archive file is created.

See more info here: http://www.cs.dartmouth.edu/~campbell/cs50/buildlib.html

Upvotes: 1

umläute
umläute

Reputation: 31274

this is not at all related to make but rather to gcc/ld.

make is a meta-language, that allows you to automate build-processes. so most things you find within a makefile, usually refer to how you call compilers and linkers and other programs needed to build an application (or a library, or something else).

check the manpages (man gcc and man ld) to get information about specific flags for a given program.

e.g.

  • -rpath DIR: add DIR to runtime search path (ld)
  • -soname FILENAME: set shared library name (ld)
  • -cvq: i have no idea to program which these flags refer; most likely these are three flags -c -v -q, but who knows?
  • -MD: usually used to generate include-dependencies from a .c file (gcc)
  • 2>: this is no flag at all, but redirects stderr to somewhere else (e.g. to a file)

Upvotes: 1

Related Questions