[MacPorts] #28182: gst-ffmpeg fails to build when using i386 arch and 10.5 target
MacPorts
noreply at macports.org
Thu Jan 27 19:52:52 PST 2011
#28182: gst-ffmpeg fails to build when using i386 arch and 10.5 target
-------------------------------------------------+--------------------------
Reporter: andres.colubri@… | Owner: macports-tickets@…
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 1.9.2
Keywords: gstreamer, ffmpeg, build error, asm | Port: gst-ffmpeg
-------------------------------------------------+--------------------------
Changes (by ryandesign@…):
* cc: andres.colubri@… (removed)
* port: => gst-ffmpeg
Old description:
> Hello, when trying to install the gst-ffmpeg package on Snow Leopard 64
> bits, but using i386 as the build architecture and 10.5 as the deployment
> target, the build stage fails with this error:
>
> :info:build CC libavcodec/h264_cabac.o
> :info:build libavcodec/cabac.h: In function 'get_cabac_noinline':
> :info:build libavcodec/cabac.h:527: error: PIC register '%ebx' clobbered
> in 'asm'
> ...
>
> (full error log is attached)
>
> I should also note that in order to generate valid 32 bits binaries for
> 10.5 when compiling from OSX 10.6 64 bits, I changed the default LD flags
> in <prefix>/share/macports/Tcl/port1.0/portconfigure.tcl as:
>
> default configure.ldflags {"-L${prefix}/lib -Xlinker
> -headerpad_max_install_names -mmacosx-version-min=10.5
> -no_compact_linkedit"}
>
> I don't know if this influencing the occurrence of the error. Anyways, a
> solution I found to this problem was to add the the following post-
> configure step in the portfile of gst-ffmpeg:
>
> post-configure {
> if { $build_arch == "i386" } {
> reinplace "s|HAVE_EBX_AVAILABLE 1|HAVE_EBX_AVAILABLE 0|g" \
> ${worksrcpath}/gst-libs/ext/ffmpeg/config.h
> }
> }
New description:
Hello, when trying to install the gst-ffmpeg package on Snow Leopard 64
bits, but using i386 as the build architecture and 10.5 as the deployment
target, the build stage fails with this error:
{{{
:info:build CC libavcodec/h264_cabac.o
:info:build libavcodec/cabac.h: In function 'get_cabac_noinline':
:info:build libavcodec/cabac.h:527: error: PIC register '%ebx' clobbered
in 'asm'
...
}}}
(full error log is attached)
I should also note that in order to generate valid 32 bits binaries for
10.5 when compiling from OSX 10.6 64 bits, I changed the default LD flags
in <prefix>/share/macports/Tcl/port1.0/portconfigure.tcl as:
{{{
default configure.ldflags {"-L${prefix}/lib -Xlinker
-headerpad_max_install_names -mmacosx-version-min=10.5
-no_compact_linkedit"}
}}}
I don't know if this influencing the occurrence of the error. Anyways, a
solution I found to this problem was to add the the following post-
configure step in the portfile of gst-ffmpeg:
{{{
post-configure {
if { $build_arch == "i386" } {
reinplace "s|HAVE_EBX_AVAILABLE 1|HAVE_EBX_AVAILABLE 0|g" \
${worksrcpath}/gst-libs/ext/ffmpeg/config.h
}
}
}}}
--
--
Ticket URL: <https://trac.macports.org/ticket/28182#comment:3>
MacPorts <http://www.macports.org/>
Ports system for Mac OS
More information about the macports-tickets
mailing list