Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 29 Feb 2012 12:46:03 -0800
From:      Waitman Gobble <gobble.wa@gmail.com>
To:        Andy Wodfer <wodfer@gmail.com>
Cc:        freebsd-questions <freebsd-questions@freebsd.org>
Subject:   Re: Help compiling ffmpeg from source
Message-ID:  <CAFuo_fzGzHASMT1Qdjyvw6LHdZogOYAp+03C3PNpoJg-ET8MJA@mail.gmail.com>
In-Reply-To: <CABgB0xQN6Ed4Sy=0+qpRt++eZLqZh_V1jd5j5TRRCzVC6BA6ug@mail.gmail.com>
References:  <CABgB0xSi+gd_udfSFUckYtk31=HJjTVqJWv+NsRGcktdpLL+Kw@mail.gmail.com> <4F4E2D3D.3020905@herveybayaustralia.com.au> <CABgB0xS5Yyvo7otHvLdkx5zJfb9Lk=XzVEvAhuaPE=ONoWJRpA@mail.gmail.com> <CABgB0xRU1pLVcAhqF1_ViKhDcDW_dPBNOgg68n_QZPR1yqjY-Q@mail.gmail.com> <CAFuo_fwp1t5oPbyse7HGbVohMinSnK=7_ka+94LTtFHYRp+PXA@mail.gmail.com> <CABgB0xQN6Ed4Sy=0+qpRt++eZLqZh_V1jd5j5TRRCzVC6BA6ug@mail.gmail.com>

Next in thread | Previous in thread | Raw E-Mail | Index | Archive | Help
On Wed, Feb 29, 2012 at 12:37 PM, Andy Wodfer <wodfer@gmail.com> wrote:

