# [PORTAGE]No consigo compilar sys-libs/db [Solucionado]

## 1donut

Mi problema es que no consigo instalar sys-libs/db al menos que sea una version igual o inferior a la 4.2 y no me sirven las versiones inferiores porque entonces ya no puedo compilar los programas que tengo.

```
emerge -v db

These are the packages that would be merged, in order:

Calculating dependencies... done!

[ebuild  NS   #] sys-libs/db-4.8.30-r2:4.8 [1.85-r3:1, 3.2.9_p2:3, 4.2.52_p5-r1:4.2] USE="cxx -doc -examples -java -tcl {-test}" ABI_X86="(64) (-32) (-x32)" 0 KiB

Total: 1 package (1 in new slot), Size of downloads: 0 KiB

>>> Recording sys-libs/db in "world" favorites file...

>>> Verifying ebuild manifests

>>> Emerging (1 of 1) sys-libs/db-4.8.30-r2::gentoo

 * db-4.8.30.tar.gz SHA256 SHA512 WHIRLPOOL size ;-) ...                 [ ok ]

>>> Unpacking source...

>>> Unpacking db-4.8.30.tar.gz to /var/tmp/portage/sys-libs/db-4.8.30-r2/work

>>> Source unpacked in /var/tmp/portage/sys-libs/db-4.8.30-r2/work

>>> Preparing source in /var/tmp/portage/sys-libs/db-4.8.30-r2/work/db-4.8.30/build_unix ...

 * Applying db-4.8-libtool.patch ...                                     [ ok ]

 * Applying db-4.8.24-java-manifest-location.patch ...                   [ ok ]

 * Applying db-4.8.30-rename-atomic-compare-exchange.patch ...           [ ok ]

 * Applying db-4.6-jni-check-prefix-first.patch ...                      [ ok ]

 * Applying db-4.3-listen-to-java-options.patch ...                      [ ok ]

 * Running eautoreconf in '/var/tmp/portage/sys-libs/db-4.8.30-r2/work/db-4.8.30/dist' ...

 * Running libtoolize --install --copy --force ...                       [ ok ]

 * Running aclocal -I aclocal -I aclocal_java ...                        [ ok ]

 * Running autoconf -I aclocal -I aclocal_java --force ...               [ ok ]

 * Running autoheader -I aclocal -I aclocal_java ...                     [ !! ]

 * Running elibtoolize in: db-4.8.30/dist/

 *   Applying portage/1.2.0 patch ...

 *   Applying sed/1.5.6 patch ...

>>> Source prepared.

>>> Configuring source in /var/tmp/portage/sys-libs/db-4.8.30-r2/work/db-4.8.30/build_unix ...

 * abi_x86_64.amd64: running multilib-minimal_abi_src_configure

 * econf: updating db-4.8.30/dist/config.sub with /usr/share/gnuconfig/config.sub

 * econf: updating db-4.8.30/dist/config.guess with /usr/share/gnuconfig/config.guess

/var/tmp/portage/sys-libs/db-4.8.30-r2/work/db-4.8.30/build_unix/../dist/configure --prefix=/usr --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --libdir=/usr/lib64 --enable-compat185 --enable-o_direct --without-uniquename --with-mutex=x86/gcc-assembly --enable-cxx --enable-stl --disable-java --disable-tcl --disable-test

checking build system type... x86_64-pc-linux-gnu

checking host system type... x86_64-pc-linux-gnu

checking if building in the top-level or dist directories... no

checking if --disable-cryptography option specified... no

checking if --disable-hash option specified... no

checking if --disable-partition option specified... no

checking if --disable-compression option specified... no

checking if --disable-mutexsupport option specified... no

checking if --disable-atomicsupport option specified... no

checking if --disable-queue option specified... no

checking if --disable-replication option specified... no

checking if --disable-statistics option specified... no

checking if --disable-verify option specified... no

checking if --enable-compat185 option specified... yes

checking if --enable-cxx option specified... yes

checking if --enable-debug option specified... no

checking if --enable-debug_rop option specified... no

checking if --enable-debug_wop option specified... no

checking if --enable-diagnostic option specified... no

checking if --enable-dump185 option specified... no

checking if --enable-java option specified... no

checking if --enable-mingw option specified... no

checking if --enable-o_direct option specified... yes

checking if --enable-posixmutexes option specified... no

checking if --enable-rpc option specified... no

checking if --enable-smallbuild option specified... no

checking if --enable-stl option specified... yes

checking if --enable-tcl option specified... no

checking if --enable-test option specified... no

checking if --enable-uimutexes option specified... no

checking if --enable-umrw option specified... no

checking if --with-mutex=MUTEX option specified... x86/gcc-assembly

checking if --with-tcl=DIR option specified... no

checking if --with-uniquename=NAME option specified... no

checking for x86_64-pc-linux-gnu-chmod... no

checking for chmod... chmod

checking for x86_64-pc-linux-gnu-cp... no

checking for cp... cp

checking for x86_64-pc-linux-gnu-ln... no

checking for ln... ln

checking for x86_64-pc-linux-gnu-mkdir... no

checking for mkdir... mkdir

checking for x86_64-pc-linux-gnu-rm... no

checking for rm... rm

checking for x86_64-pc-linux-gnu-bash... no

checking for bash... /bin/bash

checking for a BSD-compatible install... /usr/lib/portage/python2.7/ebuild-helpers/xattr/install -c

checking for x86_64-pc-linux-gnu-cc... no

checking for x86_64-pc-linux-gnu-gcc... x86_64-pc-linux-gnu-gcc

checking whether the C compiler works... no

configure: error: in `/var/tmp/portage/sys-libs/db-4.8.30-r2/work/db-4.8.30/build_unix-abi_x86_64.amd64':

