tldr/pages/common/make.md

38 lines
872 B
Markdown
Raw Normal View History

2016-01-04 10:23:09 +00:00
# make
> Task runner for targets described in Makefile.
2016-01-04 10:23:09 +00:00
> Mostly used to control the compilation of an executable from source code.
2020-10-27 13:30:07 +00:00
> More information: <https://www.gnu.org/software/make/manual/make.html>.
2016-01-04 10:23:09 +00:00
- Call the first target specified in the Makefile (usually named "all"):
2016-01-04 10:23:09 +00:00
`make`
- Call a specific target:
2016-01-04 10:23:09 +00:00
`make {{target}}`
2016-01-04 10:23:09 +00:00
2017-06-06 19:56:14 +01:00
- Call a specific target, executing 4 jobs at a time in parallel:
2018-09-03 13:26:46 +01:00
`make -j{{4}} {{target}}`
2017-06-06 19:56:14 +01:00
- Use a specific Makefile:
2016-01-04 10:23:09 +00:00
2022-12-04 09:12:49 +00:00
`make --file {{path/to/file}}`
2016-01-04 10:23:09 +00:00
- Execute make from another directory:
2016-01-04 10:23:09 +00:00
2022-12-04 09:12:49 +00:00
`make --directory {{path/to/directory}}`
2016-07-05 15:21:56 +01:00
- Force making of a target, even if source files are unchanged:
2016-07-05 15:21:56 +01:00
`make --always-make {{target}}`
- Override a variable defined in the Makefile:
`make {{target}} {{variable}}={{new_value}}`
- Override variables defined in the Makefile by the environment:
`make --environment-overrides {{target}}`