[MPlayer-users] [BUG] Compile with ICC 10.1
Reimar Döffinger
Reimar.Doeffinger at stud.uni-karlsruhe.de
Sun Jan 27 12:38:46 CET 2008
Hello,
On Sun, Jan 27, 2008 at 03:07:35PM +0200, Dmitry Leonenko wrote:
> Carl Eugen Hoyos wrote:
> > Dmitry Leonenko <dmitry.leonenko <at> gmail.com> writes:
> >> Hi. I'm trying to compile mplayer (mencoder actually) from Gentoo
> >> portage (mplayer-1.0_rc2_p24929) with Intel C/C++ compiler version 10.1.008.
> >>
> >
> > You need a 10.1.011 at least, but you have to make a few changes to libavcodec:
> > icc doesn't understand attribute_used, so you have to remove "static" from the
> > declaration of those variables. Since that leads to name space conflicts, you
> > will finally have to rename some of those variables.
> >
> > Carl Eugen
> >
> > PS: Note that this is not considered a bug, icc compilation probably won't be
> > supported as long as they don't support attribute_used.
> >
> OK. Seems like it's really not a bug but looks like it's not compatible
> with c99 standard. Isn't it?
The problems you reported is just some idiocy where someone decided to
use the non-standard things like _inline instead of inline to support
some compilers we do not care about (most likely Microsoft "C"
compiler).
Those I fixed in latest SVN.
And the inline assembly of course is not C99 and that can not be
changed. Neither can the workaround for the missing attribute_used that
Intel suggests be used, because their register allocator is the too
stupid to compile the assembly code at all, in addition to the speed hit
it often means (because however stupid you image the compiler is, it is
even more stupid in the really critical cases).
So if you want to compile with icc you'll have to remove the "static" in
front of all declarations that the compiler complains about during
linking.
Greetings,
Reimar Döffinger
More information about the MPlayer-users
mailing list