View previous topic :: View next topic |
Author |
Message |
ShiroiKuma n00b
Joined: 09 Nov 2012 Posts: 40 Location: Japan
|
Posted: Thu Feb 14, 2013 4:34 am Post subject: [SOLVED] Emerge www-client/chromium-24.0.1312.56 fails |
|
|
I've been trying for several days now to compile Chromium on my 32bit Pentium-M Dell Inspiron 6000 laptop. As this is not the best laptop, I usually use ccache and distcc to speed things up, however if I do encounter problems, I always try disabling ccache, distcc and set MAKEOPTS to -j1.
Some possibly important information from eselect and gcc-config
Quote: | Profile: hardened/linux/x86/selinux
GCC: i686-pc-linux-gnu-4.6.3
Kernel: linux-3.7.0-hardened |
My emerge command Code: | FEATURES="-ccache -distcc" MAKEOPTS="-j1" emerge chromium |
But this results in a failure. (I've also tried with and without bindist), both result in the same error. The error is at the end of this post.
The output of the following info command
Code: | FEATURES="-ccache -distcc" MAKEOPTS="-j1" emerge --info '=www-client/chromium-24.0.1312.56' | is as follows, and yes I am using a local rsync to save bandwidth on the mirrors.
Code: | Portage 2.1.11.50 (hardened/linux/x86/selinux, gcc-4.6.3, glibc-2.15-r3, 3.7.0-hardened i686)
=================================================================
System Settings
=================================================================
System uname: Linux-3.7.0-hardened-i686-Intel-R-_Pentium-R-_M_processor_2.00GHz-with-gentoo-2.1
KiB Mem: 2068592 total, 222852 free
KiB Swap: 6290740 total, 6290740 free
Timestamp of tree: Thu, 14 Feb 2013 01:45:01 +0000
ld GNU ld (GNU Binutils) 2.22
distcc 3.1 i686-pc-linux-gnu [disabled]
ccache version 3.1.8 [disabled]
app-shells/bash: 4.2_p37
dev-lang/python: 2.7.3-r2, 3.2.3
dev-util/ccache: 3.1.8
dev-util/cmake: 2.8.9
dev-util/pkgconfig: 0.28
sys-apps/baselayout: 2.1-r1
sys-apps/openrc: 0.11.8
sys-apps/sandbox: 2.5
sys-devel/autoconf: 2.13, 2.69
sys-devel/automake: 1.11.6
sys-devel/binutils: 2.22-r1
sys-devel/gcc: 4.5.4, 4.6.3
sys-devel/gcc-config: 1.7.3
sys-devel/libtool: 2.4-r1
sys-devel/make: 3.82-r4
sys-kernel/linux-headers: 3.6 (virtual/os-headers)
sys-libs/glibc: 2.15-r3
Repositories: gentoo x-portage
ACCEPT_KEYWORDS="x86"
ACCEPT_LICENSE="* -@EULA Oracle-BCLA-JavaSE"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=pentium-m -fno-omit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -march=pentium-m -fno-omit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-march=i686 -O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch protect-owned sandbox selinux sesandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FFLAGS="-march=i686 -O2 -pipe"
GENTOO_MIRRORS="http://ftp.jaist.ac.jp/pub/Linux/Gentoo/"
LANG="en_GB.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j1"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://192.168.11.13/gentoo-portage"
USE="X acpi berkdb bzip2 cjk cli consolekit cracklib crypt cxx dri gdbm gpm hardened iconv icu ipv6 minizip mmx modules mp3 mudflap ncurses nls nptl open_perms openmp pam pax_kernel pcre pic png python readline selinux session sse sse2 ssl tcpd truetype udev unicode urandom x264 x86 xcb xft xvid zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" 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" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" 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 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" LINGUAS="en_GB ja" PHP_TARGETS="php5-3" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_2" RUBY_TARGETS="ruby18 ruby19" USERLAND="GNU" VIDEO_CARDS="radeon" 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: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON |
The last few lines of the build log are Code: | rm -f out/Release/obj.target/third_party/ffmpeg/libffmpeg_yasm.a && i686-pc-linux-gnu-ar crsT out/Release/obj.target/third_party/ffmpeg/libffmpeg_yasm.a out/Release/obj.target/ffmpeg_yasm/third_party/ffmpeg/xcode_hack.o out/Release/obj/gen/third_party/ffmpeg/yasm/dct32.o out/Release/obj/gen/third_party/ffmpeg/yasm/h264_chromamc.o out/Release/obj/gen/third_party/ffmpeg/yasm/h264_chromamc_10bit.o out/Release/obj/gen/third_party/ffmpeg/yasm/h264_deblock.o out/Release/obj/gen/third_party/ffmpeg/yasm/h264_deblock_10bit.o out/Release/obj/gen/third_party/ffmpeg/yasm/h264_idct.o out/Release/obj/gen/third_party/ffmpeg/yasm/h264_idct_10bit.o out/Release/obj/gen/third_party/ffmpeg/yasm/h264_weight.o out/Release/obj/gen/third_party/ffmpeg/yasm/h264_weight_10bit.o out/Release/obj/gen/third_party/ffmpeg/yasm/imdct36.o out/Release/obj/gen/third_party/ffmpeg/yasm/sbrdsp.o out/Release/obj/gen/third_party/ffmpeg/yasm/deinterlace.o out/Release/obj/gen/third_party/ffmpeg/yasm/dsputil.o out/Release/obj/gen/third_party/ffmpeg/yasm/fft.o out/Release/obj/gen/third_party/ffmpeg/yasm/fmtconvert.o out/Release/obj/gen/third_party/ffmpeg/yasm/h264_intrapred.o out/Release/obj/gen/third_party/ffmpeg/yasm/h264_intrapred_10bit.o out/Release/obj/gen/third_party/ffmpeg/yasm/h264_qpel_10bit.o out/Release/obj/gen/third_party/ffmpeg/yasm/vp3dsp.o out/Release/obj/gen/third_party/ffmpeg/yasm/vp8dsp.o out/Release/obj/gen/third_party/ffmpeg/yasm/float_dsp.o
i686-pc-linux-gnu-gcc '-D_FILE_OFFSET_BITS=64' '-DNO_TCMALLOC' '-DCHROMIUM_BUILD' '-DUSE_LIBJPEG_TURBO=1' '-DUSE_NSS=1' '-DENABLE_ONE_CLICK_SIGNIN' '-DGTK_DISABLE_SINGLE_INCLUDES=1' '-DENABLE_REMOTING=1' '-DENABLE_WEBRTC=1' '-DUSE_PROPRIETARY_CODECS' '-DENABLE_CONFIGURATION_POLICY' '-DENABLE_INPUT_SPEECH' '-DENABLE_NOTIFICATIONS' '-DCHROMIUM_SELINUX=1' '-DENABLE_GPU=1' '-DENABLE_EGLIMAGE=1' '-DUSE_SKIA=1' '-DENABLE_TASK_MANAGER=1' '-DENABLE_WEB_INTENTS=1' '-DENABLE_EXTENSIONS=1' '-DENABLE_PLUGIN_INSTALLATION=1' '-DENABLE_PROTECTOR_SERVICE=1' '-DENABLE_SESSION_SERVICE=1' '-DENABLE_THEMES=1' '-DENABLE_BACKGROUND=1' '-DENABLE_AUTOMATION=1' '-DENABLE_PRINTING=1' '-DENABLE_CAPTIVE_PORTAL_DETECTION=1' '-DHAVE_AV_CONFIG_H' '-D_POSIX_C_SOURCE=200112' '-D_XOPEN_SOURCE=600' '-DPIC' '-D_ISOC99_SOURCE' '-D_LARGEFILE_SOURCE' '-DNDEBUG' '-DNVALGRIND' '-DDYNAMIC_ANNOTATIONS_ENABLED=0' -Ithird_party/ffmpeg/chromium/config/Chrome/linux/ia32 -Ithird_party/ffmpeg -pthread -fno-exceptions -fno-strict-aliasing -Wno-unused-parameter -Wno-missing-field-initializers -pipe -fPIC -fPIC -fomit-frame-pointer -w -std=c99 -pthread -fno-math-errno -fno-signed-zeros -fno-tree-vectorize -fomit-frame-pointer -Wno-deprecated-declarations -Wno-format -Wno-unused-result -m32 -mmmx -O2 -fno-ident -fdata-sections -ffunction-sections -MMD -MF out/Release/.deps/out/Release/obj.target/ffmpegsumo/third_party/ffmpeg/libavcodec/x86/h264dsp_init.o.d.raw -O2 -march=pentium-m -fno-omit-frame-pointer -c -o out/Release/obj.target/ffmpegsumo/third_party/ffmpeg/libavcodec/x86/h264dsp_init.o third_party/ffmpeg/libavcodec/x86/h264dsp_init.c
i686-pc-linux-gnu-gcc '-D_FILE_OFFSET_BITS=64' '-DNO_TCMALLOC' '-DCHROMIUM_BUILD' '-DUSE_LIBJPEG_TURBO=1' '-DUSE_NSS=1' '-DENABLE_ONE_CLICK_SIGNIN' '-DGTK_DISABLE_SINGLE_INCLUDES=1' '-DENABLE_REMOTING=1' '-DENABLE_WEBRTC=1' '-DUSE_PROPRIETARY_CODECS' '-DENABLE_CONFIGURATION_POLICY' '-DENABLE_INPUT_SPEECH' '-DENABLE_NOTIFICATIONS' '-DCHROMIUM_SELINUX=1' '-DENABLE_GPU=1' '-DENABLE_EGLIMAGE=1' '-DUSE_SKIA=1' '-DENABLE_TASK_MANAGER=1' '-DENABLE_WEB_INTENTS=1' '-DENABLE_EXTENSIONS=1' '-DENABLE_PLUGIN_INSTALLATION=1' '-DENABLE_PROTECTOR_SERVICE=1' '-DENABLE_SESSION_SERVICE=1' '-DENABLE_THEMES=1' '-DENABLE_BACKGROUND=1' '-DENABLE_AUTOMATION=1' '-DENABLE_PRINTING=1' '-DENABLE_CAPTIVE_PORTAL_DETECTION=1' '-DHAVE_AV_CONFIG_H' '-D_POSIX_C_SOURCE=200112' '-D_XOPEN_SOURCE=600' '-DPIC' '-D_ISOC99_SOURCE' '-D_LARGEFILE_SOURCE' '-DNDEBUG' '-DNVALGRIND' '-DDYNAMIC_ANNOTATIONS_ENABLED=0' -Ithird_party/ffmpeg/chromium/config/Chrome/linux/ia32 -Ithird_party/ffmpeg -pthread -fno-exceptions -fno-strict-aliasing -Wno-unused-parameter -Wno-missing-field-initializers -pipe -fPIC -fPIC -fomit-frame-pointer -w -std=c99 -pthread -fno-math-errno -fno-signed-zeros -fno-tree-vectorize -fomit-frame-pointer -Wno-deprecated-declarations -Wno-format -Wno-unused-result -m32 -mmmx -O2 -fno-ident -fdata-sections -ffunction-sections -MMD -MF out/Release/.deps/out/Release/obj.target/ffmpegsumo/third_party/ffmpeg/libavcodec/x86/mpegaudiodec.o.d.raw -O2 -march=pentium-m -fno-omit-frame-pointer -c -o out/Release/obj.target/ffmpegsumo/third_party/ffmpeg/libavcodec/x86/mpegaudiodec.o third_party/ffmpeg/libavcodec/x86/mpegaudiodec.c
third_party/ffmpeg/libavcodec/x86/mpegaudiodec.c: In function âapply_window.constprop.0â:
third_party/ffmpeg/libavcodec/x86/mpegaudiodec.c:81:5: error: canât find a register in class âGENERAL_REGSâ while reloading âasmâ
third_party/ffmpeg/libavcodec/x86/mpegaudiodec.c:81:5: error: âasmâ operand has impossible constraints
make: *** [out/Release/obj.target/ffmpegsumo/third_party/ffmpeg/libavcodec/x86/mpegaudiodec.o] Error 1
* ERROR: www-client/chromium-24.0.1312.56 failed (compile phase):
* emake failed
*
* If you need support, post the output of `emerge --info '=www-client/chromium-24.0.1312.56'`,
* the complete build log and the output of `emerge -pqv '=www-client/chromium-24.0.1312.56'`.
* The complete build log is located at '/var/tmp/portage/www-client/chromium-24.0.1312.56/temp/build.log'.
* The ebuild environment file is located at '/var/tmp/portage/www-client/chromium-24.0.1312.56/temp/environment'.
* Working directory: '/var/tmp/portage/www-client/chromium-24.0.1312.56/work/chromium-24.0.1312.56'
* S: '/var/tmp/portage/www-client/chromium-24.0.1312.56/work/chromium-24.0.1312.56' |
I can post the full build log if needed, but it's 13mb
The output from Code: | FEATURES="-ccache -distcc" MAKETOPS="-j1" emerge -pqv '=www-client/chromium-24.0.1312.56' | is Code: | [ebuild N ] www-client/chromium-24.0.1312.56 USE="(selinux) -bindist -cups -custom-cflags -gnome -gnome-keyring -kerberos (-pulseaudio) (-tcmalloc) {-test}" LINGUAS="en_GB ja -am -ar -bg -bn -ca -cs -da -de -el -es -es_LA -et -fa -fi -fil -fr -gu -he -hi -hr -hu -id -it -kn -ko -lt -lv -ml -mr -ms -nb -nl -pl -pt_BR -pt_PT -ro -ru -sk -sl -sr -sv -sw -ta -te -th -tr -uk -vi -zh_CN -zh_TW" |
Any help on this is appreciated.
Last edited by ShiroiKuma on Sat Feb 16, 2013 4:50 pm; edited 1 time in total |
|
Back to top |
|
|
gienah Developer
Joined: 24 Nov 2010 Posts: 212 Location: AU
|
Posted: Fri Feb 15, 2013 2:20 am Post subject: |
|
|
An idea to try is turning on the www-client/chromium system-ffmpeg USE flag. A line like this in /etc/portage/package.use will enable it:
www-client/chromium system-ffmpeg
Last edited by gienah on Fri Feb 15, 2013 2:47 am; edited 1 time in total |
|
Back to top |
|
|
ShiroiKuma n00b
Joined: 09 Nov 2012 Posts: 40 Location: Japan
|
Posted: Fri Feb 15, 2013 2:36 am Post subject: |
|
|
Thanks, I'll try that shortly. I tried emergeing ffmpeg directly, that failed with a similar error.
I changed my CFLAGS temporarily from
Code: | CFLAGS="-O2 -march=pentium-m -fno-omit-frame-pointer" |
to
Code: | CFLAGS="-O2 -march=pentium-m -fomit-frame-pointer" |
and ffmpeg itself actually emerged now.
I now recall that I only started using -fno-omit-frame-pointer as a workaround because GCC 4.6.3 fails to compile with pentium-m's without it. Comment #33 on the bug https://bugs.gentoo.org/show_bug.cgi?id=411333 was what helped me out with that one. Only, I didn't switch it back to normal.
I'm trying it again with -fomit-frame-pointer, should it fail, I'll then try with system-ffmpeg. Could take awhile, I'll report back soon. |
|
Back to top |
|
|
gienah Developer
Joined: 24 Nov 2010 Posts: 212 Location: AU
|
|
Back to top |
|
|
floppymaster Developer
Joined: 07 Jul 2010 Posts: 229 Location: Detroit, MI, USA
|
Posted: Sat Feb 16, 2013 4:46 pm Post subject: |
|
|
Interesting... it definitely seems like a bug in gcc if it fails without -fno-omit-frame-pointer.
For ffmpeg I can understand, since there's a lot of hand-written assembly. |
|
Back to top |
|
|
ShiroiKuma n00b
Joined: 09 Nov 2012 Posts: 40 Location: Japan
|
Posted: Sat Feb 16, 2013 4:55 pm Post subject: |
|
|
Well I managed to resolve it, both chromium and ffmpeg now emerge without problem.
GCC 4.5.4 is unable to compile GCC 4.6.3 with -march=pentium-m, unless you have -fno-omit-frame-pointer included.
So the full solution to this episode was to use GCC 4.5.4 to compile GCC 4.6.3 with -O2 -march=pentium-m -fno-omit-frame-pointer.
Second step, recompile GCC 4.6.3 (using GCC 4.6.3 now) with -O2 -march=pentium-m -fomit-frame-pointer
After that, 4.6.3 compiles happily along. It's a weird workaround on the GCC bug, but they did they say 4.6.3 was left masked for that reason and in 4.7 it's fixed (from reading comments). Just glad it's working now though. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|