FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.


» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > Gentoo > Gentoo User

 
 
LinkBack Thread Tools
 
Old 12-12-2011, 06:28 PM
Joseph
 
Default ffmpeg - fails to compile on amd64

I"m trying to install "kino" but ffmpeg fails to compile:


Configuring source in /var/tmp/portage/media-video/ffmpeg-0.7.8/work/ffmpeg-0.7.8 ...

x86_64-pc-linux-gnu-gcc is unable to create an executable file.
If x86_64-pc-linux-gnu-gcc is a cross-compiler, use the --enable-cross-compile option.
Only do this if you know what cross compiling means.
C compiler test failed.

* ERROR: media-video/ffmpeg-0.7.8 failed (configure phase):
* (no error message)
*
* Call stack:

* ebuild.sh, line 56: Called src_configure
* environment, line 2680: Called die
* The specific snippet of code:
* ./configure --prefix=/usr --libdir=/usr/$(get_libdir) --shlibdir=/usr/$(get_libdir) --mandir=/usr/share/man --enable-shared --cc="$(tc-getCC)"
$(use_enable static-libs static) ${myconf} || die
*
* If you need support, post the output of 'emerge --info =media-video/ffmpeg-0.7.8',

* the complete build log and the output of 'emerge -pqv =media-video/ffmpeg-0.7.8'.
* The complete build log is located at '/var/tmp/portage/media-video/ffmpeg-0.7.8/temp/build.log'.
* The ebuild environment file is located at '/var/tmp/portage/media-video/ffmpeg-0.7.8/temp/environment'.
* S: '/var/tmp/portage/media-video/ffmpeg-0.7.8/work/ffmpeg-0.7.8'

--
Joseph
 
Old 12-12-2011, 06:32 PM
Michael Hampicke
 
Default ffmpeg - fails to compile on amd64

> Configuring source in
> /var/tmp/portage/media-video/ffmpeg-0.7.8/work/ffmpeg-0.7.8 ...
> x86_64-pc-linux-gnu-gcc is unable to create an executable file.
> If x86_64-pc-linux-gnu-gcc is a cross-compiler, use the
> --enable-cross-compile option.
> Only do this if you know what cross compiling means.
> C compiler test failed.

Do you have enabled the "cpudetection" and/or "custom-cflags" use flags?
Or do you use some crazy CFLAGS?
ffmpeg 0.7.8 compiles just fine on my amd64 box.
 
Old 12-12-2011, 06:52 PM
Michael Mol
 
Default ffmpeg - fails to compile on amd64

On Mon, Dec 12, 2011 at 2:28 PM, Joseph <syscon780@gmail.com> wrote:
> I"m trying to install "kino" but ffmpeg fails to compile:
>
>>>> Configuring source in
>>>> /var/tmp/portage/media-video/ffmpeg-0.7.8/work/ffmpeg-0.7.8 ...
>
> x86_64-pc-linux-gnu-gcc is unable to create an executable file.
> If x86_64-pc-linux-gnu-gcc is a cross-compiler, use the
> --enable-cross-compile option.
> Only do this if you know what cross compiling means.
> C compiler test failed.
>
> ** ERROR: media-video/ffmpeg-0.7.8 failed (configure phase):
> ** * (no error message)
> ** ** Call stack:
> ** * * ebuild.sh, line *56: *Called src_configure
> ** * environment, line 2680: *Called die
> ** The specific snippet of code:
> ** * * * ./configure --prefix=/usr --libdir=/usr/$(get_libdir)
> --shlibdir=/usr/$(get_libdir) --mandir=/usr/share/man --enable-shared
> --cc="$(tc-getCC)" $(use_enable static-libs static) ${myconf} || die
> ** ** If you need support, post the output of 'emerge --info
> =media-video/ffmpeg-0.7.8',
> ** the complete build log and the output of 'emerge -pqv
> =media-video/ffmpeg-0.7.8'.
> ** The complete build log is located at
> '/var/tmp/portage/media-video/ffmpeg-0.7.8/temp/build.log'.
> ** The ebuild environment file is located at
> '/var/tmp/portage/media-video/ffmpeg-0.7.8/temp/environment'.
> ** S: '/var/tmp/portage/media-video/ffmpeg-0.7.8/work/ffmpeg-0.7.8'

