# [ebuild] hpasm, librerias compartidas - linux-vdso.so.1

## opotonil

Hola,

Intente instalar hpasm a partir de un ebuild que encontre en los foros, pero me daba unos cuantos errores y habia alguna dependencia que no tenia demasido claro si era adecuada para amd64 (https://forums.gentoo.org/viewtopic-t-750047-highlight-.html) asi que estaba intentando hacer yo un ebuild, parecia sencillo, pero estoy teniendo problemas con algunas librerias.

El ebuild:

```

# Copyright 1999-2009 Gentoo Foundation

# Distributed under the terms of the GNU General Public License v2

# $Header: $

inherit toolchain-funcs versionator

DESCRIPTION="HP System Health Application and Insight Management Agents Package"

HOMEPAGE="http://h18000.www1.hp.com/products/servers/linux/documentation.html"

LICENSE="hp-value"

KEYWORDS="-* ~amd64 ~x86"

SLOT="0"

IUSE="ssl"

DEPEND="${RDEPEND}

        app-arch/rpm2targz

        snmp? ( net-analyzer/net-snmp )

        ssl? ( dev-libs/openssl )"

RDEPEND="${DEPEND}

        app-arch/tar

        sys-apps/sed"

HPASMDIR="/opt/compaq"

HPASMHPDIR="/opt/hp"

RESTRICT="${RESTRICT} strip"

QA_TEXTRELS="usr/$(get_libdir)/libcpqci.so.1.0

usr/$(get_libdir)/libcpqipmb.so.1.0"

QA_EXECSTACK="usr/$(get_libdir)/libhpev.so.1.0

${HPASMDIR:1}/foundation/bin/cmahostd

${HPASMDIR:1}/foundation/bin/cmapeerd

${HPASMDIR:1}/foundation/bin/cmathreshd

${HPASMDIR:1}/hpasmd/bin/IrqRouteTbl

${HPASMDIR:1}/hpasmd/bin/hpasmd

${HPASMDIR:1}/hpasmd/bin/hpasmlited

${HPASMDIR:1}/hpasmd/bin/hpasmxld

${HPASMDIR:1}/server/bin/cmasm2d

${HPASMDIR:1}/server/bin/cmastdeqd

${HPASMDIR:1}/storage/bin/cmaeventd

${HPASMDIR:1}/storage/bin/cmafcad

${HPASMDIR:1}/storage/bin/cmaidad

${HPASMDIR:1}/storage/bin/cmaided

${HPASMDIR:1}/storage/bin/cmasasd

${HPASMDIR:1}/storage/bin/cmascsid

${HPASMDIR:1}/utils/hplog

${HPASMHPDIR:1}/hpsmh/data/webapp-data/webagent/csginkgo"

SRC_URI="x86? ( ftp://ftp.hp.com/pub/softlib2/software1/pubsw-linux/p1925054526/v42992/${PN}-$(replace_version_separator 3 '-').rhel5.i386.rpm )

        amd64? ( ftp://ftp.hp.com/pub/softlib2/software1/pubsw-linux/p315823469/v43005/${PN}-$(replace_version_separator 3 '-').rhel5.x86_64.rpm )"

pkg_setup() {

        if [ ! $(uname -r | grep 2.6) ]; then

                die "Kernel not supported. You need a kernel 2.6.x"

        fi

}

src_unpack() {

        cd ${WORKDIR}

        rpm2targz ${DISTDIR}/${A} || die "rpm2targz failed"

        tar zxpf ${PN}-$(replace_version_separator 3 '-').rhel5.*.tar.gz > /dev/null 2>&1

        rm ${PN}-$(replace_version_separator 3 '-').rhel5.*.tar.gz > /dev/null 2>&1

}

src_install() {

        HPASMDIR="/opt/compaq"

        HPASMHPDIR="/opt/hp"

        cd ${WORKDIR}

        dodir ${HPASMDIR}

        cp -Rdp ${WORKDIR}${HPASMDIR}/* ${D}${HPASMDIR}

        dodir ${HPASMHPDIR}

        cp -Rdp ${WORKDIR}${HPASMHPDIR}/* ${D}${HPASMHPDIR}

        dolib.so ./usr/lib/*.so*

        if use amd64; then

                dolib.so ./usr/lib64/*.so*

        fi

        for i in .${HPASMDIR}/utils/*; do

                if [ ! $(echo ${i} | grep example) ]; then

                        dosym ${HPASMDIR}/utils/$(basename ${i}) /sbin/$(basename ${i})

                fi

        done

        sed -i '/\(if \[ ! -f \/etc\/debian_version \]; then\)/c \

   if [[ ! -f /etc/debian_version && ! -f /etc/gentoo-release ]]; then' \

        ${D}${HPASMDIR}/hpasm/etc/common.functions

        sed -i '/\(echo "$DISTRO:$PRODUCT:$RELEASE" >\/opt\/compaq\/hpasm\/distro.txt\)/i \

   if [ -f /etc/gentoo-release ]; then\

      DISTRO="Gentoo"\

      RELEASE="`cat /etc/gentoo-release`"\

      PRODUCT=""\

   fi' \

        ${D}${HPASMDIR}/hpasm/etc/common.functions

        dodir /var/spool/compaq

        exeinto /etc/init.d

        doinitd ${FILESDIR}/hpasm || die "Failed installing init.d script"

        doman usr/share/man/man?/*

}

pkg_postinst() {

        if [ "${ROOT}" == "/" ] ; then

                /sbin/ldconfig

        fi

        einfo

        einfo "You now need to execute /etc/init.d/hpasm configure"

        einfo "in order to configure the installed package."

        einfo

}

```

Los problemas que no consigo solucionar:

 *Quote:*   

> 
> 
> The binary "/opt/compaq/hpasmd/bin/hpasmxld" depends on "linux-vdso.so.1".
> 
> The binary "/opt/compaq/hpasmd/bin/hpasmxld" depends on "/usr/lib/libhpasmintrfc64.so.2".
> ...

 

Un poco de informacion, el problema si no me equivoco esta en "linux-vdso.so.1" que por lo que he visto buscando por hay parece que se encargue de llamar a otras librerias o algo asi, no consigo aclararme.

```

# ldd /opt/compaq/hpasmd/bin/hpasmxld

        linux-vdso.so.1 =>  (0x00007fff22dfe000)

        libhpasmintrfc64.so.2 => /usr/lib/libhpasmintrfc64.so.2 (0x00007f551a8ff000)

        libc.so.6 => /lib/libc.so.6 (0x00007f551a5b7000)

        libpthread.so.0 => /lib/libpthread.so.0 (0x00007f551a39c000)

        /lib64/ld-linux-x86-64.so.2 (0x00007f551ab04000)

```

```

# ls -l /usr/lib/ | grep libhpasmintrfc64.so

lrwxrwxrwx  1 root root      23 abr  5 13:05 libhpasmintrfc64.so -> ./libhpasmintrfc64.so.2

lrwxrwxrwx  1 root root      23 abr  5 13:05 libhpasmintrfc64.so.2 -> libhpasmintrfc64.so.2.0

-rwxr-xr-x  1 root root   15616 abr  5 13:05 libhpasmintrfc64.so.2.0

```

```

# ls -l /lib/ | grep libc.so

lrwxrwxrwx 1 root root      11 mar  9 20:50 libc.so.6 -> libc-2.8.so

```

A ver si alguien me puede encaminar un poco que ahoramismo estoy completamente perdido.

Salu2.

PD: Ya he probado poniendo como dependencia todas las del ebuild original del foro, bueno emul-linux-x86-compat en lugar de lib-compat, y casca exactamente igual.

PD2: Las advertencias QA no se si es mejor ocultarlas como estoy haciendo o dejarlas, pero bueno esto por ahora es lo de menos.

--- EDITADO ---

Una posible solucion, a modo de recordatorio, para cuando tenga un rato:

http://h20000.www2.hp.com/bizsupport/TechSupport/Document.jsp?objectID=c00910090&lang=en&cc=us&taskId=101&prodSeriesId=428936&prodTypeId=15351

----------

