Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 232741 - net-analyzer/net-snmp-5.4.1-r1 do not configure due to unspecified target's endianness while crosscompiling for ARM
Summary: net-analyzer/net-snmp-5.4.1-r1 do not configure due to unspecified target's e...
Status: RESOLVED TEST-REQUEST
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: ARM Linux
: High normal (vote)
Assignee: Gentoo Netmon project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-07-23 10:55 UTC by Joseba Montejo
Modified: 2012-10-04 16:00 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Joseba Montejo 2008-07-23 10:55:25 UTC
Trying to emerge net-analyzer/net-snmp, for an ARM platform, it says it can not complete configure, due to not specified target's endianness:

./configure: line 37994: test: =: unary operator expected
configure: error: You are cross-compiling, but you have not specified the target's endianness

While doing this without portage (configure, make, make install), the same error arises, unless you specify the endianness to configure, trough the --with-endianness=little/big option.
Hopelessly, I can not find any way to pass this option to configure, using emerge.

Reproducible: Always

Steps to Reproduce:
1. Install crossdev for ARM in a Pentium 4 computer, following the embedded handbook.
2. Make the system configuration as said in chapter 5 of the embedded handbook.
3. Execute "xmerge -v net-analyzer/net-snmp"

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

Calculating dependencies... done!
[ebuild  N    ] net-analyzer/net-snmp-5.4.1-r1 to /usr/arm-linux-gnu/ USE="X minimal -diskio -doc -elf -ipv6 -lm_sensors -mfd-rewrites -perl -python -rpm (-selinux) -sendmail -smux -ssl -tcpd" 0 kB 

Total: 1 package (1 new), Size of downloads: 0 kB

>>> Verifying ebuild Manifests...

>>> Emerging (1 of 1) net-analyzer/net-snmp-5.4.1-r1 to /usr/arm-linux-gnu/
 * net-snmp-5.4.1.tar.gz RMD160 SHA1 SHA256 size ;-) ...                  [ ok ]
 * checking ebuild checksums ;-) ...                                      [ ok ]
 * checking auxfile checksums ;-) ...                                     [ ok ]
 * checking miscfile checksums ;-) ...                                    [ ok ]
 * checking net-snmp-5.4.1.tar.gz ;-) ...                                 [ ok ]
>>> Unpacking source...
>>> Unpacking net-snmp-5.4.1.tar.gz to /var/tmp/portage/net-analyzer/net-snmp-5.4.1-r1/work
 * Applying net-snmp-5.4.1-clientaddr-fix.patch ...                       [ ok ]
 * Replacing obsolete head/tail with POSIX compliant ones
 *  - fixed acinclude.m4
 *  - fixed configure
 *  - fixed configure.in
 *  - fixed local/snmp-ucd.sh
 *  - fixed snmplib/snmpusm.c
>>> Source unpacked.
>>> Compiling source in /var/tmp/portage/net-analyzer/net-snmp-5.4.1-r1/work/net-snmp-5.4.1 ...
 * econf: updating net-snmp-5.4.1/config.guess with /usr/share/gnuconfig/config.guess
 * econf: updating net-snmp-5.4.1/config.sub with /usr/share/gnuconfig/config.sub
./configure --prefix=/usr --host=arm-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --with-install-prefix=/var/tmp/portage/net-analyzer/net-snmp-5.4.1-r1/image/ --with-sys-location=Unknown --with-sys-contact=root@Unknown --with-default-snmp-version=3 --with-mib-modules=host ucd-snmp/dlmod --with-logfile=/var/log/net-snmpd.log --with-persistent-directory=/var/lib/net-snmp --enable-ucd-snmp-compatibility --enable-shared --enable-as-needed --disable-mfd-rewrites --disable-embedded-perl --disable-ipv6 --enable-internal-md5 --without-openssl --without-libwrap --without-rpm --without-bzip2 --without-zlib --without-elf --without-python-modules --build=i686-pc-linux-gnu
checking what to build and install...  agent apps man local mibs
...
...
...
checking for arm-linux-gnu-gcc... arm-linux-gnu-gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... yes
checking for suffix of executables... 
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether arm-linux-gnu-gcc accepts -g... yes
checking for arm-linux-gnu-gcc option to accept ANSI C... none needed
checking how to run the C preprocessor... arm-linux-gnu-gcc -E
checking for egrep... grep -E
checking for AIX... no
checking build system type... i686-pc-linux-gnu
checking host system type... arm-unknown-linux-gnu
checking target system type... arm-unknown-linux-gnu
checking for a sed that does not truncate output... /bin/sed
checking for ld used by arm-linux-gnu-gcc... /usr/libexec/gcc/arm-linux-gnu/ld
checking if the linker (/usr/libexec/gcc/arm-linux-gnu/ld) is GNU ld... yes
checking for /usr/libexec/gcc/arm-linux-gnu/ld option to reload object files... -r
checking for BSD-compatible nm... /usr/bin/arm-linux-gnu-nm -B
checking whether ln -s works... yes
checking how to recognize dependent libraries... pass_all
checking for ANSI C header files... yes
checking for sys/types.h... yes
...
...
...
checking security/cryptoki.h usability... no
checking security/cryptoki.h presence... no
checking for security/cryptoki.h... no
checking for lpstat... /usr/bin/lpstat
checking for cgetnext... no
checking for authentication support... Internal MD5 Support
checking for off_t... yes
checking for pid_t... yes
checking whether time.h and sys/time.h may both be included... yes
checking for socklen_t... yes
checking for in_addr_t... yes
checking for ssize_t... yes
checking for correct flags to ps... 
./configure: line 37994: test: =: unary operator expected
configure: error: You are cross-compiling, but you have not specified the target's endianness

