Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 152043 - dev-libs/tomsfastmath-0.05 fails to compile
Summary: dev-libs/tomsfastmath-0.05 fails to compile
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: SpanKY
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-10-20 01:20 UTC by Evil Compile Person
Modified: 2006-11-05 10:50 UTC (History)
1 user (show)

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 Evil Compile Person 2006-10-20 01:20:41 UTC
cc -O2 -march=i686 -pipe -Wall -W -Wshadow -I./    -c -o fp_mul_comba.o fp_mul_comba.c
fp_mul_comba.c: In function 'fp_mul_comba':
fp_mul_comba.c:258: error: can't find a register in class 'GENERAL_REGS' while reloading 'asm'
make: *** [fp_mul_comba.o] Error 1

!!! ERROR: dev-libs/tomsfastmath-0.05 failed.

Gentoo Base System version 1.12.5
Portage 2.1.1 (default-linux/x86/2006.1, gcc-4.1.1, glibc-2.4-r3, 2.6.16.16 x86_64)
=================================================================
System uname: 2.6.16.16 x86_64 AMD Athlon(tm) 64 Processor 3200+
Last Sync: Wed, 18 Oct 2006 17:00:01 +0000
ccache version 2.3 [disabled]
app-admin/eselect-compiler: [Not Present]
dev-java/java-config: [Not Present]
dev-lang/python:     2.4.3-r4
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.3
dev-util/confcache:  [Not Present]
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.9.6-r2
sys-devel/binutils:  2.16.1-r3
sys-devel/gcc-config: 1.3.13-r4
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.17-r1
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=i686 -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-O2 -march=i686 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks metadata-transfer sandbox sfperms strict"
GENTOO_MIRRORS="ftp://212.219.56.134/sites/www.ibiblio.org/gentoo/ ftp://ftp.snt.utwente.nl/pub/os/linux/gentoo"
LINGUAS=""
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude='/distfiles' --exclude='/local' --exclude='/packages'"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 berkdb bitmap-fonts cli cracklib crypt cups dlloader dri elibc_glibc fortran gdbm gpm input_devices_evdev input_devices_keyboard input_devices_mouse ipv6 isdnlog kernel_linux libg++ ncurses nls nptl nptlonly pam pcre perl ppds pppd python readline reflection session spl ssl tcpd truetype-fonts type1-fonts udev unicode userland_GNU video_cards_apm video_cards_ark video_cards_ati video_cards_chips video_cards_cirrus video_cards_cyrix video_cards_dummy video_cards_fbdev video_cards_glint video_cards_i128 video_cards_i740 video_cards_i810 video_cards_imstt video_cards_mga video_cards_neomagic video_cards_nsc video_cards_nv video_cards_rendition video_cards_s3 video_cards_s3virge video_cards_savage video_cards_siliconmotion video_cards_sis video_cards_sisusb video_cards_tdfx video_cards_tga video_cards_trident video_cards_tseng video_cards_v4l video_cards_vesa video_cards_vga video_cards_via video_cards_vmware video_cards_voodoo xorg zlib"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, MAKEOPTS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 SpanKY gentoo-dev 2006-10-21 21:03:50 UTC
fixed
Comment 2 Ali Polatel (RETIRED) gentoo-dev 2006-11-05 10:47:01 UTC
 Hi,
 This patch still doesn't fix the problem.I got this error :
"cc -O2 -pipe -march=pentium-m -mtune=pentium-m -fomit-frame-pointer -Wall -W -Wshadow -I./    -c -o fp_isprime.o fp_isprime.c
cc -O2 -pipe -march=pentium-m -mtune=pentium-m -fomit-frame-pointer -Wall -W -Wshadow -I./    -c -o fp_prime_random_ex.o fp_prime_random_ex.c
cc -O2 -pipe -march=pentium-m -mtune=pentium-m -fomit-frame-pointer -Wall -W -Wshadow -I./    -c -o fp_mul_comba.o fp_mul_comba.c
cc -O2 -pipe -march=pentium-m -mtune=pentium-m -fomit-frame-pointer -Wall -W -Wshadow -I./    -c -o fp_sqr_comba.o fp_sqr_comba.c
fp_sqr_comba_generic.c: In function `fp_sqr_comba':
fp_sqr_comba_generic.c:69: error: can't find a register in class `GENERAL_REGS' while reloading `asm'
make: *** [fp_sqr_comba.o] Error 1
make: *** Waiting for unfinished jobs...."
  I'm using hardened gcc so I switched to vanilla gcc and it was the same.I sent a mail to Tom St Dennis about the issue.He said x86 lacks registers and REQUIRES -fomit-frame-pointer to build.Using -fomit-frame-pointer with a vanilla compiler solved the problem without the patch.
  For hardened I don't know of any nice way to solve the problem but filtering pie flag allows the package to compile.
  What I offer is inheriting flag-o-matic and adding:
  
  isflag "-fomit-frame-pointer" || append-flags "-fomit-frame-pointer"
  gcc-specs-ssp && filter-flags -pie

  to src_compile().
  Thoughts?

   
Comment 3 Ali Polatel (RETIRED) gentoo-dev 2006-11-05 10:50:55 UTC
 Below is my emerge --info for clarity:
 
 Gentoo Base System version 1.12.5
Portage 2.1.1-r1 (selinux/2005.1/x86/hardened, gcc-vanilla, glibc-2.3.6-r4, 2.6.17-hardened-r1 i686)
=================================================================
System uname: 2.6.17-hardened-r1 i686 Intel(R) Pentium(R) M processor 1.73GHz
Last Sync: Sun, 05 Nov 2006 01:47:01 +0000
ccache version 2.3 [enabled]
app-admin/eselect-compiler: [Not Present]
dev-java/java-config: 1.3.7, 2.0.30
dev-lang/python:     2.4.3-r4
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.3
dev-util/confcache:  [Not Present]
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils:  2.16.1-r3
sys-devel/gcc-config: 1.3.13-r4
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.17-r1
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -pipe -march=pentium-m -mtune=pentium-m"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-O2 -pipe -march=pentium-m -mtune=pentium-m -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--verbose"
FEATURES="autoconfig candy ccache collision-protect distlocks loadpolicy metadata-transfer parallel-fetch sandbox selinux sesandbox sfperms strict"
GENTOO_MIRRORS="http://ftp.ntua.gr/pub/linux/gentoo/ http://mirror.switch.ch/ftp/mirror/gentoo/ http://www.die.unipd.it/pub/Linux/distributions/gentoo-sources/"
LINGUAS="tr"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude='/distfiles' --exclude='/local' --exclude='/packages'"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X acpi aiglx alsa arts bash-completion berkdb bzip2 cracklib crypt dlloader dri elibc_glibc hal hardened i810 input_devices_keyboard input_devices_mouse java kde kernel_linux linguas_tr logrotate ncurses nptl nptlonly opengl pam pcmcia pic python readline selinux sse sse2 ssl tcpd udev userland_GNU video_cards_i810 video_cards_i830 video_cards_i915 x86 xinetd zlib"
Unset:  CTARGET, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, PORTAGE_RSYNC_EXTRA_OPTS