I cannot compile chromium-5.0.396.0 or 9999 (I haven't tried the others). Compilation fails with: /usr/include/libavutil/common.h: In function 'int32_t av_clipl_int32(int64_t)': /usr/include/libavutil/common.h:154: error: 'UINT64_C' was not declared in this scope Reproducible: Always
Created attachment 230795 [details] System info generated by paludis
Confirmed. Basically chromium isn't including the C header in a C++ file properly. There's also a flamewar on FFmpeg-devel: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2010-May/088074.html But it should definitely be chromium's fault and here's the upstream bug: http://code.google.com/p/chromium/issues/detail?id=43778
I couldn't reproduce it, but does the workaround from http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2010-May/088076.html fix it for you?
Yes it does but I don't really feel comfortable with it hanging around in global CXXFLAGS. Is it possible to put it in the ebuild?
The most recent www-client/chromium ebuild applies the workaround. Thanks for finding the upstream bug report.
*** Bug 321421 has been marked as a duplicate of this bug. ***
You will not believe that a chromium developer set wontfix flag. Because "chromium doesn't support H264" http://crbug.com/43778 Someone should relieve him of his charge. Or we do like they do. Take their code and fork. Then we create the patch they should create and include it in icedewgong. What's that? Our open source, open minded, (C) logos free version of chromium. Like debian guys did. >:-þ
Heh, re-opening then to make sure this is not lost. I'm going to take care of that upstream, sooner or later.
Looks like the upstream has fixed it nicely.
*** Bug 324359 has been marked as a duplicate of this bug. ***
Please reopen this bug; chromium-5.0.375.86 (the latest unmasked version in portage) fails to compile with ffmpeg-0.6 with an identical error message: emerge chromium [...] In file included from /usr/include/libavutil/avutil.h:81:0, from /usr/include/libavcodec/avcodec.h:30, from out/Release/obj.target/geni/ffmpeg_stubs.cc:16: /usr/include/libavutil/common.h: In function ‘int32_t av_clipl_int32(int64_t)’: /usr/include/libavutil/common.h:154:47: error: ‘UINT64_C’ was not declared in this scope make: *** [out/Release/obj.target/geni/ffmpeg_stubs.o] Error 1 make: *** Waiting for unfinished jobs.... * ERROR: www-client/chromium-5.0.375.86 failed: * compilation failed
Created attachment 236681 [details] build log The full build log for chromium-5.0.375.86 Even though the ebuild includes the line "append-flags -D__STDC_CONSTANT_MACROS", the flag does not appear anywhere in the build log.
check if the ebuild has inherits flag-o-matic
(In reply to comment #11) > Please reopen this bug; chromium-5.0.375.86 (the latest unmasked version in > portage) fails to compile with ffmpeg-0.6 with an identical error message: I can't reproduce. Just checked my build.log and it did contain -D__STDC_CONSTANT_MACROS. Make sure you're using the ebuild from recently synced portage, and no overlay is interfering.
Created attachment 236699 [details] build environment (In reply to comment #14) > I can't reproduce. Just checked my build.log and it did contain > -D__STDC_CONSTANT_MACROS. Make sure you're using the ebuild from recently > synced portage, and no overlay is interfering. I just resynced and disabled all overlays (PORTDIR_OVERLAY=""), and I still got the same error. I'm attaching my /var/tmp/portage/www-client/chromium-5.0.375.86/temp/environment file. As you can see, -D__STDC_CONSTANT_MACROS flag is being added to the CXXFLAGS environment variable, but it's not in the build log, so it seems that for some reason, the build process is not using it: # grep D__STDC_CONSTANT_MACROS /var/tmp/portage/www-client/chromium-5.0.375.86/temp/* /var/tmp/portage/www-client/chromium-5.0.375.86/temp/environment:declare -x CFLAGS="-march=native -O2 -pipe -ggdb -D__STDC_CONSTANT_MACROS" /var/tmp/portage/www-client/chromium-5.0.375.86/temp/environment:declare -x CXXFLAGS="-march=native -O2 -pipe -ggdb -D__STDC_CONSTANT_MACROS" /var/tmp/portage/www-client/chromium-5.0.375.86/temp/environment:declare -x FCFLAGS=" -D__STDC_CONSTANT_MACROS" /var/tmp/portage/www-client/chromium-5.0.375.86/temp/environment:declare -x FFLAGS=" -D__STDC_CONSTANT_MACROS" /var/tmp/portage/www-client/chromium-5.0.375.86/temp/environment: append-flags -D__STDC_CONSTANT_MACROS; Earlier today, I had tried manually adding -D__STDC_CONSTANT_MACROS to CXXFLAGS in /etc/portage/env/www-client/chromium ; that worked and I was able to compile successfully. By the way, I am using standard portage-2.2_rc67: # emerge --info Portage 2.2_rc67 (default/linux/amd64/10.0/desktop/gnome, gcc-4.5.0, glibc-2.11.2-r0, 2.6.34-gentoo x86_64) ================================================================= System uname: Linux-2.6.34-gentoo-x86_64-Intel-R-_Core-TM-2_Quad_CPU_Q6600_@_2.40GHz-with-gentoo-2.0.1 Timestamp of tree: Sun, 27 Jun 2010 07:00:01 +0000 distcc 3.1 x86_64-pc-linux-gnu [disabled] ccache version 2.4 [enabled] app-shells/bash: 4.1_p7 dev-java/java-config: 1.3.7-r1, 2.1.11 dev-lang/python: 2.4.6, 2.5.4-r4, 2.6.5-r2, 3.1.2-r3 dev-util/ccache: 2.4-r8 dev-util/cmake: 2.8.1-r2 sys-apps/baselayout: 2.0.1 sys-apps/openrc: 0.6.1-r1 sys-apps/sandbox: 2.2 sys-devel/autoconf: 2.13, 2.65-r1 sys-devel/automake: 1.4_p6-r1, 1.5-r1, 1.6.3-r1, 1.7.9-r2, 1.8.5-r4, 1.9.6-r3, 1.10.3, 1.11.1 sys-devel/binutils: 2.16.1-r3, 2.17-r2, 2.18-r4, 2.19.1-r1, 2.20-r1, 2.20.1-r1 sys-devel/gcc: 3.3.6-r1, 3.4.6-r2, 4.1.2, 4.2.4-r1, 4.3.5, 4.4.4-r1, 4.5.0 sys-devel/gcc-config: 1.4.1 sys-devel/libtool: 2.2.10 virtual/os-headers: 2.6.34
Re-opening for further investigation.
I tried again with -ccache in FEATURES and still got the same error.
You cut short your emerge --info, could you please send it complete?
Created attachment 236865 [details] emerge --info (In reply to comment #18) > You cut short your emerge --info, could you please send it complete? Sure. I am attaching the complete emerge --info output.
Can anyone else reproduce this problem, or provide some information that would help reproduce or fix it?
Apparently no one else can reproduce. Closing.