Questions tagged [make]

make is a utility that automates the build process by managing dependencies amongst targets.

Filter by
Sorted by
Tagged with
65
votes
8answers
47k views

Why can't gcc find libevent when building tmux from source?

I want to install tmux on a machine where I don't have root access. I already compiled libevent and installed it in $HOME/.bin-libevent and now I want to compile tmux, but configure always ends with ...
49
votes
4answers
38k views

What is the purpose of the 'install' command?

I've seen the install command used in a lot of Makefiles, and its existence and usage are kind of confusing. From the manpages, it seems like a knockoff of cp with less features, but I assume it ...
45
votes
1answer
100k views

make fatal error: openssl/sha.h: No such file or directory

I'm trying to compile a program that, according to the documentation, requires the "OpenSSL library". I have OpenSSL installed, and it's still giving me the error openssl/sha.h: No such file or ...
41
votes
1answer
4k views

How does this Makefile makes C program without even specifying a compiler?

I was using a Makefile from the book "Advanced Linux Programming (2001)" [code]. It was strange for me to see that GNU make does compile the code correctly, without even specifying a compiler in the ...
40
votes
9answers
47k views

jemalloc and other errors making redis on centos 6.4

I am setting up a new, dedicated, centos 6.4 system with redis. I have installed redis many times, but have never hit this issue (and have never been on centos 6.4 before). cd redis-2.6.16 sudo make ...
31
votes
10answers
5k views

Why are programs not distributed in compiled format?

But they give instructions like cd downloaded_program ./configure make install This creates the ELF that is needed, and probably some .so files. Why not put those inside a zip file for download, ...
29
votes
7answers
77k views

How do I change which version of Qt is used for qmake?

I feel like there should be a simple way of doing this, but my googlefu is failing so I'd really appreciate some info on how to switch (or even permanently change) which version of Qt is used when ...
27
votes
1answer
19k views

What happens in each step of the Linux kernel-building process?

I've read many tutorials about how to build custom kernels and boot Ubuntu using those kernels, and successfully followed the guides and booted custom kernels, but I have no understanding about what ...
26
votes
3answers
30k views

What are .in files?

Sometimes in the sources of projects I see "*.in" files. For example, a bunch of "Makefile.in"s. What are they for and/or what does the ".in" part mean? I assume that this has something to do with ...
26
votes
4answers
20k views

How to determine the maximum number to pass to make -j option?

I want to compile as fast as possible. Go figure. And would like to automate the choice of the number following the -j option. How can I programmatically choose that value, e.g. in a shell script? ...
23
votes
2answers
103k views

Where can I find a list of 'make' error codes?