!!! Please attach the following file when seeking support:
!!! /var/tmp/portage/net-analyzer/net-snmp-5.4.1-r1/work/net-snmp-5.4.1/config.log
 * 
 * ERROR: net-analyzer/net-snmp-5.4.1-r1 failed.
 * Call stack:
 *               ebuild.sh, line   49:  Called src_compile
 *             environment, line 2877:  Called econf 'src_compile' 'src_compile' '--with-install-prefix=/var/tmp/portage/net-analyzer/net-snmp-5.4.1-r1/image/' '--with-sys-location=Unknown' '--with-sys-contact=root@Unknown' '--with-default-snmp-version=3' '--with-mib-modules=host ucd-snmp/dlmod' '--with-logfile=/var/log/net-snmpd.log' '--with-persistent-directory=/var/lib/net-snmp' '--enable-ucd-snmp-compatibility' '--enable-shared' '--enable-as-needed' '--disable-mfd-rewrites' '--disable-embedded-perl' '--disable-ipv6' '--enable-internal-md5' '--without-openssl' '--without-libwrap' '--without-rpm' '--without-bzip2' '--without-zlib'
 *               ebuild.sh, line  513:  Called die
 * The specific snippet of code:
 *   			die "econf failed"
 *  The die message:
 *   econf failed
 * 
 * If you need support, post the topmost build error, and the call stack if relevant.
 * A complete build log is located at '/var/tmp/portage/net-analyzer/net-snmp-5.4.1-r1/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/net-analyzer/net-snmp-5.4.1-r1/temp/environment'.
 * 



xmerge --info
Portage 2.1.4.4 (uclibc/arm, gcc-4.2.4, unavailable, 2.6.24-gentoo-r7 i686)
=================================================================
System uname: 2.6.24-gentoo-r7 i686 Intel(R) Pentium(R) 4 CPU 1500MHz
Timestamp of tree: Thu, 17 Jul 2008 01:45:01 +0000
app-shells/bash:     3.2_p33
dev-lang/python:     2.4.4-r13
dev-python/pycrypto: 2.0.1-r6
sys-apps/baselayout: 1.12.11.1
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.13, 2.61-r2
sys-devel/automake:  1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1
sys-devel/binutils:  2.18-r3
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.26
virtual/os-headers:  2.6.23-r3
ACCEPT_KEYWORDS="arm"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-Os -pipe"
CHOST="arm-linux-gnu"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-Os -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks metadata-transfer nodoc noinfo noman sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://open-systems.ufl.edu/mirrors/gentoo 	http://prometheus.cs.wmich.edu/gentoo 	http://mirror.datapipe.net/gentoo 	http://ftp.ucsb.edu/pub/mirrors/linux/gento/"
LANG="es_ES"
LC_ALL="es_ES"
LDFLAGS="-Wl,-O1"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X arm minimal ncurses" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="uclibc" INPUT_DEVICES="keyboard" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="dummy fbdev v4l"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY
Comment 1 Joseba Montejo 2008-09-24 14:10:52 UTC
(In reply to comment #0)
> While doing this without portage (configure, make, make install), the same
> error arises, unless you specify the endianness to configure, trough the
> --with-endianness=little/big option.
> Hopelessly, I can not find any way to pass this option to configure, using
> emerge.

Ok. I have finally found out the way to pass options to configure when invoking emerge. This can be done through the environment variable EXTRA_ECONF.
So to emerge net-snmp for ARM, it must be written:
EXTRA_ECONF="--with-endianness=little" xmerge -v net-analyzer/net-snmp

This works fine.

Thanks a lot to Bigthor for cheating me the solution.
Comment 2 Diego Elio Pettenò (RETIRED) gentoo-dev 2012-10-04 16:00:48 UTC
Please test with 5.7.2_rc3 and reopen if this is still a problem.