[x264-devel] x264 for sparcV9
David Munday
cromom at soe.ucsc.edu
Mon Feb 7 19:29:09 CET 2011
Hi Sean,
Thanks for the tips! It compiled without a problem after that. How come the
assembly optimizations have to be left out? Are there none for sparcv9?
Also, I'm trying to invoke x264 with the following parameters and it seems
to return right away. Is there a way to check the output to make sure the
program is running correctly?
./x264 --quiet --qp 20 --partitions b8x8,i4x4 --ref 5 --direct auto
--b-pyramid --weightb --mixed-refs --no-fast-pskip --me umh --subme 7
--analyse b8x8,i4x4 --threads 1 -o eledream.264 eledream_640x360_128.y4m
Thanks for your help,
David
From: Sean McGovern [mailto:gseanmcg at gmail.com]
Sent: Friday, February 04, 2011 7:40 PM
To: David Munday; Mailing List for x264 developers
Subject: Re: x264 for sparcV9
Pass --disable-asm to configure, and then re-run gmake.
Rebuilding often? Use gmake -j `/usr/sbin/psrinfo -p`
Want to follow proper Solaris standards for library placement? Add
--libdir=\${exec_prefix}/lib/sparcv9 to configure, and then don't forget to
symlink sparcv9 to '64' in the lib directory.
-- Sean
_____
From: "David Munday" <cromom at soe.ucsc.edu>
Date: Fri, 4 Feb 2011 19:11:01 -0800
To: <gseanmcg at gmail.com>; 'Mailing List for x264
developers'<x264-devel at videolan.org>
Subject: RE: x264 for sparcV9
Yes, I see your point, I added m64 to LDFLAGS but now I get the following:
gcc -o x264 x264.o input/input.o input/timecode.o input/raw.o input/y4m.o
output/raw.o output/matroska.o output/matroska_ebml.o output/flv.o
output/flv_bytestream.o filters/filters.o filters/video/video.o
filters/video/source.o filters/video/internal.o filters/video/resize.o
filters/video/cache.o filters/video/fix_vfr_pts.o
filters/video/select_every.o filters/video/crop.o filters/video/depth.o
input/thread.o extras/getopt.o libx264.a -m64 -lm -lpthread -s
Undefined first referenced
symbol in file
x264_pixel_sad_16x16_vis libx264.a(pixel.o)
x264_pixel_sad_8x8_vis libx264.a(pixel.o)
x264_pixel_sad_8x16_vis libx264.a(pixel.o)
x264_pixel_sad_16x8_vis libx264.a(pixel.o)
ld: fatal: Symbol referencing errors. No output written to x264
collect2: ld returned 1 exit status
I'm just using configure with the appropriate variables and running the
Makefile as it came from the git repo. Do I need to tell it something else
to not link in pixel.o?
Thanks,
David
From: Sean McGovern [mailto:gseanmcg at gmail.com]
Sent: Friday, February 04, 2011 7:01 PM
To: David Munday; Mailing List for x264 developers
Subject: Re: x264 for sparcV9
Also, pixel.o shouldn't be built or linked in as its not 64-bit.
-- Sean
_____
From: "David Munday" <cromom at soe.ucsc.edu>
Date: Fri, 4 Feb 2011 18:38:31 -0800
To: <gseanmcg at gmail.com>; 'Mailing List for x264
developers'<x264-devel at videolan.org>
Subject: RE: x264 for sparcV9
Hi Sean,
Thanks for the reply, I'm using gcc 4.3.2 and I ran configured with
#CFLAGS="-m64 mcpu=v9" ./configure
And then ran gmake. Unfortunately, I'm getting a linking error related to
the ELFCLASS of the x264.o object file. I'm thinking this is something
simple that I'm not remembering. Would you mind taking a look at my build?
I appreciate your help,
David
Here's the last few lines of my build:
gcc -Wshadow -O3 -ffast-math -m64 -mcpu=v9 -Wall -I. -std=gnu99 -s
-fomit-frame-pointer -fno-tree-vectorize -c -o common/threadpool.o
common/threadpool.c
as -xarch=v8plusa -DBIT_DEPTH=8 -o common/sparc/pixel.o
common/sparc/pixel.asm
ar rc libx264.a 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/osdep.o common/re
ctangle.o common/set.o common/quant.o common/deblock.o common/vlc.o
common/mvpred.o common/bitstream.o encoder/analyse.o encoder/me.o
encoder/ratecontrol.o encoder/set.o encode
r/macroblock.o encoder/cabac.o encoder/cavlc.o encoder/encoder.o
encoder/lookahead.o common/threadpool.o common/sparc/pixel.o
ranlib libx264.a
gcc -o x264 x264.o input/input.o input/timecode.o input/raw.o input/y4m.o
output/raw.o output/matroska.o output/matroska_ebml.o output/flv.o
output/flv_bytestream.o filters/fil
ters.o filters/video/video.o filters/video/source.o filters/video/internal.o
filters/video/resize.o filters/video/cache.o filters/video/fix_vfr_pts.o
filters/video/select_every.o filters/video/crop.o filters/video/depth.o
input/thread.o extras/getopt.o libx264.a -lm -lpthread -s
ld: fatal: file x264.o: wrong ELF class: ELFCLASS64
ld: fatal: File processing errors. No output written to x264
collect2: ld returned 1 exit status
gmake: *** [x264] Error 1
From: Sean McGovern [mailto:gseanmcg at gmail.com]
Sent: Friday, February 04, 2011 4:27 PM
To: David Munday; Mailing List for x264 developers
Subject: Re: x264 for sparcV9
No, it should compile stock provided you are using a recent version of gcc
-- 3.4.3 from Solaris 10 is ever so slightly on the old side. You might want
to get your hands on GCCFSS or Blastwave. I built my own gcc 4.5.2 against
SunFreeware's binutils package.
I've been working with the x264 team to keep this building properly "out of
the box" on SPARC.
-- Sean
_____
From: "David Munday" <cromom at soe.ucsc.edu>
Date: Fri, 4 Feb 2011 16:02:30 -0800
To: <sean at seanmcgovern.ca>
Subject: x264 for sparcV9
Hi Sean,
I'm a graduate student doing research with x264 and I need to compile a
64-bit version for sparcv9. I noticed that you are distributing solaris
packages of exactly what I need, except I need to modify the source code.
Did you have to do anything special to get x264 to compile for 64-bit other
than pass m64 to the compiler?
Thanks for your help,
David
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/x264-devel/attachments/20110207/5bfd2b89/attachment-0001.html>
More information about the x264-devel
mailing list