[Lxc-users] Unable to make latest build "liblxc_so-caps.o Error 1"

Greg Kurz gkurz at fr.ibm.com
Sat May 7 10:45:31 UTC 2011


On Sat, 2011-05-07 at 11:32 +0200, David Touzeau wrote:
> Dear 
> 
> is there a solution to fix this issue ?
> 

See below.

> System: Debian 2.6.26-2-686
> LXC Build: 0.7.4.1
> 
> Configure output : 
> 
> ./configure  --prefix=/usr --includedir="\${prefix}/include" --mandir="\
> ${prefix}/share/man" --infodir="\${prefix}/share/info" --sysconfdir=/etc
> --localstatedir=/var --libexecdir="\${prefix}/lib/lxc"
> --disable-dependency-tracking --srcdir=.  --libdir="\${prefix}/lib/lxc"
> --with-rootfs-path="\${prefix}/lib/lxc"
> --with-linuxdir=/usr/src/linux-headers-2.6.26-2-686
> checking for a BSD-compatible install... /usr/bin/install -c
> checking whether build environment is sane... yes
> checking for a thread-safe mkdir -p... /bin/mkdir -p
> checking for gawk... no
> checking for mawk... mawk
> checking whether make sets $(MAKE)... yes
> checking build system type... i686-pc-linux-gnu
> checking host system type... i686-pc-linux-gnu
> checking for style of include used by make... GNU
> checking for gcc... gcc
> checking whether the C compiler works... yes
> checking for C compiler default output file name... a.out
> checking for suffix of executables... 
> checking whether we are cross compiling... no
> checking for suffix of object files... o
> checking whether we are using the GNU C compiler... yes
> checking whether gcc accepts -g... yes
> checking for gcc option to accept ISO C89... none needed
> checking dependency style of gcc... none
> checking whether gcc and cc understand -c and -o together... yes
> checking how to run the C preprocessor... gcc -E
> checking for grep that handles long lines and -e... /bin/grep
> checking for egrep... /bin/grep -E
> checking for ANSI C header files... yes
> checking for sys/types.h... yes
> checking for sys/stat.h... yes
> checking for stdlib.h... yes
> checking for string.h... yes
> checking for memory.h... yes
> checking for strings.h... yes
> checking for inttypes.h... yes
> checking for stdint.h... yes
> checking for unistd.h... yes
> checking minix/config.h usability... no
> checking minix/config.h presence... no
> checking for minix/config.h... no
> checking whether it is safe to define __EXTENSIONS__... yes
> checking for setcap... no
> checking for docbook2man... no
> checking for linux/netlink.h... yes
> checking for linux/genetlink.h... yes
> checking for sys/capability.h... yes
> checking for cap_set_proc in -lcap... yes
> checking linux capabilities... -lcap
> checking whether PR_CAPBSET_DROP is declared... yes
> checking sys/signalfd.h usability... no
> checking sys/signalfd.h presence... no
> checking for sys/signalfd.h... no
> checking whether gcc needs -traditional... no
> checking for Linux in /usr/src/linux-headers-2.6.26-2-686... yes
> checking for linux SRCARCH... x86
> configure: creating ./config.status
> config.status: creating Makefile
> config.status: creating lxc.pc
> config.status: creating lxc.spec
> config.status: creating config/Makefile
> config.status: creating doc/Makefile
> config.status: creating doc/lxc-create.sgml
> config.status: creating doc/lxc-destroy.sgml
> config.status: creating doc/lxc-execute.sgml
> config.status: creating doc/lxc-start.sgml
> config.status: creating doc/lxc-checkpoint.sgml
> config.status: creating doc/lxc-restart.sgml
> config.status: creating doc/lxc-stop.sgml
> config.status: creating doc/lxc-console.sgml
> config.status: creating doc/lxc-freeze.sgml
> config.status: creating doc/lxc-unfreeze.sgml
> config.status: creating doc/lxc-monitor.sgml
> config.status: creating doc/lxc-wait.sgml
> config.status: creating doc/lxc-ls.sgml
> config.status: creating doc/lxc-ps.sgml
> config.status: creating doc/lxc-cgroup.sgml
> config.status: creating doc/lxc-kill.sgml
> config.status: creating doc/lxc.conf.sgml
> config.status: creating doc/lxc.sgml
> config.status: creating doc/common_options.sgml
> config.status: creating doc/see_also.sgml
> config.status: creating doc/rootfs/Makefile
> config.status: creating doc/examples/Makefile
> config.status: creating doc/examples/lxc-macvlan.conf
> config.status: creating doc/examples/lxc-vlan.conf
> config.status: creating doc/examples/lxc-no-netns.conf
> config.status: creating doc/examples/lxc-empty-netns.conf
> config.status: creating doc/examples/lxc-phys.conf
> config.status: creating doc/examples/lxc-veth.conf
> config.status: creating doc/examples/lxc-complex.conf
> config.status: creating templates/Makefile
> config.status: creating templates/lxc-lenny
> config.status: creating templates/lxc-debian
> config.status: creating templates/lxc-lucid
> config.status: creating templates/lxc-maverick
> config.status: creating templates/lxc-natty
> config.status: creating templates/lxc-busybox
> config.status: creating templates/lxc-fedora
> config.status: creating templates/lxc-sshd
> config.status: creating src/Makefile
> config.status: creating src/lxc/Makefile
> config.status: creating src/lxc/lxc-ps
> config.status: creating src/lxc/lxc-ls
> config.status: creating src/lxc/lxc-netstat
> config.status: creating src/lxc/lxc-checkconfig
> config.status: creating src/lxc/lxc-setcap
> config.status: creating src/lxc/lxc-setuid
> config.status: creating src/lxc/lxc-version
> config.status: creating src/lxc/lxc-create
> config.status: creating src/lxc/lxc-destroy
> config.status: creating src/config.h
> config.status: src/config.h is unchanged
> config.status: executing depfiles commands
> config.status: executing default commands
> configure:
> 
> Warning:
> --------
> 
> The setcap binary was not found. This means the tools to set the
> privilege for the lxc commands are not available, that's ok, but you
> will need to run these commands as root or install libcap-2.
> 
> 
> postfix:/tmp/artica/install/sources/lxc/lxc-0.7.4.1# make
> Making all in src
> make[1]: Entering directory
> `/tmp/artica/install/sources/lxc/lxc-0.7.4.1/src'
> make  all-recursive
> make[2]: Entering directory
> `/tmp/artica/install/sources/lxc/lxc-0.7.4.1/src'
> Making all in lxc
> make[3]: Entering directory
> `/tmp/artica/install/sources/lxc/lxc-0.7.4.1/src/lxc'
> gcc -DHAVE_CONFIG_H -I. -I../../src    -I../../src -g -O2 -Wall -c
> lxc_attach.c
> gcc -DHAVE_CONFIG_H -I. -I../../src    -fPIC -DPIC -I../../src -g -O2
> -Wall -c -o liblxc_so-arguments.o `test -f 'arguments.c' || echo
> './'`arguments.c
> gcc -DHAVE_CONFIG_H -I. -I../../src    -fPIC -DPIC -I../../src -g -O2
> -Wall -c -o liblxc_so-commands.o `test -f 'commands.c' || echo
> './'`commands.c
> gcc -DHAVE_CONFIG_H -I. -I../../src    -fPIC -DPIC -I../../src -g -O2
> -Wall -c -o liblxc_so-start.o `test -f 'start.c' || echo './'`start.c
> gcc -DHAVE_CONFIG_H -I. -I../../src    -fPIC -DPIC -I../../src -g -O2
> -Wall -c -o liblxc_so-stop.o `test -f 'stop.c' || echo './'`stop.c
> gcc -DHAVE_CONFIG_H -I. -I../../src    -fPIC -DPIC -I../../src -g -O2
> -Wall -c -o liblxc_so-monitor.o `test -f 'monitor.c' || echo
> './'`monitor.c
> gcc -DHAVE_CONFIG_H -I. -I../../src    -fPIC -DPIC -I../../src -g -O2
> -Wall -c -o liblxc_so-console.o `test -f 'console.c' || echo
> './'`console.c
> gcc -DHAVE_CONFIG_H -I. -I../../src    -fPIC -DPIC -I../../src -g -O2
> -Wall -c -o liblxc_so-freezer.o `test -f 'freezer.c' || echo
> './'`freezer.c
> gcc -DHAVE_CONFIG_H -I. -I../../src    -fPIC -DPIC -I../../src -g -O2
> -Wall -c -o liblxc_so-checkpoint.o `test -f 'checkpoint.c' || echo
> './'`checkpoint.c
> gcc -DHAVE_CONFIG_H -I. -I../../src    -fPIC -DPIC -I../../src -g -O2
> -Wall -c -o liblxc_so-restart.o `test -f 'restart.c' || echo
> './'`restart.c
> gcc -DHAVE_CONFIG_H -I. -I../../src    -fPIC -DPIC -I../../src -g -O2
> -Wall -c -o liblxc_so-error.o `test -f 'error.c' || echo './'`error.c
> gcc -DHAVE_CONFIG_H -I. -I../../src    -fPIC -DPIC -I../../src -g -O2
> -Wall -c -o liblxc_so-parse.o `test -f 'parse.c' || echo './'`parse.c
> gcc -DHAVE_CONFIG_H -I. -I../../src    -fPIC -DPIC -I../../src -g -O2
> -Wall -c -o liblxc_so-cgroup.o `test -f 'cgroup.c' || echo './'`cgroup.c
> gcc -DHAVE_CONFIG_H -I. -I../../src    -fPIC -DPIC -I../../src -g -O2
> -Wall -c -o liblxc_so-utils.o `test -f 'utils.c' || echo './'`utils.c
> gcc -DHAVE_CONFIG_H -I. -I../../src    -fPIC -DPIC -I../../src -g -O2
> -Wall -c -o liblxc_so-sync.o `test -f 'sync.c' || echo './'`sync.c
> gcc  -M
> -MTsetns.h /usr/src/linux-headers-2.6.26-2-686/arch/x86/include/asm/unistd.h >setns.P
> gcc: /usr/src/linux-headers-2.6.26-2-686/arch/x86/include/asm/unistd.h:
> No such file or directory
> gcc: no input files
> make[3]: [setns.h] Error 1 (ignored)
> gcc -E
> -dM /usr/src/linux-headers-2.6.26-2-686/arch/x86/include/asm/unistd.h |
> grep setns > setns.h
> gcc: /usr/src/linux-headers-2.6.26-2-686/arch/x86/include/asm/unistd.h:
> No such file or directory
> gcc: no input files
> make[3]: [setns.h] Error 1 (ignored)
> gcc -DHAVE_CONFIG_H -I. -I../../src    -fPIC -DPIC -I../../src -g -O2
> -Wall -c -o liblxc_so-namespace.o `test -f 'namespace.c' || echo
> './'`namespace.c
> gcc -DHAVE_CONFIG_H -I. -I../../src    -fPIC -DPIC -I../../src -g -O2
> -Wall -c -o liblxc_so-conf.o `test -f 'conf.c' || echo './'`conf.c
> gcc -DHAVE_CONFIG_H -I. -I../../src    -fPIC -DPIC -I../../src -g -O2
> -Wall -c -o liblxc_so-confile.o `test -f 'confile.c' || echo
> './'`confile.c
> gcc -DHAVE_CONFIG_H -I. -I../../src    -fPIC -DPIC -I../../src -g -O2
> -Wall -c -o liblxc_so-state.o `test -f 'state.c' || echo './'`state.c
> gcc -DHAVE_CONFIG_H -I. -I../../src    -fPIC -DPIC -I../../src -g -O2
> -Wall -c -o liblxc_so-log.o `test -f 'log.c' || echo './'`log.c
> gcc -DHAVE_CONFIG_H -I. -I../../src    -fPIC -DPIC -I../../src -g -O2
> -Wall -c -o liblxc_so-network.o `test -f 'network.c' || echo
> './'`network.c
> gcc -DHAVE_CONFIG_H -I. -I../../src    -fPIC -DPIC -I../../src -g -O2
> -Wall -c -o liblxc_so-nl.o `test -f 'nl.c' || echo './'`nl.c
> gcc -DHAVE_CONFIG_H -I. -I../../src    -fPIC -DPIC -I../../src -g -O2
> -Wall -c -o liblxc_so-rtnl.o `test -f 'rtnl.c' || echo './'`rtnl.c
> gcc -DHAVE_CONFIG_H -I. -I../../src    -fPIC -DPIC -I../../src -g -O2
> -Wall -c -o liblxc_so-genl.o `test -f 'genl.c' || echo './'`genl.c
> gcc -DHAVE_CONFIG_H -I. -I../../src    -fPIC -DPIC -I../../src -g -O2
> -Wall -c -o liblxc_so-caps.o `test -f 'caps.c' || echo './'`caps.c
> caps.c: In function 'lxc_caps_down':
> caps.c:68: warning: implicit declaration of function 'cap_clear_flag'
> caps.c: In function 'lxc_caps_up':
> caps.c:102: error: 'CAP_LAST_CAP' undeclared (first use in this
> function)

I guess you have the old libcap installed. Install libcap2 and
libcap2-dev and try again.

> caps.c:102: error: (Each undeclared identifier is reported only once
> caps.c:102: error: for each function it appears in.)
> make[3]: *** [liblxc_so-caps.o] Error 1
> make[3]: Leaving directory
> `/tmp/artica/install/sources/lxc/lxc-0.7.4.1/src/lxc'
> make[2]: *** [all-recursive] Error 1
> make[2]: Leaving directory
> `/tmp/artica/install/sources/lxc/lxc-0.7.4.1/src'
> make[1]: *** [all] Error 2
> make[1]: Leaving directory
> `/tmp/artica/install/sources/lxc/lxc-0.7.4.1/src'
> make: *** [all-recursive] Error 1
> 
> 
> 
> 
> ------------------------------------------------------------------------------
> WhatsUp Gold - Download Free Network Management Software
> The most intuitive, comprehensive, and cost-effective network 
> management toolset available today.  Delivers lowest initial 
> acquisition cost and overall TCO of any competing solution.
> http://p.sf.net/sfu/whatsupgold-sd
> _______________________________________________
> Lxc-users mailing list
> Lxc-users at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/lxc-users

-- 
Gregory Kurz                                     gkurz at fr.ibm.com
Software Engineer @ IBM/Meiosys                  http://www.ibm.com
Tel +33 (0)534 638 479                           Fax +33 (0)561 400 420

"Anarchy is about taking complete responsibility for yourself."
        Alan Moore.





More information about the lxc-users mailing list