Difference between revisions of "Configure"
Line 9: | Line 9: | ||
You can set lots of parameters in it to adapt it to your system and to tweak it's features. | You can set lots of parameters in it to adapt it to your system and to tweak it's features. | ||
− | '''NOTE:''' This article is focused in [[aMule]]'s ''configure''. Other ''configure'' scripts work in a similar way, but their options will differ. This article | + | '''NOTE:''' This article is focused in [[aMule]]'s ''configure''. Other ''configure'' scripts work in a similar way, but their options will differ. This article might be usefull for them as well, but have in mind that they might have options not listed here and lack some listed here too. |
== Main usage == | == Main usage == | ||
Line 25: | Line 25: | ||
=== Main options === | === Main options === | ||
− | This options should exist in any ''configure'' script around the world. | + | This options should exist in any ''configure'' script around the world. They won't run the ''configure'' script to configure your application's compilation, but only output information you might need. |
{| border=1 | {| border=1 | ||
Line 74: | Line 74: | ||
| ''--sysconfdir=DIR'' || Where to install read-only single-machine data. By default, '''''PREFIX'''/etc'' | | ''--sysconfdir=DIR'' || Where to install read-only single-machine data. By default, '''''PREFIX'''/etc'' | ||
|- | |- | ||
− | | ''--sharedstatedir=DIR'' || | + | | ''--sharedstatedir=DIR'' || Where to store modifiable architacture-independent data. By default '''''PREFIX'''/com'' |
|- | |- | ||
− | | ''--localstatedir=DIR'' || | + | | ''--localstatedir=DIR'' || Where to store modifiable single-machine data. By default, '''''PREFIX'''/var'' |
|- | |- | ||
− | | ''--libdir=DIR || | + | | ''--libdir=DIR || Where to search libs object code libraries. By default, '''''EPREFIX'''/lib'' |
|- | |- | ||
− | | ''--includedir=DIR'' || Directory containing the C header files. By default, '''''PREFIX'''''/include'' | + | | ''--includedir=DIR'' || Directory containing the [http://en.wikipedia.org/wiki/C_programming_language C] header files. By default, '''''PREFIX'''''/include'' |
|- | |- | ||
− | | ''--oldincludedir=DIR'' || Directory containing C header files for non-GCC. By default, ''/usr/include'' | + | | ''--oldincludedir=DIR'' || Directory containing [http://en.wikipedia.org/wiki/C_programming_language C] header files for non-GCC. By default, ''/usr/include'' |
|- | |- | ||
− | | ''--infodir=DIR'' ||Where to store info and documentation files. By default, '''''EPREFIX'''/info'' | + | | ''--infodir=DIR'' || Where to store info and documentation files. By default, '''''EPREFIX'''/info'' |
|- | |- | ||
| ''--mandir=DIR'' || Where to store man pages. By default, '''''EPREFIX'''/man | | ''--mandir=DIR'' || Where to store man pages. By default, '''''EPREFIX'''/man | ||
Line 95: | Line 95: | ||
| ''--PROGRAM-suffix=SUFFIX'' || Append '''SUFFIX''' to installed '''PROGRAM''' directories | | ''--PROGRAM-suffix=SUFFIX'' || Append '''SUFFIX''' to installed '''PROGRAM''' directories | ||
|- | |- | ||
− | | ''--PROGRAM-transform-name=SUBST'' || Run ''sed '''SUBST''''' on installed '''PROGRAM''' names | + | | ''--PROGRAM-transform-name=SUBST'' || Run ''[http://www.gnu.org/software/sed/sed.html sed] '''SUBST''''' on installed '''PROGRAM''' names |
|} | |} | ||
Line 131: | Line 131: | ||
{| border=1 | {| border=1 | ||
|+ Quite common compiler options | |+ Quite common compiler options | ||
− | | ''--with-gnu-ld'' || Use | + | | ''--with-gnu-ld'' || Use the [http://www.gnu.org/software/binutils/manual/ld-2.9.1/ld.html GNU ld] as linker, without testing if it is the default linker in the system |
|} | |} | ||
{| border=1 | {| border=1 | ||
|+ X directory specifications | |+ X directory specifications | ||
− | | ''--with-x'' || Use the X Window System | + | | ''--with-x'' || Use the [http://www.xfree86.org X Window System] |
|- | |- | ||
− | | ''--x-includes=DIR'' || '''DIR''' contains X's include files | + | | ''--x-includes=DIR'' || '''DIR''' contains [http://www.xfree86.org X]'s include files |
|- | |- | ||
− | | ''--x-libraries=DIR'' || '''DIR''' contains X's libraries | + | | ''--x-libraries=DIR'' || '''DIR''' contains [http://www.xfree86.org X]'s libraries |
|} | |} | ||
Line 347: | Line 347: | ||
| ''CC'' || C compiler command to use | | ''CC'' || C compiler command to use | ||
|- | |- | ||
− | | ''CXX'' || C++ compiler command to use (e.g. ''g++'') | + | | ''CXX'' || [http://en.wikipedia.org/wiki/C_Plus_Plus C++] compiler command to use (e.g. ''g++'') |
|- | |- | ||
− | | ''CPP'' || C preprocessor command to use | + | | ''CPP'' || [http://en.wikipedia.org/wiki/C_programming_language C] preprocessor command to use |
|- | |- | ||
− | | ''CFLAGS'' || C compiler flags | + | | ''CFLAGS'' || [http://en.wikipedia.org/wiki/C_programming_language C] compiler flags |
|- | |- | ||
− | | ''CXXCPP'' || C++ preprocessor command to use | + | | ''CXXCPP'' || [http://en.wikipedia.org/wiki/C_Plus_Plus C++] preprocessor command to use |
|- | |- | ||
− | | ''CXXFLAGS'' || C++ compiler flags | + | | ''CXXFLAGS'' || [http://en.wikipedia.org/wiki/C_Plus_Plus C++] compiler flags |
|- | |- | ||
| ''LDFLAGS'' || Linker flags. Usually used to specify additional library directories (e.g. ''LDFLAGS="-L/usr/lib"'') | | ''LDFLAGS'' || Linker flags. Usually used to specify additional library directories (e.g. ''LDFLAGS="-L/usr/lib"'') | ||
|- | |- | ||
− | | ''CPPFLAGS'' || C/C++ preprocessor flags (e.g. ''CPPFLAGS="-I/usr/include"'') | + | | ''CPPFLAGS'' || [http://en.wikipedia.org/wiki/C_programming_language C]/[http://en.wikipedia.org/wiki/C_Plus_Plus C++] preprocessor flags (e.g. ''CPPFLAGS="-I/usr/include"'') |
|} | |} | ||
Revision as of 09:41, 29 March 2005
Introductionconfigure configures aMule to adapt to many kinds of systems. Its purpose is to make it easy to port it to many platforms and to compile it and use it in all platforms in the very same way. You can set lots of parameters in it to adapt it to your system and to tweak it's features. NOTE: This article is focused in aMule's configure. Other configure scripts work in a similar way, but their options will differ. This article might be usefull for them as well, but have in mind that they might have options not listed here and lack some listed here too. Main usageIt's usage is ./configure [OPTION]... [VARIABLE=VALUE]... So, as you can see, you can define its behaviour both through options and through variables OptionsYou can define one or more options. The available options in aMule's configure are listed below. To better understand their meaning, they have been grouped into several tables with options which affect the behaviour of configure in a similar way. Please note that configure will (in most cases) not complain if you enter a non valid options or variables. So make sure you enter the options correctly (no typos) or they wil not only just do nothing, but also don't behave in the way you expected for taht specific options. Main optionsThis options should exist in any configure script around the world. They won't run the configure script to configure your application's compilation, but only output information you might need.
Non-compilation common optionsThis options should also exist on any configure script around the world. They will set some non-compilation related preferences.
Common optionsThis options should also exist on any configure script around the world. This time, this ones will affect the compilation of the application, so be careful when using them. You should take a close look at the application's README document (if available) if you want to use any of them (and even if you don't, still take a look at it, since you might have to use some).
Very-common optionsIn most configure scripts you will also be able to use this options.
aMule optionsThe following options are specific to aMule's configure script. They will allow you to enable and disable them, so you should really take a look at them or you might sadly find out you lack things you would like to have in you aMule system ;-)
aMule compilation settingsThis options are specific to aMule's configure script, but they are not directly related to aMule. They just tell were some libraries or headers are located in your system, so that aMule can find them when compiling. Use them if you have those files in non-standard paths or when you know what you are doing. To better understand this options, take a look at the common options chapter in this article.
VariablesBefore you take a look at the variables and what they mean, you must take a look at the two variable's usage types available. Usage typesYou can either use environmental variables or you can enter variables directly into the configure command. Environmental variablesIf you plan to use environmental variables, you will affect the behaviour of configure and any other program you run in that same shell untill you end your session. You must set them before running configure. To set them, run export VAR=VALUE' where VAR is the name of the environmental variable and VALUE is it's value. Configure variablesIf you don't want to use environmental variables, you can pass them into the configure command, this way: configure VAR=VALUE where VAR stands for the variable name and VALUE is its value. Variables and what they meanDo NOT touch this variables if you don't know what you are doing! This are some of the most commonly used environmental for configure:
More informationThis article is mainly an explanation (dummy-proof) of the output of configure --help. Anyway, it could (rarely) be out of date. So, if tehre's something you want to do with configure that is not listed here, run configure --help and see if it is listed there. Of course, you can always take a look at the GNU configure page. |