configure: error: C compiler cannot create executables

See `config.log' for more details

!!! Please attach the following file when seeking support:

!!! /var/tmp/portage/sys-libs/db-4.8.30-r2/work/db-4.8.30/build_unix-abi_x86_64.amd64/config.log

 * ERROR: sys-libs/db-4.8.30-r2::gentoo failed (configure phase):

 *   econf failed

 * 

 * Call stack:

 *          ebuild.sh, line   93:  Called src_configure

 *        environment, line 5290:  Called multilib-minimal_src_configure

 *        environment, line 4410:  Called multilib_foreach_abi 'multilib-minimal_abi_src_configure'

 *        environment, line 4617:  Called multibuild_foreach_variant '_multilib_multibuild_wrapper' 'multilib-minimal_abi_src_configure'

 *        environment, line 4341:  Called _multibuild_run '_multilib_multibuild_wrapper' 'multilib-minimal_abi_src_configure'

 *        environment, line 4339:  Called _multilib_multibuild_wrapper 'multilib-minimal_abi_src_configure'

 *        environment, line  595:  Called multilib-minimal_abi_src_configure

 *        environment, line 4404:  Called multilib_src_configure

 *        environment, line 4846:  Called econf '--enable-compat185' '--enable-o_direct' '--without-uniquename' '--with-mutex=x86/gcc-assembly' '--enable-cxx' '--enable-stl' '--disable-java' '--disable-tcl' '--disable-test'

 *   phase-helpers.sh, line  584:  Called die

 * The specific snippet of code:

 *            die "econf failed"

 * 

 * If you need support, post the output of `emerge --info '=sys-libs/db-4.8.30-r2::gentoo'`,

 * the complete build log and the output of `emerge -pqv '=sys-libs/db-4.8.30-r2::gentoo'`.

!!! When you file a bug report, please include the following information:

GENTOO_VM=  CLASSPATH="" JAVA_HOME="/etc/java-config-2/current-system-vm"

JAVACFLAGS="" COMPILER=""

and of course, the output of emerge --info =db-4.8.30

 * The complete build log is located at '/var/tmp/portage/sys-libs/db-4.8.30-r2/temp/build.log'.

 * The ebuild environment file is located at '/var/tmp/portage/sys-libs/db-4.8.30-r2/temp/environment'.

 * Working directory: '/var/tmp/portage/sys-libs/db-4.8.30-r2/work/db-4.8.30/build_unix-abi_x86_64.amd64'

 * S: '/var/tmp/portage/sys-libs/db-4.8.30-r2/work/db-4.8.30/build_unix'

>>> Failed to emerge sys-libs/db-4.8.30-r2, Log file:

>>>  '/var/tmp/portage/sys-libs/db-4.8.30-r2/temp/build.log'

 * Messages for package sys-libs/db-4.8.30-r2:

 * ERROR: sys-libs/db-4.8.30-r2::gentoo failed (configure phase):

 *   econf failed

 * 

 * Call stack:

 *          ebuild.sh, line   93:  Called src_configure

 *        environment, line 5290:  Called multilib-minimal_src_configure

 *        environment, line 4410:  Called multilib_foreach_abi 'multilib-minimal_abi_src_configure'

 *        environment, line 4617:  Called multibuild_foreach_variant '_multilib_multibuild_wrapper' 'multilib-minimal_abi_src_configure'

 *        environment, line 4341:  Called _multibuild_run '_multilib_multibuild_wrapper' 'multilib-minimal_abi_src_configure'

 *        environment, line 4339:  Called _multilib_multibuild_wrapper 'multilib-minimal_abi_src_configure'

 *        environment, line  595:  Called multilib-minimal_abi_src_configure

 *        environment, line 4404:  Called multilib_src_configure

 *        environment, line 4846:  Called econf '--enable-compat185' '--enable-o_direct' '--without-uniquename' '--with-mutex=x86/gcc-assembly' '--enable-cxx' '--enable-stl' '--disable-java' '--disable-tcl' '--disable-test'

 *   phase-helpers.sh, line  584:  Called die

 * The specific snippet of code:

 *            die "econf failed"

 * 

 * If you need support, post the output of `emerge --info '=sys-libs/db-4.8.30-r2::gentoo'`,

 * the complete build log and the output of `emerge -pqv '=sys-libs/db-4.8.30-r2::gentoo'`.

 * The complete build log is located at '/var/tmp/portage/sys-libs/db-4.8.30-r2/temp/build.log'.

 * The ebuild environment file is located at '/var/tmp/portage/sys-libs/db-4.8.30-r2/temp/environment'.

 * Working directory: '/var/tmp/portage/sys-libs/db-4.8.30-r2/work/db-4.8.30/build_unix-abi_x86_64.amd64'

 * S: '/var/tmp/portage/sys-libs/db-4.8.30-r2/work/db-4.8.30/build_unix'

```