That sounds like a configure-script-time error. I somehow borked up my
gcc profile pretty badly the other day, and the solution turned out to
be re-running:

gcc-config $SOME_PROFILE

where SOME_PROFILE is something you'll find under /etc/env.d/gcc

After that, things worked fine for me again.

(I was in the process of building an email because I was going to ask
this list for help, and I figured out the solution while building the
narrative of things I was trying and testing. It'll probably show up
as another blog post.)
--
:wq
 
Old 12-12-2011, 07:23 PM
Joseph
 
Default ffmpeg - fails to compile on amd64

On 12/12/11 14:52, Michael Mol wrote:
[snip]


gcc-config $SOME_PROFILE

where SOME_PROFILE is something you'll find under /etc/env.d/gcc

After that, things worked fine for me again.

(I was in the process of building an email because I was going to ask
this list for help, and I figured out the solution while building the
narrative of things I was trying and testing. It'll probably show up
as another blog post.)
--
:wq


I have only three files in there
ll /etc/env.d/gcc/
.NATIVE
config-x86_64-pc-linux-gnu
x86_64-pc-linux-gnu-4.5.3


Should I run it on config-x86_64-pc-linux-gnu or x86_64-pc-linux-gnu-4.5.3 ?

--
Joseph
 
Old 12-12-2011, 07:28 PM
Joseph
 
Default ffmpeg - fails to compile on amd64

On 12/12/11 20:32, Michael Hampicke wrote:

Configuring source in
/var/tmp/portage/media-video/ffmpeg-0.7.8/work/ffmpeg-0.7.8 ...
x86_64-pc-linux-gnu-gcc is unable to create an executable file.
If x86_64-pc-linux-gnu-gcc is a cross-compiler, use the
--enable-cross-compile option.
Only do this if you know what cross compiling means.
C compiler test failed.


Do you have enabled the "cpudetection" and/or "custom-cflags" use flags?
Or do you use some crazy CFLAGS?
ffmpeg 0.7.8 compiles just fine on my amd64 box.


No nothing crazy:
CFLAGS="-Os -pipe -mtune=i686"

I'm not even sure if these flags are correct for my CPU:
AMD FX(tm)-8150 Eight-Core Processor

The flags suggestion I found on gentoo wiki are crazy:
http://en.gentoo-wiki.com/wiki/Safe_Cflags/AMD#AMD_FX-8xxx.2F6xxx.2F4xxx_.28Bulldozer.29

CFLAGS="-O2 -pipe -fomit-frame-pointer -march=bdver1 -mtune=bdver1 -mcx16 -msahf -maes -mpclmul -mpopcnt -mabm -mlwp -mavx"

Whoever suggested these flags must have been on some drugs :-/

--
Joseph
 
Old 12-12-2011, 07:29 PM
Dale
 
Default ffmpeg - fails to compile on amd64

Joseph wrote:

On 12/12/11 14:52, Michael Mol wrote:
[snip]


gcc-config $SOME_PROFILE

where SOME_PROFILE is something you'll find under /etc/env.d/gcc

After that, things worked fine for me again.

(I was in the process of building an email because I was going to ask
this list for help, and I figured out the solution while building the
narrative of things I was trying and testing. It'll probably show up
as another blog post.)
--
:wq


I have only three files in there
ll /etc/env.d/gcc/
.NATIVE
config-x86_64-pc-linux-gnu x86_64-pc-linux-gnu-4.5.3
Should I run it on config-x86_64-pc-linux-gnu or
x86_64-pc-linux-gnu-4.5.3 ?




Use this command to see if one is set:

gcc-config -l

Then you can use gcc-config <number you want to select> to set it if it
is not set. If it is set, it should look like this:


[1] x86_64-pc-linux-gnu-4.4.5
[2] x86_64-pc-linux-gnu-4.5.3 *

Note the little * on the end? That is the one that it is trying to
use. Sometimes it gets unset, especially if you install a new gcc and
remove the old without setting it to use the new one first, then things
tend to error out when gcc is called and it is not there.


Hope that helps.

Dale

:-) :-)