I am trying to compile a program written in Fortran using make (I have a Makefile and, while in the directory containing the Makefile, I type the command $ make target, where "target" is a system-...
21
votes
5answers
21k views

Makefile include env file

I'm trying to include some env vars into a Makefile. The env file looks like: FOO=bar BAZ=quux Note there's no leading export to each env var. If I add the leading export and just include the env ...
20
votes
3answers
38k views

Don't stop make'ing if a command fails, but check exit status

I am trying to instruct GNU Make 3.81 to not stop if a command fails (so I prefix the command with -) but I also want to check the exit status on the next command and print a more informative message. ...
19
votes
3answers
8k views

Installing from source. How to resolve dependencies without destroying the package manager

Compiling and installing software is a pain and problem I cannot overcome. I just want to run down through my understanding of this process with someone more knowledgeable to clear my mind to get to ...
18
votes
2answers
39k views

Checking environment variables' value in Makefile

I have a Makefile target, in which I have to check the value of an environment variable. But, I don't get the exact syntax of it. Tried hard, but can't find it. Any help is appreciated. Environment ...
18
votes
4answers
10k views

Why people recommend the -j3 option for make when having a dual-core CPU?

In Gentoo Linux it is possible to set the MAKEOPTS variable in /etc/portage/make.conf to tell make how many jobs it should run in parallel when building packages. Since I have a dual-core CPU, I ...
18
votes
3answers
9k views

How to display dependencies given in a makefile as a tree?

Problem I want to see the dependencies for one or more targets of a makefile. So I am looking for a program that can parse makefiles and then will represent the dependencies in some tree-like format (...
17
votes
1answer
12k views

How to list all targets in make?

Let's say you have a project structure with lots of Makefiles and there is a top level Makefile that includes all the other. How can you list all the possible targets? I know writing make and ...
17
votes
2answers
34k views

How to include local header files in linux kernel module

Say I have a module mymod with source files as follows: src/mod/mymod.c src/inc/mymod.h I try to include mymod.h as follows #include <mymod.h> My makefile contains EXTRA_CFLAGS= -I$(...
16
votes
5answers
10k views

What could be causing make to hang when compiling on multiple cores?

Yesterday I was trying to compile the ROOT package from source. Since I was compiling it on a 6 core monster machine, I decided to go ahead and build using multiple cores using make -j 6. The ...
15
votes
3answers
48k views

Difference between “make install” and “sudo make install”

Sometimes I encounter problems with using make install which gives me a permission denied error when writing to some folders. So instinctively I use sudo make install. Will this introduce additional ...
14
votes
2answers
14k views

.PHONY all rules in GNU make file?

Am I wrong in my interpretation that I should basically just put first before all make rules: .PHONY: all of my rules all: echo "Executing all ..." of: echo "Executing of ..." my: echo ...
12
votes
1answer
26k views

How to fix “skipping incompatible /usr/lib/libc.a”

I get the following error when I try to build an embedded Linux target on a 64 bit Fedora 16 (Verne): make[3]: Entering directory `/export/home/git/minerva-5.x/third_party/multifiles' mips-linux-gnu-...
11
votes
4answers
8k views

Compare two kernel config files from the menuconfig perspective?

I have a situation in which i have two kernel config files (for the same kernel source ). Both of them have a part of the functionality that i need (on one, USB works correctly, on other, the second ...
11
votes
2answers
25k views

“No target” error using Make

I'm learning how to use make and makefiles, so I wrote this little file: %.markdown: %.html pandoc -o $< $@ But when I run make, all I get is make: *** No targets. Stop. What's going on?
11
votes
3answers
5k views

How does make continue compilation?

I know that I can interrupt a make process anytime without having to recompile the entire source tree again. As I know, make only compiles a target if it's not compiled yet, or the source code is ...
11
votes
4answers
8k views

how can a makefile detect whether a command is available in the local machine?

I began to use org-mode for planning out my tasks in GTD-style system. Putting every org files in a directory of a Dropbox folder, I run emacs to edit / manage these files from three different local ...
11
votes
1answer
25k views

GCC error trying to exec 'cc1'

I was cross-compiling a Linux kernel for my Raspberry Pi on a laptop (running debian 7) (followed the instructions here); but when I start compiling (make ARCH=arm CROSS_COMPILE=${CCPREFIX}), I get ...
10
votes
2answers
7k views

File function in makefile takes args prefixed by '@' symbol

This code excerpt is from Chapter 8.6 of GNU makefile manual. What does @$@.in for file function arg in a makefile mean? and why are shell commands like rm prefixed by '@' symbol program: $(OBJECTS) ...
9
votes
1answer
1k views

Process substitution in GNU Makefiles

On a bash prompt, one can execute diff using pseudo files: diff <(echo test) <(echo test) Adding this as is into a Makefile fails: all: diff <(echo test) <(echo test) The error ...
9
votes
2answers
6k views

Simulate the running of a “make install” — a “dry run”/simulator utility?

Is there a generic way of running a bash script and seeing the commands that result, but not actually run the commands - i.e. a "dry run"/simulator of sorts? I have a database install script (...
9
votes
2answers
11k views

What does % symbol in Makefile mean

I am playing around with makefiles and I came across %.o or %.c. From what I understood, it specify all c or o files. But why this work: %.o: %.c $(CC) -c $^ -o $@ and this doesn't work ...
9
votes
1answer
8k views

How to build a custom kernel with localmodconfig that support hardware of multiple machines?

When configuring a server to run a single task, like an appliance, there might rise the need to build a custom kernel. For example to save disk space. Ubuntu Core 13.10 amd64 root filesystem is a ...
9
votes
3answers
39k views

How do I fix “make: No rule to make target `config'”? [closed]

When I type make config in the terminal, the system responds with: make: *** No rule to make target `config'. Stop. Any idea how to fix that problem?
9
votes
1answer
2k views

Restricting GNU‑Make to POSIX Make behaviour

Is there a known way to make Linux's make reject unintended use of GNU‑Make specific extensions in Makefile when editing or using other's Makefile in Linux? I mean, restricting GNU‑Make to behave as ...
9
votes
1answer
456 views

Are there any CheckInstall side effects or should I use it every time?

I'm using Ubuntu at work and Slackware at home. Today at work I have downloaded some suspicious program from our company repository that was supposed to automate some repetitive tasks. I installed ...
8
votes
6answers
971 views

What are the advantages of using `make` for small projects? [closed]

I've seen that make is useful for large projects, especially with confusing dependencies described in a Makefile, and also helping with workflow.  I haven't heard any advantages for using make for ...
8
votes
5answers
47k views

Adding directory to PATH through Makefile

I'm having some trouble in exporting the PATH I've modified inside the Makefile into the current Terminal. I'm trying to add to the PATH, the bin folder inside wherever the Makefile directory is. ...
8
votes
2answers
24k views

Why current directory doesn't change in makefile?

I'm trying to run a simple script- clone a git repository into a certain directory, then cd to this directory in order to execute an installation script. This script is in a Makefile. But the cd ...
8
votes
3answers
45k views

make complains “missing separator (did you mean TAB?)”

While trying to install the som_pak-3.1-NAcMoS.tar.gz file, I've used the below commands: $ tar xvf som_pak-3.1-NAcMoS.tar.gz $ cd som_pak-3.1 $ cp makefile.unix makefile $ make $ cd .. $ ln -s ...
8
votes
2answers
4k views

Git commit from within a Makefile

I have a Makefile for a Latex project I'm working on. Makefiles aren't my forte, but is there a way to do something like: make git "My comment" And have the makefile execute: git commit -m "My ...
8
votes
3answers
7k views

Why do some packages use 'make install' while other use 'sudo make install'

I recently installed LAME encoder on my server to convert wav to mp3 and that worked with ./configure; make; make install. I then tried to install OGG encoder and that requires './configure, make, ...
8
votes
1answer
5k views

Use multi-threaded make by default?

Is there any way to have make use multi-threading (6 threads is ideal on my system) system-wide, instead of by just adding -j6 to the command line? So, that if I run make, it acts the same as if I ...
8
votes
2answers
2k views

Is `make -j` (with no argument) dangerous? [closed]

Earlier today when building something, I decided to run make as $ make -j perhaps out of habit with other programs such as cabal where -j defaults to a reasonable limit. About 20 seconds later, my ...
8
votes
1answer
7k views

Difference between make-kpkg and make deb-pkg

I would like to know the exact difference between make-kpkg and make deb-pkg . This question asks almost the same thing but with no satisfying answers. Previously I was using make -j `getconf ...
8
votes
2answers
9k views

Get top-level directory from makefile variable

What is the simplest code to get the top-level directory part of a makefile variable? Example: BUILD_DIR = dir/subdir/.../sub-a-dub-dir distclean: rm -rf <some code which evaluates to "dir"...
7
votes
2answers
4k views

Using wildcard in GNU Make pattern rule

Assume doc.pdf is the target. The following rule triggers a regeneration of doc.pdf whenever doc.refer is updated, but is also happy when doc.refer does not exist at all: doc.pdf: doc.mom $(wildcard ...
7
votes
1answer
2k views

Install dwb browser

I try to install dwb on debian wheezy. There is a package but the version is old and I would like a newer version. The version in wheezy does not provide dwbem, suddenly I can not install flaskblock ...
7
votes
1answer
1k views

Strange behavior automating with “make -f”

I have a set of directories, some of which contain makefiles, and some of the makefiles have clean targets. In the parent directory, I have a simple script: #!/bin/bash for f in *; do if [[ ...
7
votes
2answers
6k views

How to script make menuconfig to automate Linux kernel build configuration?

I want to automate a Linux build but eventually get to a point where I need to run what seems to be a very manual step: make menuconfig. This seems to synchronize configs between the OS and kernel ...