Me podrian decir que debo hacer para que pueda compilarlo

no dudáis en preguntarme información adicional

Gracias.

Aqui os dejo:

 /var/tmp/portage/sys-libs/db-4.8.30-r2/temp/environment https://bpaste.net/show/7caee400c3af

emerge --info https://bpaste.net/show/de0511f43e3cLast edited by 1donut on Thu Feb 19, 2015 4:21 pm; edited 2 times in total

----------

## Stolz

 *Quote:*   

> "C compiler cannot create executables "

 

Es posible que el compilador por defecto no esté bien configurado. Ejecuta gcc-config  -l para ver qué versiones de GCC tienes instaladas. Luego elige una, por ejemplo, para elegir la primera ejecuta gcc-config 1. En vez del número puedes ejegir la versión usando el nombre con el que aparece en la lista. Una vez elegido, recuerda ejecutar 

```
source /etc/profile
```

----------

## 1donut

 *Stolz wrote:*   

>  *Quote:*   "C compiler cannot create executables " 
> 
> Es posible que el compilador por defecto no esté bien configurado. Ejecuta gcc-config  -l para ver qué versiones de GCC tienes instaladas. Luego elige una, por ejemplo, para elegir la primera ejecuta gcc-config 1. En vez del número puedes ejegir la versión usando el nombre con el que aparece en la lista. Una vez elegido, recuerda ejecutar 
> 
> ```
> ...

 

Gracias por tu respuesta, lo he intentado con la última stable (4.8.3) y con una más vieja (4.6.4) pero con ninguna de las dos funcionaba.

En las dos hice lo de source /etc/profile

----------

## esteban_conde

Vete a /usr/x86_64-pc-linux-gnu y comprueba que contiene los subdirectorios bin binutils-bin gcc-bin y lib ademas comprueba que no estén vacíos.

Es para comprobar que están instalados gcc-4.8.3 etc.

Prueba a compilar otro paquete que sepas que compila y si te da el mismo error, no es culpa del paquete es que no tienes bien instalado gcc.

Mira a ver si en /etc/portage/make.conf tienes :

CHOST="x86_64-pc-linux-gnu"

CFLAGS="-march=native -O2 -pipe"

CXXFLAGS="${CFLAGS}"

----------

## 1donut

 *esteban_conde wrote:*   

> Vete a /usr/x86_64-pc-linux-gnu y comprueba que contiene los subdirectorios bin binutils-bin gcc-bin y lib ademas comprueba que no estén vacíos.
> 
> Es para comprobar que están instalados gcc-4.8.3 etc.
> 
> Prueba a compilar otro paquete que sepas que compila y si te da el mismo error, no es culpa del paquete es que no tienes bien instalado gcc.
> ...

 

Si, tengo cosas en /usr/x86_64-pc-linux-gnu, en mi make.conf tenia todo lo que has descrito menos el march=native que tenia -marche=corei7, lo cambie para comprobar pero salio el mismo error para sys-libs/db y si compilo otros programas me funciona.

Yo creo que el error viene de 

```
* Running autoconf -I aclocal -I aclocal_java --force ...               [ ok ]

 * Running autoheader -I aclocal -I aclocal_java ...                  [ !! ]
```

Gracias de todos modos por tu respuesta

----------

## quilosaq

 *emerge --info wrote:*   

> ld GNU gold (Gentoo 2.24 p1.4 2.24) 1.11

 

Prueba a cambiar el enlazador que estas utilizando por defecto:

```
(root)# binutils-config --linker ld.bfd
```

Fuentes:

https://wiki.gentoo.org/wiki/Gold

https://forums.gentoo.org/viewtopic-t-996798-start-0-postdays-0-postorder-asc-highlight-.html

----------

## 1donut

 *quilosaq wrote:*   

>  *emerge --info wrote:*   ld GNU gold (Gentoo 2.24 p1.4 2.24) 1.11 
> 
> Prueba a cambiar el enlazador que estas utilizando por defecto:
> 
> ```
> ...

 

Muchas gracias, después de hacer esto me funciono la compilación.

Al fin voy a poder hacer mi emerge -avuDN @world  :Smile: 

----------