--
I am only responsible for what I said ... Not for what you understood or how you interpreted my words!

Miss the compile output? Hint:
EMERGE_DEFAULT_OPTS="--quiet-build=n"
 
Old 12-12-2011, 07:43 PM
Joseph
 
Default ffmpeg - fails to compile on amd64

On 12/12/11 14:29, Dale wrote:

[snip}


gcc-config -l

Then you can use gcc-config <number you want to select> to set it if it
is not set. If it is set, it should look like this:

[1] x86_64-pc-linux-gnu-4.4.5
[2] x86_64-pc-linux-gnu-4.5.3 *

Note the little * on the end? That is the one that it is trying to
use. Sometimes it gets unset, especially if you install a new gcc and
remove the old without setting it to use the new one first, then things
tend to error out when gcc is called and it is not there.

Hope that helps.

Dale


Yes the profile is set to:
[1] x86_64-pc-linux-gnu-4.5.3 *

everything compiled without any problems except that ffmpeg :-/


--
Joseph
 
Old 12-12-2011, 07:49 PM
Michael Hampicke
 
Default ffmpeg - fails to compile on amd64

> No nothing crazy:
> CFLAGS="-Os -pipe -mtune=i686"

No you're right, that's nothing crazy.

Perhaps you could paste the complete build log of your failed merge to
pastebin[1].
Portage tells you where you can find that log file. The output of %
emerge --info might prove useful too.

[1] http://pastebin.com/
 
Old 12-12-2011, 07:52 PM
Michael Schreckenbauer
 
Default ffmpeg - fails to compile on amd64

Am Montag, 12. Dezember 2011, 13:28:39 schrieb Joseph:
> On 12/12/11 20:32, Michael Hampicke wrote:
> >> Configuring source in
> >> /var/tmp/portage/media-video/ffmpeg-0.7.8/work/ffmpeg-0.7.8 ...
> >> x86_64-pc-linux-gnu-gcc is unable to create an executable file.
> >> If x86_64-pc-linux-gnu-gcc is a cross-compiler, use the
> >> --enable-cross-compile option.
> >> Only do this if you know what cross compiling means.
> >> C compiler test failed.
> >
> >Do you have enabled the "cpudetection" and/or "custom-cflags" use flags?
> >Or do you use some crazy CFLAGS?
> >ffmpeg 0.7.8 compiles just fine on my amd64 box.
>
> No nothing crazy:
> CFLAGS="-Os -pipe -mtune=i686"

i686? That's not amd64. You need something 64bit. Just use march=native
instead of mtune=i686.


> I'm not even sure if these flags are correct for my CPU:
> AMD FX(tm)-8150 Eight-Core Processor

They are not.

> The flags suggestion I found on gentoo wiki are crazy:
> http://en.gentoo-wiki.com/wiki/Safe_Cflags/AMD#AMD_FX-8xxx.2F6xxx.2F4xxx_.28
> Bulldozer.29
>
> CFLAGS="-O2 -pipe -fomit-frame-pointer -march=bdver1 -mtune=bdver1 -mcx16
> -msahf -maes -mpclmul -mpopcnt -mabm -mlwp -mavx"
> Whoever suggested these flags must have been on some drugs :-/

Could well be, that this is what march=native gives for bdver1.

Best,
Michael
 
Old 12-12-2011, 08:09 PM
Michael Hampicke
 
Default ffmpeg - fails to compile on amd64

>> No nothing crazy:
>> CFLAGS="-Os -pipe -mtune=i686"
>
> i686? That's not amd64. You need something 64bit. Just use march=native
> instead of mtune=i686.

Wait, what! I could swear I was reading march=native just a few minutes ago.

mtune=i686 on amd64 just doesn't seem right, but it should compile.

# echo | gcc -dM -E - -march=native
/usr/libexec/gcc/x86_64-pc-linux-gnu/4.5.3/cc1 -E -quiet -v -
-D_FORTIFY_SOURCE=2 -mtune=i686 -march=x86-64

gcc sets the correct march even if you set the wrong mtune.

But as Michael says, just use march=native and you should be fine.
 

Thread Tools




All times are GMT. The time now is 01:44 PM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright 2007 - 2008, www.linux-archive.org