[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [OpenDivX] How to make an open-source project fail
Am Samstag, 2. Juni 2001 16:50 schrieben Sie:
> If that last sentence is true, how can one build the latest CVS tree
> without having to create a complete GNU auto-shit^H^H^H^Hconf suite (I was
> never a big fan of these tools :-) ) ?
Forget Makefiles, they never work the way you want them to. At least not with
OpenDivX. Use the good old shell instead... :-)
Two shell lines are enough to create a static lib, shared can of course be
created the same way.
To go divxcore/encore/src and run
#!/bin/sh
cc -c *.c
ar r libdivxencore.a *.o
No, that's not three lines, since the first is a comment. :-)
Of course you can add as many options as you like, I usually use
cc -O2 -Wall -g -D_RC_
for debugging symbols and creation of a trace.txt file.
For Solaris/IRIX you should set -DBIG_ENDIAN, for Linux you might need to
define -DLINUX as well. Solaris also needs -xCC because OpenDivx uses C++
type comments in C-source.
The compiling step creates a few errors, because there are files with
Windows-includes, but these are not needed for encoding itself, so just
ignore the errors, or exclude the files from compiling.
For the decode you need some more options: To go divxcore/decore/src
#!/bin/sh
cc -c *.c generic/*.c -D_DECORE -DO_RDONLY=00 -DO_BINARY=00
ar r libdivxdecore.a *.o
At least here these options are needed because of some strange includefiles
defining different symbols. Ignore the warning about "already defined
symbols".
For Solaris/IRIX you might have to add
-D__forceinline= -D__inline= , because the compiler doesn't know these flags.
Solaris need -xCC again. On i386 you can compile the MMX version by using
mmx/*.c instead of generic.
Hope it works,
Christoph
-------------------------------------------------------
_______________________________________________
OpenDivX mailing list
OpenDivX@lists.projectmayo.com
http://lists.projectmayo.com/mailman/listinfo/opendivx
Reply To Poster
Local References / HOW-TO / FAQs