Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 599902 - dev-lisp/sbcl-1.3.11 : x86_64-pc-linux-gnu-gcc: error: unrecognized command line option '-no-pie'
Summary: dev-lisp/sbcl-1.3.11 : x86_64-pc-linux-gnu-gcc: error: unrecognized command l...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Panagiotis Christopoulos (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-11-15 17:32 UTC by Toralf Förster
Modified: 2017-01-30 12:17 UTC (History)
5 users (show)

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


Attachments
dev-lisp:sbcl-1.3.11:20161115-172628.log (dev-lisp:sbcl-1.3.11:20161115-172628.log,9.25 KB, text/plain)
2016-11-15 17:32 UTC, Toralf Förster
Details
emerge-history.txt (emerge-history.txt,76.26 KB, text/plain)
2016-11-15 17:32 UTC, Toralf Förster
Details
environment (environment,97.66 KB, text/plain)
2016-11-15 17:32 UTC, Toralf Förster
Details
patch (sbcl-1.3.11.config.patch,630 bytes, patch)
2016-11-16 16:38 UTC, Andrey Grozin
Details | Diff
full build log (sbcl-build.log,9.95 KB, text/x-log)
2017-01-25 21:30 UTC, Anton Kochkov
Details
emerge --info output (emerge_info.log,16.96 KB, text/x-log)
2017-01-25 21:31 UTC, Anton Kochkov
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Toralf Förster gentoo-dev 2016-11-15 17:32:40 UTC
make: Entering directory '/var/tmp/portage/dev-lisp/sbcl-1.3.11/work/sbcl-1.3.11/tools-for-build'
x86_64-pc-linux-gnu-gcc -march=native -O2 -pipe -fno-omit-frame-pointer -fno-pie -fno-pie -I../src/runtime -Wl,-O1 -Wl,--as-needed -nopie -no-pie  determine-endianness.c  -ldl -o determine-endianness
x86_64-pc-linux-gnu-gcc: error: unrecognized command line option '-no-pie'
make: *** [<builtin>: determine-endianness] Error 1
make: Leaving directory '/var/tmp/portage/dev-lisp/sbcl-1.3.11/work/sbcl-1.3.11/tools-for-build'
 * ERROR: dev-lisp/sbcl-1.3.11::gentoo failed (compile phase):


$ cat emerge-info.txt
  -----------------------------------------------------------------

  This is an unstable amd64 chroot image (named amd64-hardened-no-multilib-libressl-unstable_20161114-134059) at a hardened host acting as a tinderbox.

  -----------------------------------------------------------------
  USE flags ...

  ... in make.conf:
USE="  -openssl -gnutls libressl pax_kernel xtpax -cdinstall -oci8 -bindist ssp cdda consolekit git glamor -gles2 graphtft -gtk3 llvm mdnsresponder-compat midi minimal -minizip mp3 pam php postproc postscript -printsupport -pyqt4 qml rendering ruby sasl -scrypt smime source sql ssh ssh-askpass system-sqlite -tcl -tools x265 xinetd xz"

  ... in /etc/portage/package.use/*:
  mail-mta/ssmtp      mta ssl
  net-misc/wget       ssl
  app-editors/xemacs  -nopie
  dev-db/sqlite           secure-delete
  dev-lang/python         sqlite
  dev-qt/qtsql            sqlite
  mail-client/thunderbird -pulseaudio system-icu
  media-libs/libvpx       postproc
  media-libs/libpng       apng
  media-sound/pulseaudio  alsa
  media-video/ffmpeg      sdl
  sys-libs/ntdb           python
  sys-libs/tdb            python
  sys-libs/tevent         python
  x11-libs/cairo          X
  x11-libs/libxcb         xkb
  www-client/firefox      -pulseaudio system-icu
  app-crypt/mit-krb5      -pkinit
  media-video/ffmpeg      -sdl
  sys-libs/zlib           minizip
  x11-base/xorg-server    glamor -minimal
  app-crypt/pinentry  -qt4
  app-editors/emacs   -dbus -gtk -gtk3 -ssl -svg
  app-text/docbook-xsl-stylesheets  -ruby
  app-text/xmlto      -latex
  dev-libs/boehm-gc   threads
  dev-libs/libpcre    pcre16
  dev-lang/python     threads
  dev-qt/qtgui        egl eglfs
  dev-util/cmake      -qt4 -qt5
  dev-vcs/git         -gtk -perl
  gnome-base/librsvg  -tools
  media-libs/mesa     -vaapi -video_cards_radeonsi -video_cards_radeon
  net-nds/openldap    -sasl
  sys-apps/kmod       tools
  sys-libs/ncurses    -gpm
  x11-libs/gtk+       -cups
  sys-auth/polkit     -kde
  app-text/xmlto      -text
  net-misc/openssh    ssl
  sys-apps/busybox    -pam
  net-misc/iputils -caps -filecaps
  dev-db/mysql-connector-c  -ssl
  dev-lang/python           -tk
  dev-qt/qtsql              -mysql
  mail-mta/ssmtp            libressl -gnutls
  >=dev-libs/glib-2.50.2 dbus

  entries in /etc/portage/package.unmask/*:
  ~sys-apps/sandbox-2.11
  ~dev-libs/botan-1.11.32
  ~sys-devel/flex-2.6.2
  -----------------------------------------------------------------

gcc-config -l:
 [1] x86_64-pc-linux-gnu-4.9.3
 [2] x86_64-pc-linux-gnu-4.9.3-hardenednopie
 [3] x86_64-pc-linux-gnu-4.9.3-hardenednopiessp
 [4] x86_64-pc-linux-gnu-4.9.3-hardenednossp
 [5] x86_64-pc-linux-gnu-4.9.3-vanilla
 [6] x86_64-pc-linux-gnu-5.4.0 *
 [7] x86_64-pc-linux-gnu-5.4.0-hardenednopie
 [8] x86_64-pc-linux-gnu-5.4.0-hardenednopiessp
 [9] x86_64-pc-linux-gnu-5.4.0-hardenednossp
 [10] x86_64-pc-linux-gnu-5.4.0-vanilla
llvm-config --version:
3.9.0

Available Python interpreters, in order of preference:
  [1]   python3.4
  [2]   python2.7 (fallback)

java-config:

  -----------------------------------------------------------------

Portage 2.3.2 (python 3.4.5-final-0, hardened/linux/amd64/no-multilib, gcc-5.4.0, glibc-2.23-r3, 4.8.7-hardened x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-4.8.7-hardened-x86_64-Intel-R-_Core-TM-_i7-3930K_CPU_@_3.20GHz-with-gentoo-2.3
KiB Mem:    65285560 total,   1044172 free
KiB Swap:   67108860 total,  67103272 free
Timestamp of repository gentoo: Tue, 15 Nov 2016 17:03:16 +0000
sh bash 4.4_p5
ld GNU ld (Gentoo 2.26.1 p1.0) 2.26.1
app-shells/bash:          4.4_p5::gentoo
dev-lang/perl:            5.24.0-r2::gentoo
dev-lang/python:          2.7.12::gentoo, 3.4.5::gentoo
dev-util/cmake:           3.7.0::gentoo
dev-util/pkgconfig:       0.29.1::gentoo
sys-apps/baselayout:      2.3::gentoo
sys-apps/openrc:          0.22.3-r1::gentoo
sys-apps/sandbox:         2.11-r2::gentoo
sys-devel/autoconf:       2.69-r2::gentoo
sys-devel/automake:       1.13.4-r1::gentoo, 1.14.1-r1::gentoo, 1.15-r2::gentoo
sys-devel/binutils:       2.26.1::gentoo, 2.27::gentoo
sys-devel/gcc:            4.9.3::gentoo, 5.4.0::gentoo
sys-devel/gcc-config:     1.8-r1::gentoo
sys-devel/libtool:        2.4.6-r2::gentoo
sys-devel/make:           4.2.1::gentoo
sys-kernel/linux-headers: 4.8::gentoo (virtual/os-headers)
sys-libs/glibc:           2.23-r3::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: 1

tinderbox
    location: /tmp/tb/data/portage
    masters: gentoo
    priority: 2

local
    location: /usr/local/portage
    masters: gentoo
    priority: 3

ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/fax /usr/share/gnupg/qualified.txt /var/spool/fax/etc"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php7.0/ext-active/ /etc/php/cgi-php7.0/ext-active/ /etc/php/cli-php7.0/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=native -O2 -pipe"
DISTDIR="/var/tmp/distfiles"
EMERGE_DEFAULT_OPTS="--verbose --verbose-conflicts --color=n --nospinner --tree --quiet-build"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync network-sandbox parallel-fetch preserve-libs protect-owned sandbox sfperms strict test-fail-continue unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://ftp.uni-erlangen.de/pub/mirrors/gentoo rsync://mirror.netcologne.de/gentoo/ ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gor.bytemark.co.uk/gentoo/ rsync://ftp.snt.utwente.nl/gentoo"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j1"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
USE="acl amd64 berkdb bzip2 cdda cli consolekit cracklib crypt cxx dri gdbm git glamor graphtft hardened iconv ipv6 justify libressl llvm mdnsresponder-compat midi minimal mmx mmxext modules mp3 ncurses nls nptl openmp pam pax_kernel pcre php pie postproc postscript qml readline rendering ruby sasl seccomp session smime source sql sse sse2 ssh ssh-askpass ssl ssp system-sqlite tcpd unicode urandom x265 xattr xinetd xtpax xz zlib" ABI_X86="64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd 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 cgi cgid 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" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" CURL_SSL="libressl" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_4" RUBY_TARGETS="ruby20 ruby21" USERLAND="GNU" VIDEO_CARDS="amdgpu fbdev intel nouveau radeon radeonsi vesa dummy v4l" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CC, CPPFLAGS, CTARGET, CXX, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Comment 1 Toralf Förster gentoo-dev 2016-11-15 17:32:43 UTC
Created attachment 453400 [details]
dev-lisp:sbcl-1.3.11:20161115-172628.log
Comment 2 Toralf Förster gentoo-dev 2016-11-15 17:32:47 UTC
Created attachment 453402 [details]
emerge-history.txt
Comment 3 Toralf Förster gentoo-dev 2016-11-15 17:32:50 UTC
Created attachment 453404 [details]
environment
Comment 4 Andrey Grozin gentoo-dev 2016-11-16 15:57:50 UTC
Your log file:
================================================================
+ make -C tools-for-build determine-endianness -I ../src/runtime
make: Entering directory '/var/tmp/portage/dev-lisp/sbcl-1.3.11/work/sbcl-1.3.11/tools-for-build'
x86_64-pc-linux-gnu-gcc -march=native -O2 -pipe -fno-omit-frame-pointer -fno-pie -fno-pie -I../src/runtime -Wl,-O1 -Wl,--as-needed -nopie -no-pie  determine-endianness.c  -ldl -o determine-endianness
x86_64-pc-linux-gnu-gcc: error: unrecognized command line option '-no-pie'
make: *** [<builtin>: determine-endianness] Error 1
make: Leaving directory '/var/tmp/portage/dev-lisp/sbcl-1.3.11/work/sbcl-1.3.11/tools-for-build'
================================================================

My log file:
================================================================
+ make -C tools-for-build determine-endianness -I ../src/runtime
make: Entering directory '/var/tmp/portage/dev-lisp/sbcl-1.3.11/work/sbcl-1.3.11/tools-for-build'
x86_64-pc-linux-gnu-gcc -O2 -march=native -pipe -fno-omit-frame-pointer -I../src/runtime -Wl,-O1 -Wl,--as-needed  determine-endianness.c  -ldl -o determine-endianness
make: Leaving directory '/var/tmp/portage/dev-lisp/sbcl-1.3.11/work/sbcl-1.3.11/tools-for-build'
+ tools-for-build/determine-endianness
+ export sbcl_os sbcl_arch
================================================================

My log file does not contain -fno-pie. And indeed, I cannot find -fno-pie in gcc-5.4 docs (I use 5.4).

sbcl-1.3.11/src/runtime/Config.x86-64-linux contains the following:

# Hardened GCC enables PIE by default
ifneq ($(shell $(CC) -dumpspecs 2>/dev/null | grep -e nopie),)
CFLAGS += -fno-pie
LINKFLAGS += -nopie
LDFLAGS += -nopie
endif

# The following works for Ubuntu 16.10. There must be a better way to
# do this across various flavors of linux.
ifneq ($(shell $(CC) -dumpspecs 2>/dev/null | grep -e no-pie),)
CFLAGS += -fno-pie
LINKFLAGS += -no-pie
LDFLAGS += -no-pie
endif

It seems that on your system
gcc -dumpspecs
contains "nopie" or "no-pie" or both (most probably, because -fno-pie is appended twice). On my system

grozin@dns ~ $ gcc -dumpspecs | fgrep no-pie
grozin@dns ~ $ gcc -dumpspecs | fgrep nopie
grozin@dns ~ $

and -fno-pie is not appended. I suppose your situation is specific for hardened gcc. But the work-around in Config.x86-64-linux does not work. I'll contact the upstream about it.
Comment 5 Toralf Förster gentoo-dev 2016-11-16 16:09:08 UTC
(In reply to Andrey Grozin from comment #4)

indeed:

# gcc -dumpspecs | fgrep no-pie
%{!pie:%{!A:%{!fno-pie:%{!fno-PIE:%{!fno-pic:%{!fno-PIC:%{!shared:%{!r:                                %{!nostdlib:%{!nostartfiles:-pie}}}}}}}}}}
%{!pie: %{!fpic:%{!fPIC:%{!fpie:%{!fPIE: %{!fno-pic:%{!fno-PIC:%{!fno-pie:%{!fno-PIE:                  %{!shared: %{!nostdlib: %{!nostartfiles:-fPIE}} } }}}} }}}} }
Comment 6 Andrey Grozin gentoo-dev 2016-11-16 16:38:44 UTC
Created attachment 453546 [details, diff]
patch

What if you try the attached patch which reverts Config.x86-64-linux to the state it had in sbcl-1.3.9?
Comment 7 Andrey Grozin gentoo-dev 2016-11-16 17:41:04 UTC
I'm nearly sure that this will fix your problem (because there was no problems with 1.3.9). Leaving this bug open until you confirm that everything's OK.

commit 7bfab2119e74409da904f5e21e19463cc17ca43b
Author: Andrey Grozin <grozin@gentoo.org>
Date:   Thu Nov 17 00:37:42 2016 +0700

    dev-lisp/sbcl: fix problem with hardened gcc in 1.3.11
    
    Bug: 599902
    
    Package-Manager: portage-2.3.0
Comment 8 Toralf Förster gentoo-dev 2016-11-16 19:52:24 UTC
(In reply to Andrey Grozin from comment #7)
indeed fixed at the affected image
Comment 9 Andrey Grozin gentoo-dev 2016-11-17 03:16:46 UTC
(In reply to Toralf Förster from comment #8)
> indeed fixed at the affected image
Thanks
Comment 10 Anton Kochkov 2017-01-25 21:22:10 UTC
This error reappeared in sbcl-1.3.13 again.
Comment 11 Anton Kochkov 2017-01-25 21:30:54 UTC
Created attachment 461442 [details]
full build log

make: Entering directory '/var/tmp/portage/dev-lisp/sbcl-1.3.13/work/sbcl-1.3.13/tools-for-build'
i686-pc-linux-gnu-gcc -O2 -march=core2 -mmmx -msse -msse2 -mssse3 -pipe -m32 -fno-omit-frame-pointer -fno-pie -fno-pie -I../src/runtime -Wl,-O1 -Wl,--as-needed -nopie -no-pie  determine-endianness.c  -ldl -o determine-endianness
i686-pc-linux-gnu-gcc: error: unrecognized command line option '-no-pie'
make: *** [<builtin>: determine-endianness] Error 1
make: Leaving directory '/var/tmp/portage/dev-lisp/sbcl-1.3.13/work/sbcl-1.3.13/tools-for-build'
Comment 12 Anton Kochkov 2017-01-25 21:31:28 UTC
Created attachment 461444 [details]
emerge --info output
Comment 13 Anton Kochkov 2017-01-30 12:17:34 UTC
I've opened a separate bug, since it was fixed for the 1.3.11 version, just appear  in a different way in 1.3.13 https://bugs.gentoo.org/show_bug.cgi?id=607302