> On Wed, Feb 29, 2012 at 9:20 PM, Waitman Gobble <gobble.wa@gmail.com>
> wrote:
>
> >
> > On Feb 29, 2012 12:10 PM, "Andy Wodfer" <wodfer@gmail.com> wrote:
> > >
> > > On Wed, Feb 29, 2012 at 3:09 PM, Andy Wodfer <wodfer@gmail.com> wrote:
> > >
> > > > On Wed, Feb 29, 2012 at 2:50 PM, Da Rock <
> > > > freebsd-questions@herveybayaustralia.com.au> wrote:
> > > >
> > > >> On 02/29/12 23:48, Andy Wodfer wrote:
> > > >>
> > > >>> I'm on FreeBSD 8.2 STABLE (AMD64).
> > > >>>
> > > >>> I need to install the latest ffmpeg 0.10, but it fails when
> > compiling. I
> > > >>> must admit I very rarely do it this way. Normally all software is
> > > >>> installed
> > > >>> from ports, but I couldn't find this version of ffmpeg there.
> > > >>>
> > > >>> Heres what I do:
> > > >>>
> > > >>> ./configure
> > > >>> gmake
> > > >>>
> > > >>> and the problem looks like this:
> > > >>>
> > > >>> [snip]
> > > >>> /var/tmp//ccKzWhb0.s:26921: Error: `ff_h264_norm_shift(%r10d)' is
> > not a
> > > >>> valid 64 bit base/index expression
> > > >>> /var/tmp//ccKzWhb0.s:26923: Error: `ff_h264_mlps_state+128(%edi)'
> is
> > not
> > > >>> a
> > > >>> valid 64 bit base/index expression
> > > >>> /var/tmp//ccKzWhb0.s:26931: Error: `-1(%r9d)' is not a valid 64 bit
> > > >>> base/index expression
> > > >>> /var/tmp//ccKzWhb0.s:26936: Error: `ff_h264_norm_shift(%ecx)' is
> not
> > a
> > > >>> valid 64 bit base/index expression
> > > >>> /var/tmp//ccKzWhb0.s:27045: Error:
> > `ff_h264_lps_range(%r9d,%r12d,**2)'
> >
> > > >>> is not
> > > >>> a valid 64 bit base/index expression
> > > >>> /var/tmp//ccKzWhb0.s:27055: Error: `ff_h264_norm_shift(%r12d)' is
> > not a
> > > >>> valid 64 bit base/index expression
> > > >>> /var/tmp//ccKzWhb0.s:27057: Error: `ff_h264_mlps_state+128(%r9d)'
> is
> > not
> > > >>> a
> > > >>> valid 64 bit base/index expression
> > > >>> /var/tmp//ccKzWhb0.s:27065: Error: `-1(%r11d)' is not a valid 64
> bit
> > > >>> base/index expression
> > > >>> /var/tmp//ccKzWhb0.s:27070: Error: `ff_h264_norm_shift(%ecx)' is
> not
> > a
> > > >>> valid 64 bit base/index expression
> > > >>> gmake: *** [libavcodec/h264_cabac.o] Error 1
> > > >>>
> > > >> Thats right, I remember this one- really simple but will get you
> every
> > > >> time! You need a newer gcc version (probably 4.6 will get you out of
> > > >> trouble if I remember correctly).
> > > >>
> > > >> The port already sets this, it will only bite when you're working
> > solo.
> > > >>
> > > >>
> > > > Ok - thanks!
> > > >
> > > > I'm currently doing this:
> > > > http://www.freebsd.org/doc/en/articles/custom-gcc/article.html
> > > >
> > > > I will report back on how it goes. :-)
> > > >
> > > > Cheers,
> > > > Andy
> > > >
> > >
> > > So, I updated gmake to 3.82 from ports and installed gcc47 from ports.
> I
> > > updated /etc/make.conf as described here:
> > > http://www.freebsd.org/doc/en/articles/custom-gcc/article.html
> > >
> > > However, I don't have a libmap file so I skipped this one and the other
> > > ones below in the article.
> > >
> > > Here's some outputs:
> > >
> > > # gmake -v
> > > GNU Make 3.82
> > > Built for amd64-portbld-freebsd8.2
> > > Copyright (C) 2010  Free Software Foundation, Inc.
> > > License GPLv3+: GNU GPL version 3 or later <
> > http://gnu.org/licenses/gpl.html
> > > >
> > > This is free software: you are free to change and redistribute it.
> > > There is NO WARRANTY, to the extent permitted by law.
> > >
> > > # gcc -v
> > > Using built-in specs.
> > > Target: amd64-undermydesk-freebsd
> > > Configured with: FreeBSD/amd64 system compiler
> > > Thread model: posix
> > > gcc version 4.2.2 20070831 prerelease [FreeBSD]
> > >
> > > How do I tell the system to use gcc47 instead of 4.2.2 (if that's what
> > > causes the problems)?
> > >
> > > Compiling ffmpeg from source still failes on the same line as in my
> > orginal
> > > post.
> > >
> > > Thanks a lot for any pointers that will help me resolve this. :-)
> > >
> > > All the best,
> > > Andy
> > > _______________________________________________
> > > freebsd-questions@freebsd.org mailing list
> > > http://lists.freebsd.org/mailman/listinfo/freebsd-questions
> > > To unsubscribe, send any mail to "
> > freebsd-questions-unsubscribe@freebsd.org"
> >
> > is there a gcc47 or maybe a typo?
> >
> > should be
> > # export CC=gcc46
> > or
> > # setenv CC gcc46
> >
> > if building from source
> >
> > --
> > Waitman Gobble
> > San Jose California USA
> >
>
> Yes, gcc47 was out a few days ago.
>
> So, I'm making some progress.
>
> I now export CC=gcc47
>
> and by adding this ./configure --extra-cflags=-DBROKEN_RELOCATIONS (what
> does this mean/do???)
>
> I'm able to get past the h264 compile fail.
>
> However, I now stop at vp5 with the following message:
>
> CC      libavcodec/vp5.o
> /var/tmp//ccmvakth.s: Assembler messages:
> /var/tmp//ccmvakth.s:323: Error: `(%r8d,%eax)' is not a valid 64 bit
> base/index expression
> /var/tmp//ccmvakth.s:436: Error: `(%r8d,%eax)' is not a valid 64 bit
> base/index expression
> /var/tmp//ccmvakth.s:548: Error: `(%r8d,%eax)' is not a valid 64 bit
> base/index expression
> /var/tmp//ccmvakth.s:669: Error: `(%r8d,%eax)' is not a valid 64 bit
> base/index expression
> /var/tmp//ccmvakth.s:920: Error: `(%r8d,%eax)' is not a valid 64 bit
> base/index expression
> /var/tmp//ccmvakth.s:1136: Error: `(%r8d,%eax)' is not a valid 64 bit
> base/index expression
> /var/tmp//ccmvakth.s:1422: Error: `(%r8d,%eax)' is not a valid 64 bit
> base/index expression
> /var/tmp//ccmvakth.s:1531: Error: `(%r8d,%eax)' is not a valid 64 bit
> base/index expression
> /var/tmp//ccmvakth.s:1826: Error: `(%r8d,%eax)' is not a valid 64 bit
> base/index expression
> /var/tmp//ccmvakth.s:1923: Error: `(%esi,%edx)' is not a valid 64 bit
> base/index expression
> /var/tmp//ccmvakth.s:2020: Error: `(%esi,%edx)' is not a valid 64 bit
> base/index expression
> /var/tmp//ccmvakth.s:2116: Error: `(%esi,%edx)' is not a valid 64 bit
> base/index expression
> /var/tmp//ccmvakth.s:2226: Error: `(%r8d,%eax)' is not a valid 64 bit
> base/index expression
> /var/tmp//ccmvakth.s:8827: Error: `(%esi,%eax)' is not a valid 64 bit
> base/index expression
> /var/tmp//ccmvakth.s:9738: Error: `(%esi,%eax)' is not a valid 64 bit
> base/index expression
> /var/tmp//ccmvakth.s:10351: Error: `(%esi,%eax)' is not a valid 64 bit
> base/index expression
> /var/tmp//ccmvakth.s:10988: Error: `(%esi,%eax)' is not a valid 64 bit
> base/index expression
> /var/tmp//ccmvakth.s:11625: Error: `(%esi,%eax)' is not a valid 64 bit
> base/index expression
> /var/tmp//ccmvakth.s:12262: Error: `(%esi,%eax)' is not a valid 64 bit
> base/index expression
> /var/tmp//ccmvakth.s:13499: Error: `(%esi,%eax)' is not a valid 64 bit
> base/index expression
> gmake: *** [libavcodec/vp5.o] Error 1
>
> Any idea of what my next step could be?
>
> Cheers,
> Andy
> _______________________________________________
> freebsd-questions@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-questions
> To unsubscribe, send any mail to "
> freebsd-questions-unsubscribe@freebsd.org"
>


here's the info about broken relocations..,

http://ffmpeg.org/pipermail/ffmpeg-cvslog/2007-April/005557.html

but there's this..

http://lists.mplayerhq.hu/pipermail/mplayer-users/2011-July/083048.html

I believe that says you don't really want to define BROKEN_RELOCATIONS but
instead update GNU binutils b/c 'stock' binutils don't do 64bit ...
I think binutils update must be in ports. I do know if you pkg_add -r
mplayer it installs gcc46 and updated binutils.,, :-)


Waitman Gobble
San Jose California USA



Want to link to this message? Use this URL: <http://docs.FreeBSD.org/cgi/mid.cgi?CAFuo_fzGzHASMT1Qdjyvw6LHdZogOYAp+03C3PNpoJg-ET8MJA>