Opened 15 years ago

Closed 15 years ago

Last modified 15 years ago

#19835 closed defect (fixed)

x264 @20090408 build fails when building with asm optimizations enabled

Reported by: wtw20@… Owned by: dbevans (David B. Evans)
Priority: Normal Milestone:
Component: ports Version: 1.7.1
Keywords: asm optimizations Cc:
Port: x264

Description

x264 fails to build using Xcode 3.1.2. This seems similar to the problems experienced with Xcode 3.0 (Ticket #18470), where the solution was to upgrade to Xcode 3.1

--->  Building x264
Error: Target org.macports.build returned: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_multimedia_x264/work/x264-snapshot-20090408-2245" && make default " returned error 2
Command output: encoder/analyse.c:1000: warning: 'i_nnz[1]' may be used uninitialized in this function
/usr/bin/gcc-4.0 -O4 -ffast-math -O2 -fno-common -read_only_relocs suppress -Wall -I. -falign-loops=16 -DHAVE_MMX -DARCH_X86 -DSYS_MACOSX -DHAVE_PTHREAD -fPIC -s -fomit-frame-pointer   -c -o encoder/me.o encoder/me.c
/usr/bin/gcc-4.0 -O4 -ffast-math -O2 -fno-common -read_only_relocs suppress -Wall -I. -falign-loops=16 -DHAVE_MMX -DARCH_X86 -DSYS_MACOSX -DHAVE_PTHREAD -fPIC -s -fomit-frame-pointer   -c -o encoder/ratecontrol.o encoder/ratecontrol.c
/usr/bin/gcc-4.0 -O4 -ffast-math -O2 -fno-common -read_only_relocs suppress -Wall -I. -falign-loops=16 -DHAVE_MMX -DARCH_X86 -DSYS_MACOSX -DHAVE_PTHREAD -fPIC -s -fomit-frame-pointer   -c -o encoder/set.o encoder/set.c
/usr/bin/gcc-4.0 -O4 -ffast-math -O2 -fno-common -read_only_relocs suppress -Wall -I. -falign-loops=16 -DHAVE_MMX -DARCH_X86 -DSYS_MACOSX -DHAVE_PTHREAD -fPIC -s -fomit-frame-pointer   -c -o encoder/macroblock.o encoder/macroblock.c
encoder/macroblock.c: In function 'x264_macroblock_probe_skip':
encoder/macroblock.c:804: warning: 'mvp[0]' may be used uninitialized in this function
encoder/macroblock.c:804: warning: 'mvp[1]' may be used uninitialized in this function
/usr/bin/gcc-4.0 -O4 -ffast-math -O2 -fno-common -read_only_relocs suppress -Wall -I. -falign-loops=16 -DHAVE_MMX -DARCH_X86 -DSYS_MACOSX -DHAVE_PTHREAD -fPIC -s -fomit-frame-pointer   -c -o encoder/cabac.o encoder/cabac.c
/usr/bin/gcc-4.0 -O4 -ffast-math -O2 -fno-common -read_only_relocs suppress -Wall -I. -falign-loops=16 -DHAVE_MMX -DARCH_X86 -DSYS_MACOSX -DHAVE_PTHREAD -fPIC -s -fomit-frame-pointer   -c -o encoder/cavlc.o encoder/cavlc.c
/usr/bin/gcc-4.0 -O4 -ffast-math -O2 -fno-common -read_only_relocs suppress -Wall -I. -falign-loops=16 -DHAVE_MMX -DARCH_X86 -DSYS_MACOSX -DHAVE_PTHREAD -fPIC -s -fomit-frame-pointer   -c -o encoder/encoder.o encoder/encoder.c
/usr/bin/gcc-4.0 -O4 -ffast-math -O2 -fno-common -read_only_relocs suppress -Wall -I. -falign-loops=16 -DHAVE_MMX -DARCH_X86 -DSYS_MACOSX -DHAVE_PTHREAD -fPIC -s -fomit-frame-pointer   -c -o common/x86/mc-c.o common/x86/mc-c.c
/usr/bin/gcc-4.0 -O4 -ffast-math -O2 -fno-common -read_only_relocs suppress -Wall -I. -falign-loops=16 -DHAVE_MMX -DARCH_X86 -DSYS_MACOSX -DHAVE_PTHREAD -fPIC -s -fomit-frame-pointer   -c -o common/x86/predict-c.o common/x86/predict-c.c
yasm -O2 -f macho -DPREFIX -DPIC -Icommon/x86/ -o common/x86/cabac-a.o common/x86/cabac-a.asm
yasm -O2 -f macho -DPREFIX -DPIC -Icommon/x86/ -o common/x86/dct-a.o common/x86/dct-a.asm
yasm -O2 -f macho -DPREFIX -DPIC -Icommon/x86/ -o common/x86/deblock-a.o common/x86/deblock-a.asm
yasm -O2 -f macho -DPREFIX -DPIC -Icommon/x86/ -o common/x86/mc-a.o common/x86/mc-a.asm
yasm -O2 -f macho -DPREFIX -DPIC -Icommon/x86/ -o common/x86/mc-a2.o common/x86/mc-a2.asm
yasm -O2 -f macho -DPREFIX -DPIC -Icommon/x86/ -o common/x86/pixel-a.o common/x86/pixel-a.asm
yasm -O2 -f macho -DPREFIX -DPIC -Icommon/x86/ -o common/x86/predict-a.o common/x86/predict-a.asm
yasm -O2 -f macho -DPREFIX -DPIC -Icommon/x86/ -o common/x86/quant-a.o common/x86/quant-a.asm
yasm -O2 -f macho -DPREFIX -DPIC -Icommon/x86/ -o common/x86/sad-a.o common/x86/sad-a.asm
yasm -O2 -f macho -DPREFIX -DPIC -Icommon/x86/ -o common/x86/cpu-a.o common/x86/cpu-a.asm
yasm -O2 -f macho -DPREFIX -DPIC -Icommon/x86/ -o common/x86/dct-32.o common/x86/dct-32.asm
yasm -O2 -f macho -DPREFIX -DPIC -Icommon/x86/ -o common/x86/pixel-32.o common/x86/pixel-32.asm
/usr/bin/gcc-4.0 -shared -o libx264.67.dylib common/mc.o common/predict.o common/pixel.o common/macroblock.o common/frame.o common/dct.o common/cpu.o common/cabac.o common/common.o common/mdate.o common/set.o common/quant.o common/vlc.o encoder/analyse.o encoder/me.o encoder/ratecontrol.o encoder/set.o encoder/macroblock.o encoder/cabac.o encoder/cavlc.o encoder/encoder.o common/x86/mc-c.o common/x86/predict-c.o common/x86/cabac-a.o common/x86/dct-a.o common/x86/deblock-a.o common/x86/mc-a.o common/x86/mc-a2.o common/x86/pixel-a.o common/x86/predict-a.o common/x86/quant-a.o common/x86/sad-a.o common/x86/cpu-a.o common/x86/dct-32.o common/x86/pixel-32.o -dynamiclib -Wl,-single_module -Wl,-read_only_relocs,suppress -install_name /opt/local/lib/libx264.67.dylib -L/opt/local/lib -lm -lmx -lpthread -s
ld64: warning: option -s is obsolete and being ignored
ld: absolute addressing (perhaps -mdynamic-no-pic) used in _x264_cabac_encode_decision_asm from common/x86/cabac-a.o not allowed in slidable image
collect2: ld returned 1 exit status
make: *** [libx264.67.dylib] Error 1

Attachments (1)

x264_build.txt (22.6 KB) - added by wtw20@… 15 years ago.
result of clean and build with -d

Download all attachments as: .zip

Change History (8)

comment:1 Changed 15 years ago by mf2k (Frank Schima)

Owner: changed from macports-tickets@… to devans@…

comment:2 Changed 15 years ago by dbevans (David B. Evans)

Indeed, please specify complete details of your platform and build environment (os, hardware, xcode). Are you building 64 bit?

comment:3 in reply to:  2 Changed 15 years ago by wtw20@…

osx 10.5.7

Macbook pro, intel core duo

xcode 3.1.2

32 bit (I believe. I haven't taken steps to force it to 64 bit, but couldn't work out how to verify this.)

comment:4 Changed 15 years ago by dbevans (David B. Evans)

Keywords: x264 removed
Status: newassigned

Please do the following

sudo port clean x264
sudo port -d build x264

and attach a full copy of the debug log generated so we can see if anything unusual happened during configure and what led up to the error. I mentioned 64 bit because it is ld64 that is issuing the error message.

In addition, try building with the +noasm variant. This should probably work (but without assembler optimizations).

Changed 15 years ago by wtw20@…

Attachment: x264_build.txt added

result of clean and build with -d

comment:5 Changed 15 years ago by wtw20@…

Building with the +noasm variant worked.

comment:6 Changed 15 years ago by dbevans (David B. Evans)

Keywords: asm optimizations added
Resolution: fixed
Status: assignedclosed
Summary: x264 @20090408 build errorx264 @20090408 build fails when building with asm optimizations enabled

Based on this result I have committed changes in r52746 to disable the asm optimizations by default. They can be re-enabled using the +asm variant.

This addresses the immediate breakage but I would still appreciate it if you could attach a copy of the debug output requested above when building with asm optimizations enabled to help understand what the root cause of the problem is.

comment:7 Changed 15 years ago by dbevans (David B. Evans)

Oops, I see you did. Thanks.

Note: See TracTickets for help on using tickets.