Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 587720 - dev-libs/gmp-6.1.0 fails to build on ARM due to corrupt header
Summary: dev-libs/gmp-6.1.0 fails to build on ARM due to corrupt header
Status: RESOLVED NEEDINFO
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: ARM Linux
: Normal normal (vote)
Assignee: Gentoo Linux bug wranglers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-07-01 16:03 UTC by Stuart Shelton
Modified: 2022-05-10 19:40 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 Stuart Shelton 2016-07-01 16:03:03 UTC
Building gmp-6.1.0 on a Raspberry Pi 2 ARMv7a, regardless of USE=asm (FWIW) results in:

libtool: compile:  armv7a-hardfloat-linux-gnueabi-gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I/var/.mem/cache/portage/build/portage/dev-libs/gmp-6.1.0/work/gmp-6.1.0/mpn -I.. -D__GMP_WITHIN_GMP -I/var/.mem/cache/portage/build/portage/dev-libs/gmp-6.1.0/work/gmp-6.1.0 -DOPERATION_mp_bases -Os -pipe -mcpu=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard -funsafe-math-optimizations -DNO_ASM -c mp_bases.c  -fPIC -DPIC -o .libs/mp_bases.o
In file included from /var/.mem/cache/portage/build/portage/dev-libs/gmp-6.1.0/work/gmp-6.1.0/gmp-impl.h:145:0,
                 from add_n.c:32:
../gmp-mparam.h:1:1: error: unknown type name ‘clock_gettime’
 clock_gettime is 1.000ns accurate
 ^
../gmp-mparam.h:1:18: error: invalid suffix "ns" on floating constant
 clock_gettime is 1.000ns accurate
                  ^
../gmp-mparam.h:1:18: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before numeric constant
libtool: compile:  armv7a-hardfloat-linux-gnueabi-gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I/var/.mem/cache/portage/build/portage/dev-libs/gmp-6.1.0/work/gmp-6.1.0/mpn -I.. -D__GMP_WITHIN_GMP -I/var/.mem/cache/portage/build/portage/dev-libs/gmp-6.1.0/work/gmp-6.1.0 -DOPERATION_add -Os -pipe -mcpu=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard -funsafe-math-optimizations -DNO_ASM -c add.c  -fPIC -DPIC -o .libs/add.o
In file included from /var/.mem/cache/portage/build/portage/dev-libs/gmp-6.1.0/work/gmp-6.1.0/gmp-impl.h:145:0,
                 from fib_table.c:4:
../gmp-mparam.h:1:1: error: unknown type name ‘clock_gettime’
 clock_gettime is 1.000ns accurate
 ^
../gmp-mparam.h:1:18: error: invalid suffix "ns" on floating constant
 clock_gettime is 1.000ns accurate
                  ^
../gmp-mparam.h:1:18: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before numeric constant
In file included from /var/.mem/cache/portage/build/portage/dev-libs/gmp-6.1.0/work/gmp-6.1.0/gmp-impl.h:145:0,
                 from add_1.c:34:
../gmp-mparam.h:1:1: error: unknown type name ‘clock_gettime’
 clock_gettime is 1.000ns accurate
 ^
../gmp-mparam.h:1:18: error: invalid suffix "ns" on floating constant
 clock_gettime is 1.000ns accurate
                  ^
../gmp-mparam.h:1:18: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before numeric constant
Makefile:492: recipe for target 'add_n.lo' failed
make[2]: *** [add_n.lo] Error 1
make[2]: *** Waiting for unfinished jobs....
Makefile:492: recipe for target 'add_1.lo' failed
make[2]: *** [add_1.lo] Error 1
Makefile:492: recipe for target 'fib_table.lo' failed
make[2]: *** [fib_table.lo] Error 1
In file included from /var/.mem/cache/portage/build/portage/dev-libs/gmp-6.1.0/work/gmp-6.1.0/gmp-impl.h:145:0,
                 from mp_bases.c:4:
../gmp-mparam.h:1:1: error: unknown type name ‘clock_gettime’
 clock_gettime is 1.000ns accurate
 ^
../gmp-mparam.h:1:18: error: invalid suffix "ns" on floating constant
 clock_gettime is 1.000ns accurate
                  ^
../gmp-mparam.h:1:18: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before numeric constant
In file included from /var/.mem/cache/portage/build/portage/dev-libs/gmp-6.1.0/work/gmp-6.1.0/gmp-impl.h:145:0,
                 from add.c:34:
../gmp-mparam.h:1:1: error: unknown type name ‘clock_gettime’
 clock_gettime is 1.000ns accurate
 ^
../gmp-mparam.h:1:18: error: invalid suffix "ns" on floating constant
 clock_gettime is 1.000ns accurate
                  ^
../gmp-mparam.h:1:18: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before numeric constant
Makefile:492: recipe for target 'mp_bases.lo' failed
make[2]: *** [mp_bases.lo] Error 1
Makefile:492: recipe for target 'add.lo' failed
make[2]: *** [add.lo] Error 1
make[2]: Leaving directory '/var/.mem/cache/portage/build/portage/dev-libs/gmp-6.1.0/work/gmp-6.1.0-.arm/mpn'
Makefile:954: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/var/.mem/cache/portage/build/portage/dev-libs/gmp-6.1.0/work/gmp-6.1.0-.arm'
Makefile:773: recipe for target 'all' failed
make: *** [all] Error 2
 * ERROR: dev-libs/gmp-6.1.0::srcshelton failed (compile phase):
 *   emake failed


... whilst `work/gmp-6.1.0-.arm/gmp-mparam.h` starts as follows:

"
clock_gettime is 1.000ns accurate
/* Generated by tuneup.c, 2016-07-01, gcc 4.9 */

#define DIVREM_1_NORM_THRESHOLD              3
"

This erroneous initial line appears to have been inserted from `work/gmp-6.1.0/tune/time.c`.

$ emerge --info
Portage 2.2.28 (python 2.7.10-final-0, default/linux/arm/13.0/armv7a, gcc-4.9.3, glibc-2.22-r4, 4.4.13-v7+ armv7l)
=================================================================
System uname: Linux-4.4.13-v7+-armv7l-with-gentoo-2.2
KiB Mem:      996468 total,    221220 free
KiB Swap:          0 total,         0 free
sh bash 4.3_p42-r1
ld GNU ld (Gentoo 2.25.1 p1.1) 2.25.1
distcc 3.2rc1 armv7a-hardfloat-linux-gnueabi [enabled]
app-shells/bash:          4.3_p42-r1
dev-lang/perl:            5.22.2
dev-lang/python:          2.7.10-r1
dev-util/cmake:           3.3.1-r1
dev-util/pkgconfig:       0.28-r2
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.19.1
sys-apps/sandbox:         2.10-r1
sys-devel/autoconf:       2.69
sys-devel/automake:       1.13.4, 1.14.1, 1.15
sys-devel/binutils:       2.25.1-r1
sys-devel/gcc:            4.8.5, 4.9.3
sys-devel/gcc-config:     1.7.3
sys-devel/libtool:        2.4.6
sys-devel/make:           4.1-r1
sys-kernel/linux-headers: 4.3 (virtual/os-headers)
sys-libs/glibc:           2.22-r4
Comment 1 Stuart Shelton 2016-07-01 16:38:32 UTC
FYI, confirmed that the same ebuild works on 32-bit x86.
Comment 2 . 2016-07-09 12:18:15 UTC
possible duplicate of https://bugs.gentoo.org/show_bug.cgi?id=568320
Comment 3 Mike Gilbert gentoo-dev 2016-07-16 16:00:13 UTC
Please attache a build log and provide emerge --info.