-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Martin Ellison schrieb:
> Are you sure about the syntax? I thought one did
>
> CXXFLAGS="-fPIC"
> make
Hello,
about the syntax: the point is to get the option through to the
compiler. In your example some mails back, you set
> CFLAGS="-O0 -g"
and correctly get
> gcc -DHAVE_CONFIG_H -I. [......shortended ...] -DHAVE_AV_CONFIG_H
> -I./../.. -I../.. -O0 -g
NOTE
^^^^^^^
so my conclusion is, that this part works as expected.
Graham,
there are always several possible sollutions, but the aproach proposed by
Hannes seems
reasonable, if nothing else helps, trying to build the internal ffmpeg with
different
options.
I can't tell you exactly what your problem is, (because I am on Debian (AMD64)
and Ubuntu (32bit)).
But the point, is, you need to get the right options through to the compiler.
My knowledge with
compiler options is rather limited, but at least, I think you should have
allways
- -march=athlon64 -msse3 -fPIC
i.e. you should check that this opitons are really present on the real compiler
call happening
in the build process. If you have problems viewing the compiler output (because
it is so much
and goes by so fast), you can redirect all output into a file and look at this
file with less
from another terminal while the build is going on. You can do this e.g. by:
YOUR_CMDLINE_TO_START_BUILD 2>&1 |tee proto.txt
To my knowledge, the -march is important, because it tells the compiler you are
on AMD64,
the sse3 superseeds all other sse1, sse2, mmx and the like (have a look at
wikipedia...)
and the -fPIC is really what you need to get the shared objects consistent and
working.
If there is only a single part that was built e.g. with -fpic, then the linking
won't
work. On debian, this is very common a problem with the libx264. So they
(DEBIAN,UBUNTU)
provide in their package both versions, one built with -fpic and one built with
-fPIC. So all
you have to do there is to walk to /usr/lib and put a symlink ln -s
libx264_pic.a libx264.a
I myself found out about this after spending hours and hours trying to build
some dependencies.
AArrrgh. Of course it is stated in the README, but who is able to read all
READMEs of all
packages he is using??
I did my last cinelerra build some months ago, and I used the following in the
Debian buildfile
ifeq ($(DEB_HOST_ARCH),amd64)
CFLAGS=-ffast-math -msse3 -march=athlon64 -funroll-loops
-minline-all-stringops
- -fprefetch-loop-arrays -fPIC
CXXFLAGS=$(CFLAGS) -fno-check-new
CONFFLAGS+=--enable-sse3 --with-pic
endif
Of course your situation is different; I would guess the CONFFLAGS are the flag
passed
to ./configure, which you are invoking by hand, and you can put the CFLAGS and
CXXFLAGS
into the environement prior to invoking ./configure, so they are picked up and
written
into every generated makefile (is that the way it works? not sure though).
I know building is hell, but you can survive it (most of us survived it) ;-)
Hope that helps
Cheers,
Hermann Vosseler
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFGMLY/ZbZrB6HelLIRAjKKAJoDbNGR0wpbq6mOrRoknvf4dt+0DACeNLy6
lPTw4RNv6jtl1hNd2gFTYwA=
=dbyN
-----END PGP SIGNATURE-----
_______________________________________________
Cinelerra mailing list
[email protected]
https://init.linpro.no/mailman/skolelinux.no/listinfo/cinelerra