Unix & Linux Stack Exchange
Q&A for users of Linux, FreeBSD and other Unix-like operating systems
Latest Questions
2
votes
2
answers
2165
views
GNU autotools configure autoreconf
I have a question when working with autotools, specifically when working with generating configure scripts by running autoreconf -fi I'll get these warnings: libtoolize: putting auxiliary files in '.'. libtoolize: copying file './ltmain.sh' libtoolize: Consider adding 'AC_CONFIG_MACRO_DIRS([m4])' to...
I have a question when working with autotools, specifically when working with generating configure scripts by running
autoreconf -fi
I'll get these warnings:
libtoolize: putting auxiliary files in '.'.
libtoolize: copying file './ltmain.sh'
libtoolize: Consider adding 'AC_CONFIG_MACRO_DIRS([m4])' to configure.ac,
libtoolize: and rerunning libtoolize and aclocal.
libtoolize: Consider adding '-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
configure.ac:12: installing './compile'
configure.ac:15: installing './config.guess'
configure.ac:15: installing './config.sub'
configure.ac:6: installing './install-sh'
configure.ac:6: installing './missing'
Makefile.am: installing './INSTALL'
src/Makefile.am:5: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
src/Makefile.am: installing './depcomp'
src/filteropt/Makefile.am:3: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
src/memory/Makefile.am:3: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
src/pagemanager/Makefile.am:3: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
src/raster/Makefile.am:5: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
src/raster/blendSource/Makefile.am:3: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
After this I can manually go through and change INCLUDES to AM_CPPFLAGS as well as adding -I m4 but shouldn't I be able to update the configure files so that I do not get these warnings?
Where would I make those edits so that I can avoid these warnings?
user1610950
(829 rep)
Jul 8, 2017, 10:27 AM
• Last activity: Jun 15, 2025, 04:01 AM
2
votes
1
answers
1488
views
Using autoreconf without root rights on a prefix path results in a corrupted configure-script
I am trying to compile a package (libdrm-2.4.59) and to use `sed` and `autoreconf` to remove a dependency: sed -e "/pthread-stubs/d" -i configure.ac && autoreconf -fiv It produces the following output: autoreconf: Entering directory `.' autoreconf: configure.ac: not using Gettext autoreconf: running...
I am trying to compile a package (libdrm-2.4.59) and to use
sed
and autoreconf
to remove a dependency:
sed -e "/pthread-stubs/d" -i configure.ac &&
autoreconf -fiv
It produces the following output:
autoreconf: Entering directory `.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal -I /u/f0/students/estermad/tmp/share/aclocal --force -I m4 ${ACLOCAL_FLAGS}
autoreconf: configure.ac: tracing
autoreconf: running: libtoolize --install --copy --force
libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, 'build-aux'.
libtoolize: copying file 'build-aux/config.guess'
libtoolize: copying file 'build-aux/config.sub'
libtoolize: copying file 'build-aux/install-sh'
libtoolize: copying file 'build-aux/ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'.
libtoolize: copying file 'm4/libtool.m4'
libtoolize: You should add the contents of 'm4/libtool.m4' to 'aclocal.m4'.
libtoolize: copying file 'm4/ltoptions.m4'
libtoolize: You should add the contents of 'm4/ltoptions.m4' to 'aclocal.m4'.
libtoolize: copying file 'm4/ltsugar.m4'
libtoolize: You should add the contents of 'm4/ltsugar.m4' to 'aclocal.m4'.
libtoolize: copying file 'm4/ltversion.m4'
libtoolize: copying file 'm4/lt~obsolete.m4'
libtoolize: You should add the contents of 'm4/lt~obsolete.m4' to 'aclocal.m4'.
autoreconf: running: /usr/bin/autoconf --force
autoreconf: running: /usr/bin/autoheader --force
autoreconf: running: automake --add-missing --copy --force-missing
configure.ac:32: installing `build-aux/missing'
exynos/Makefile.am: installing `build-aux/depcomp'
autoreconf: Leaving directory `.'
This looks fine so far but as I call configure
the build stops with a strange error:
...
checking for pkg-config... /u/f0/students/estermad/tmp/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for PCIACCESS... configure: error: in `/u/f0/students/estermad/xc/libdrm-2.4.59':
configure: error: The pkg-config script could not be found or is too old. Make sure it
is in your PATH or set the PKG_CONFIG environment variable to the full
path to pkg-config.
...
Here are some parts of the config.log
which show the error, the corresponding compiler and linker flags which were set correctly and the values related to pkg-config
which are not set:
configure:12927: checking for PCIACCESS
configure:12932: $PKG_CONFIG --exists --print-errors "pciaccess >= 0.10"
configure:12935: $? = 0
configure:12945: $PKG_CONFIG --exists --print-errors "pciaccess >= 0.10"
configure:12948: $? = 0
configure:12970: error: in `/u/f0/students/estermad/xc/libdrm-2.4.59':
...
ac_cv_env_PCIACCESS_CFLAGS_set=set
ac_cv_env_PCIACCESS_CFLAGS_value=-I/u/f0/students/estermad/tmp/include
ac_cv_env_PCIACCESS_LIBS_set=set
ac_cv_env_PCIACCESS_LIBS_value='-L/u/f0/students/estermad/tmp/lib -lpciaccess'
ac_cv_env_PKG_CONFIG_set=
ac_cv_env_PKG_CONFIG_value=
The autoreconf
uses libtoolize
which was missing on my system so I had to build libtool
myself. All builds I do on this system have a prefix. The prefix used to build dependencies of libdrm
among other things. For libtool
I ran following:
$ cd libtool-2.4.5
$ ./configure --prefix=/u/f0/students/estermad/tmp && make && make install
$ libtool --finish /u/f0/students/estermad/tmp/lib
However the build and install of the libtool runs without any errors. I have no idea if the resulting configure
-script is corrupted due to autoreconf
(located in /usr/bin/autoreconf), libtoolize
(located in /u/f0/students/estermad/tmp/bin), aclocal
or something different.
I tried to build libdrm
without using autoreconf
, commenting out pthread-stubs
manually. The build ran fine. Hence the above stated issue reveals only after running autoreconf
. I would really appreciate some useful hints.
Danny Lo
(129 rep)
Feb 3, 2015, 11:07 AM
• Last activity: Jan 12, 2022, 09:04 PM
7
votes
2
answers
2158
views
./configure : Show all missing packages at once
I have compiled a package that uses autotools as build system (`autoreconf`, `./configure`, `make`, `make install`). `./configure` stops when a package is missing. For each missing package, I look up its name, then either I do `apt install package` or I compile it from source if not available. Then...
I have compiled a package that uses autotools as build system (
autoreconf
, ./configure
, make
, make install
).
./configure
stops when a package is missing.
For each missing package, I look up its name, then either I do apt install package
or I compile it from source if not available.
Then I run ./configure
again and it tells me the name of another unsatisfied dependency.
If there are only one or two missing packages, this is ok. But there were 19!
libmspack-dev
libglib2.0-dev
libpam0g-dev
libssl-dev
libxml2-dev
libxmlsec1-dev
libx11-dev
libcunit1-dev
libxext-dev
libxinerama-dev
libxi-dev
libxrender-dev
libxrandr-dev
libxtst-dev
libgdk-pixbuf2.0-dev
libgtk-3-dev
libgtkmm-3.0-dev
libtool
dnet
I would like ./configure
to continue on error, and show me all missing packages at once, so I can install them all at once. Otherwise it is long and painful to run ./configure
and apt install
19 times.
Bilow
(654 rep)
Jul 27, 2018, 08:24 AM
• Last activity: Jul 27, 2018, 06:21 PM
16
votes
2
answers
21546
views
configure.ac: not using gettext
I am trying to compile a gnome application and I am curious what the output means when I run the `autogen.sh` script: ~/Documents/Code/window-picker-applet $./autogen.sh autoreconf: Entering directory `.' autoreconf: configure.ac: not using Gettext autoreconf: running: aclocal autoreconf: configure....
I am trying to compile a gnome application and I am curious what the output means when I run the
autogen.sh
script:
~/Documents/Code/window-picker-applet $./autogen.sh
autoreconf: Entering directory `.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal
autoreconf: configure.ac: tracing
autoreconf: running: libtoolize --install --copy
libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
autoreconf: running: /usr/bin/autoconf
autoreconf: running: /usr/bin/autoheader
autoreconf: running: automake --add-missing --copy --no-force
data/Makefile.am:11: `%'-style pattern rules are a GNU make extension
data/Makefile.am:11: wildcard $(top_srcdir: non-POSIX variable name
data/Makefile.am:11: (probably a GNU make extension)
autoreconf: Leaving directory `.'
[Output trunkated...]
Why am I getting the info configure.ac: not using Gettext
? Is that a warning and should I change some of the configuration files to fix it? I know the application has a po/
folder so I think it should be using Gettext, hence I am confused about this warning.
I also had a lot of warnings with the N_
macro not being defined, so this might be related? **[Update]** See comment below **[/Update]**
lanoxx
(1038 rep)
Feb 3, 2012, 02:29 PM
• Last activity: Jul 16, 2017, 03:57 PM
1
votes
1
answers
1955
views
Differences between building from git clone and downloaded zip
I'm trying to build the [xcb-util-xrm][1] library manually. I found two links with build instructions one from the [issue tracker][2] of `i3gaps` and one from this bug report [here][3]. The instructions in the first link are from 2016, in summary git clone https://github.com/Airblader/xcb-util-xrm c...
I'm trying to build the xcb-util-xrm library manually. I found two links with build instructions one from the issue tracker of
i3gaps
and one from this bug report here .
The instructions in the first link are from 2016, in summary
git clone https://github.com/Airblader/xcb-util-xrm
cd xcb-util-xrm
git submodule update --init
./autogen.sh --prefix=/usr
make
sudo make install
Instructions in the second link are from 2013:
> 1) Add LT_INIT to configure.ac
> 2) Make autogen.sh do "rm -rf m4; git submodule update --init"
My question is, how can I build this library under ubuntu 16.04.1 if I only downloaded and extracted the zip file from git hub ?
What I did so far, I added LT_INIT
to configure.ac
. Then I ran the following command twice, one time with prefix option and once without. Both times I end up with the same result:
$ ./autogen.sh --prefix=/usr
autoreconf: Entering directory `.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal -I m4
autoreconf: configure.ac: tracing
autoreconf: running: libtoolize --copy
autoreconf: running: /usr/bin/autoconf
autoreconf: configure.ac: not using Autoheader
autoreconf: running: automake --add-missing --copy --no-force
Makefile.am:35: error: 'pkgconfig_DATA' is used but 'pkgconfigdir' is undefined
Makefile.am:26: error: 'xcbinclude_HEADERS' is used but 'xcbincludedir' is undefined
autoreconf: automake failed with exit status: 1
My next investigation was to open autogen.sh
(you can see the content of the file on git hub). This file contains two major commands and the first one autoreconf -v --install || exit 1
returns the whole error stack above.
My problem is I don't know how to solve the error:
> Makefile.am:35: error: 'pkgconfig_DATA' is used but 'pkgconfigdir' is
> undefined
I just opened Makefile.am
and found the line 35 pkgconfig_DATA = xcb-xrm.pc
. And I checked what's the default path for my pkg-config
, but till now I have no clue how and where I can define pkgconfigdir
.
$pkg-config --variable pc_path pkg-config
/usr/local/lib/x86_64-linux-gnu/pkgconfig:/usr/local/lib/pkgconfig:/usr/local/share/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig:/usr/lib/pkgconfig:/usr/share/pkgconfig
Murmulodi
(1226 rep)
Jan 20, 2017, 09:13 PM
• Last activity: Jan 20, 2017, 09:26 PM
6
votes
2
answers
2005
views
How to prevent automake from overwriting INSTALL?
I'm working on a project that has a custom `INSTALL` file. Running `automake --add-missing` (or more precisely, `autoreconf -i`) will generate the GNU default `INSTALL` file, and overwrite our file with it. How can I prevent this behavior? I want it to either not generate the GNU `INSTALL` file at a...
I'm working on a project that has a custom
INSTALL
file. Running automake --add-missing
(or more precisely, autoreconf -i
) will generate the GNU default INSTALL
file, and overwrite our file with it.
How can I prevent this behavior? I want it to either not generate the GNU INSTALL
file at all, or alternatively, create it with a different name.
Also, I don't want to disable any other files that automake
might generate.
---
**Edit 1:** From the [automake
manual](https://www.gnu.org/software/automake/manual/html_node/Gnits.html) :
> If the --add-missing
option is given, automake
will add a generic
> version of the INSTALL
file as well as the COPYING
file containing the
> text of the current version of the GNU General Public License [...]. However, an existing COPYING
> file will never be overwritten by automake
.
It says that an existing COPYING
file will not be overwritten, but doesn't say anything about the INSTALL
file, so it seems like it will be unconditionally overwritten.
**Edit 2:** As requested, here are my configure.ac
and Makefile.am
, and also autogen.sh
that we run to autoreconf
the project:
configure.ac
:
AC_INIT([program name], [version number], [bug report], [short name], [url])
AC_CONFIG_SRCDIR([Main/Source/main.cpp])
AM_PROG_AS
AC_CANONICAL_TARGET
AM_INIT_AUTOMAKE
AC_PROG_CC
AC_PROG_CXX
CFLAGS="$CFLAGS $SDL_CFLAGS "
LIBS="$LIBS $SDL_LIBS"
CPPFLAGS="$SDL_CFLAGS -DLINUX
-DLOCAL_STATE_DIR=\\\"$sharedstatedir/\\\"
-DDATADIR=\\\"$datadir\\\" -DUSE_SDL -DGCC"
AC_PROG_INSTALL
AC_PROG_RANLIB
AC_CONFIG_FILES()
AC_OUTPUT
Makefile.am
:
SUBDIRS = FooLib Main Bar Baz
EXTRA_DIST = LICENSING
autogen.sh
:
autoreconf -f -i
flogram_dev
(565 rep)
Apr 19, 2015, 01:56 PM
• Last activity: Apr 19, 2015, 10:25 PM
1
votes
1
answers
218
views
Make errors when compiling hulahop
When I cloned [hulahop](http://git.sugarlabs.org/hulahop) I had a [few possibilities](https://unix.stackexchange.com/questions/24935/how-can-i-install-hulahop/24936#24936) to install it. I have chosen the path with `autogen.sh` I used commands: $ sh autogen.sh # -> OK $ ./configure # -> OK But `make...
When I cloned [hulahop](http://git.sugarlabs.org/hulahop) I had a [few possibilities](https://unix.stackexchange.com/questions/24935/how-can-i-install-hulahop/24936#24936) to install it.
I have chosen the path with
autogen.sh
I used commands:
$ sh autogen.sh # -> OK
$ ./configure # -> OK
But make
fails:
$ sudo make 2> errors.txt
$ cat errors.txt
hulahop.cpp:28:29: error: pyxpcom/PyXPCOM.h: No such file or directory
In file included from /usr/include/python2.6/Python.h:8,
from hulahop-web-view.h:23,
from hulahop.h:23,
from hulahop.cpp:31:
/usr/include/python2.6/pyconfig.h:395:1: warning: "HAVE_LONG_LONG" redefined
In file included from /usr/include/xulrunner-1.9.2.24/nspr/prtypes.h:58,
from /usr/include/xulrunner-1.9.2.24/nscore.h:51,
from /usr/include/xulrunner-1.9.2.24/nsDebug.h:42,
from /usr/include/xulrunner-1.9.2.24/nsCOMPtr.h:59,
from hulahop.cpp:20:
/usr/include/xulrunner-1.9.2.24/nspr/prcpucfg.h:807:1: warning: this is the location of the previous definition
In file included from /usr/include/python2.6/Python.h:8,
from hulahop-web-view.h:23,
from hulahop.h:23,
from hulahop.cpp:31:
/usr/include/python2.6/pyconfig.h:1031:1: warning: "_POSIX_C_SOURCE" redefined
In file included from /usr/include/sys/types.h:27,
from /usr/include/xulrunner-1.9.2.24/nspr/obsolete/protypes.h:79,
from /usr/include/xulrunner-1.9.2.24/nspr/prtypes.h:517,
from /usr/include/xulrunner-1.9.2.24/nscore.h:51,
from /usr/include/xulrunner-1.9.2.24/nsDebug.h:42,
from /usr/include/xulrunner-1.9.2.24/nsCOMPtr.h:59,
from hulahop.cpp:20:
/usr/include/features.h:158:1: warning: this is the location of the previous definition
In file included from /usr/include/python2.6/Python.h:8,
from hulahop-web-view.h:23,
from hulahop.h:23,
from hulahop.cpp:31:
/usr/include/python2.6/pyconfig.h:1040:1: warning: "_XOPEN_SOURCE" redefined
In file included from /usr/include/sys/types.h:27,
from /usr/include/xulrunner-1.9.2.24/nspr/obsolete/protypes.h:79,
from /usr/include/xulrunner-1.9.2.24/nspr/prtypes.h:517,
from /usr/include/xulrunner-1.9.2.24/nscore.h:51,
from /usr/include/xulrunner-1.9.2.24/nsDebug.h:42,
from /usr/include/xulrunner-1.9.2.24/nsCOMPtr.h:59,
from hulahop.cpp:20:
/usr/include/features.h:160:1: warning: this is the location of the previous definition
hulahop.cpp: In function ‘HulahopWebView* hulahop_get_view_for_window(PyObject*)’:
hulahop.cpp:101: error: ‘Py_nsISupports’ has not been declared
hulahop.cpp:112: error: ‘do_GetService’ was not declared in this scope
make: *** [hulahop.lo] Error 1
make: *** [all-recursive] Error 1
Could you help me with compilation?
xralf
(15189 rep)
Nov 20, 2011, 11:03 AM
• Last activity: Nov 20, 2011, 05:51 PM
Showing page 1 of 7 total questions