checking whether to use NLS... yes checking where the gettext function comes from... libc checking for poptConfigFileToString in -lpopt... yes configure: WARNING: Requested static cryptsetup build, enabling static library. checking for DEVMAPPER... yes checking whether dm_task_secure_data is declared... yes checking whether dm_task_retry_remove is declared... yes checking whether DM_UDEV_DISABLE_DISK_RULES_FLAG is declared... yes checking linux/if_alg.h usability... yes checking linux/if_alg.h presence... yes checking for linux/if_alg.h... yes checking for x86_64-pc-linux-gnu-libgcrypt-config... no checking for libgcrypt-config... /usr/bin/libgcrypt-config checking for LIBGCRYPT - version >= 1.6.0... no checking for x86_64-pc-linux-gnu-libgcrypt-config... /usr/bin/libgcrypt-config checking for LIBGCRYPT - version >= 1.1.42... yes (1.5.2) checking for gcry_check_version in -lgcrypt... yes checking for poptGetContext in -lpopt... no configure: error: Cannot find static popt library. Reproducible: Always
Index: cryptsetup-1.6.1.ebuild =================================================================== RCS file: /var/cvsroot/gentoo-x86/sys-fs/cryptsetup/cryptsetup-1.6.1.ebuild,v retrieving revision 1.2 retrieving revision 1.3 diff -u -B -r1.2 -r1.3 --- cryptsetup-1.6.1.ebuild 4 Jun 2013 22:00:52 -0000 1.2 +++ cryptsetup-1.6.1.ebuild 4 Jun 2013 22:14:11 -0000 1.3 @@ -1,6 +1,6 @@ # Copyright 1999-2013 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-fs/cryptsetup/cryptsetup-1.6.1.ebuild,v 1.2 2013/06/04 22:00:52 radhermit Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-fs/cryptsetup/cryptsetup-1.6.1.ebuild,v 1.3 2013/06/04 22:14:11 flameeyes Exp $ EAPI=5 PYTHON_COMPAT=( python{2_5,2_6,2_7} ) @@ -31,10 +31,10 @@ sys-libs/e2fsprogs-libs[static-libs(+)] udev? ( virtual/udev[static-libs(+)] )" # We have to always depend on ${LIB_DEPEND} rather than put behind -# static? () because we provide a shared library which links against +# !static? () because we provide a shared library which links against # these other packages. #414665 RDEPEND="static-libs? ( ${LIB_DEPEND} ) - ${LIB_DEPEND//\[static-libs(+)]} + ${LIB_DEPEND//\[static-libs\(+\)\]} selinux? ( sys-libs/libselinux ) python? ( ${PYTHON_DEPS} )" DEPEND="${RDEPEND} This maybe?
dev-libs/popt-1.16-r1 was build with static-libs so now i have no idea why it's failing
I had the same error, rebuilding popt fixed it for me.
config.log says: configure:16945: x86_64-pc-linux-gnu-gcc -o conftest -O2 -march=amdfam10 -fpredictive-commoning -fgcse-after-reload -ftree-vectorize -ftracer -fvect-cost-model -pipe -Wl,-O1 -Wl,--as-needed c onftest.c -lpopt -static >&5 /usr/lib/gcc/x86_64-pc-linux-gnu/4.7.3/../../../../lib64/libpopt.a(popt.o): In function `poptGetContext': (.text+0x107c): undefined reference to `__secure_getenv' /usr/lib/gcc/x86_64-pc-linux-gnu/4.7.3/../../../../lib64/libpopt.a(popt.o): In function `poptGetContext': (.text+0x1175): undefined reference to `__secure_getenv' /usr/lib/gcc/x86_64-pc-linux-gnu/4.7.3/../../../../lib64/libpopt.a(popt.o): In function `poptGetContext': (.text+0x11d6): undefined reference to `__secure_getenv' /usr/lib/gcc/x86_64-pc-linux-gnu/4.7.3/../../../../lib64/libpopt.a(popt.o): In function `poptGetNextOpt': (.text+0x2dbc): undefined reference to `__secure_getenv' collect2: error: ld returned 1 exit status configure:16945: $? = 1 Maybe another problem with the gold linker?
I have the same issue: checking for poptGetContext in -lpopt... no configure: error: Cannot find static popt library. !!! Please attach the following file when seeking support: !!! /var/tmp/portage/sys-fs/cryptsetup-1.6.1/work/cryptsetup-1.6.1/config.log * ERROR: sys-fs/cryptsetup-1.6.1 failed (configure phase): * econf failed * * Call stack: * ebuild.sh, line 93: Called src_configure * environment, line 3897: Called econf '--sbindir=/sbin' '--enable-shared' '--enable-static-cryptsetup' '--disable-static' '--enable-nls' '--enable-python' '--disable-cryptsetup-reencrypt' '--disable-selinux' '--enable-udev' '--enable-dev-random' '--with-crypto_backend=gcrypt' * phase-helpers.sh, line 521: Called die * The specific snippet of code: * die "econf failed" * * If you need support, post the output of `emerge --info '=sys-fs/cryptsetup-1.6.1'`, * the complete build log and the output of `emerge -pqv '=sys-fs/cryptsetup-1.6.1'`. * The complete build log is located at '/var/tmp/portage/sys-fs/cryptsetup-1.6.1/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/sys-fs/cryptsetup-1.6.1/temp/environment'. * Working directory: '/var/tmp/portage/sys-fs/cryptsetup-1.6.1/work/cryptsetup-1.6.1' * S: '/var/tmp/portage/sys-fs/cryptsetup-1.6.1/work/cryptsetup-1.6.1' >>> Failed to emerge sys-fs/cryptsetup-1.6.1, Log file: >>> '/var/tmp/portage/sys-fs/cryptsetup-1.6.1/temp/build.log' root@impala:/usr/src(17)# qlist -Iv popt dev-libs/popt-1.16-r1 root@impala:/usr/src(18)# genlop -t popt | tail Sat Jun 2 15:32:40 2012 >>> dev-libs/popt-1.16-r1 merge time: 21 seconds. Sun Jun 3 16:09:51 2012 >>> dev-libs/popt-1.16-r1 merge time: 21 seconds. Sun Mar 3 16:29:35 2013 >>> dev-libs/popt-1.16-r1 merge time: 23 seconds. root@impala:/usr/src(20)# grep -U2 popt /var/tmp/portage/sys-fs/cryptsetup-1.6.1/work/cryptsetup-1.6.1/config.log configure:15243: checking where the gettext function comes from configure:15254: result: libc configure:15315: checking for poptConfigFileToString in -lpopt configure:15340: x86_64-pc-linux-gnu-gcc -o conftest -march=amdfam10 -O2 -pipe -Wl,-O1 -Wl,--as-needed conftest.c -lpopt >&5 configure:15340: $? = 0 configure:15349: result: yes -- configure:16438: $? = 0 configure:16447: result: yes configure:16920: checking for poptGetContext in -lpopt configure:16945: x86_64-pc-linux-gnu-gcc -o conftest -march=amdfam10 -O2 -pipe -Wl,-O1 -Wl,--as-needed conftest.c -lpopt -static >&5 /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.4/../../../../lib64/libpopt.a(popt.o): In function `poptGetContext': (.text+0x101c): undefined reference to `__secure_getenv' /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.4/../../../../lib64/libpopt.a(popt.o): In function `poptGetContext': (.text+0x1096): undefined reference to `__secure_getenv' /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.4/../../../../lib64/libpopt.a(popt.o): In function `poptGetNextOpt': (.text+0x2a9c): undefined reference to `__secure_getenv' collect2: ld returned 1 exit status -- | extern "C" | #endif | char poptGetContext (); | int | main () | { | return poptGetContext (); | ; | return 0; | } configure:16954: result: no configure:16964: error: Cannot find static popt library. ## ---------------- ## -- ac_cv_host=x86_64-pc-linux-gnu ac_cv_lib_gcrypt_gcry_check_version=yes ac_cv_lib_popt_poptConfigFileToString=yes ac_cv_lib_popt_poptGetContext=no ac_cv_lib_uuid_uuid_clear=yes ac_cv_objext=o -- PKG_CONFIG_LIBDIR='' PKG_CONFIG_PATH='/var/tmp/portage/sys-fs/cryptsetup-1.6.1/temp/python2.7/pkgconfig' POPT_LIBS='-lpopt ' POSUB='po' PWQUALITY_CFLAGS='' After reemerging popt I can also emerge cryptsetup-1.6.0.
I had the same problem (and found the same error as Juergen Rose in my config.log) and rebuilding popt also fixed it for me. What I think has happend: __secure_getenv seems to be a private glibc function that got used anyway. At least one Google result suggsted this and that it got renamed and promoted to secure_getenv, because there obvious where users for this function. So popt was build against one glibc that had __secure_getenv. That was encoded into the static popt library. Then glibc was upgraded and now no longer provides this function. revdep-rebuild only checks dynamic librarys, but not the static ones and so this breakage was not detected. Fix: rebuilding popt. It will now build against the symbols of the new glibc and no longer reference the missing function in its static library.
(In reply to Neil Bothwick from comment #3) > I had the same error, rebuilding popt fixed it for me. Just for statistics: same workaround works for me, too.
there's not really anything to be done here that i can see
*** Bug 474640 has been marked as a duplicate of this bug. ***
*** Bug 495216 has been marked as a duplicate of this bug. ***
*** Bug 484544 has been marked as a duplicate of this bug. ***
*** Bug 501068 has been marked as a duplicate of this bug. ***