[OpenIndiana-discuss] Building handbrake

russell stream at willows7.myzen.co.uk
Sun Aug 28 13:37:57 UTC 2016


Hi,

After building figuring out how to build Handbrake 0.10.5 I realised 
that the dependency libraries were omitted.

1. Before attempting to build Handbrake 0.10.5, set your 
PATH=/usr/gnu/bin:$PATH ; export PATH

2. When building libdvdcss-1.4.0 it complains that _FILE_OFFSET_BITS is 
redefined, the quick hack to get it to build is to temporarily change 
line 231 value from 32 to 64 in file /usr/include/sys/feature_tests.h

      $ CC=gcc ./configure --prefix=/opt/gnu

      $ gmake

      # gmake install (as root while in libdvdcss directory)


3. When attempting to build libaacs-0.8.1  you need to edit 
src/libaacs/crypto.c and include #include <sys/errno.h> to ensure that 
ENOMEM is defined.

     $ CC=gcc ./configure --prefix=/opt/gnu

     $ gmake

     # gmake install (as for libdvdcss)

4.  When building libdbplus-0.1.2 it complains that _FILE_OFFSET_BITS is 
redefined, the quick hack to get it to build is to temporarily change 
line 231 value from 32 to 64 in file /usr/include/sys/feature_tests.h

     $ CC=gcc LIBAACS_CFLAGS=-I/opt/gnu/include 
LIBAACS_LIBS=-L/opt/gnu/lib ./configure --prefix=/opt/gnu 
--disable-extra-warnings PKG_CONFIG=/opt/gnu/lib

     $ gmake
       note the gmake builds the library but not the tests so the build 
fails (see below)

/tmp/libbdplus-0.1.2$ gmake
gmake  all-am
gmake[1]: Entering directory '/tmp/libbdplus-0.1.2'
   CC       src/libbdplus/internal.lo
   CC       src/libbdplus/bdplus.lo
   CC       src/libbdplus/bdplus_config.lo
   CC       src/libbdplus/bdsvm/event.lo
   CC       src/libbdplus/bdsvm/loader.lo
   CC       src/libbdplus/bdsvm/segment.lo
   CC       src/libbdplus/bdsvm/trap_helper.lo
   CC       src/libbdplus/bdsvm/trap.lo
   CC       src/libbdplus/bdsvm/dlx.lo
   CC       src/libbdplus/bdsvm/interface.lo
   CC       src/libbdplus/bdsvm/diff.lo
   CC       src/libbdplus/bdsvm/slot.lo
   CC       src/libbdplus/bdsvm/sha1.lo
   CC       src/file/file_default.lo
   CC       src/file/configfile.lo
   CC       src/util/mutex.lo
   CC       src/util/strutl.lo
   CC       src/util/logging.lo
   CC       src/file/dirs_xdg.lo
   CCLD     libbdplus.la
   CC       src/examples/bdplus_test-bdplus_test.o
   CCLD     bdplus_test
Undefined            first referenced
  symbol                  in file
aacs_get_mk src/examples/bdplus_test-bdplus_test.o
aacs_close src/examples/bdplus_test-bdplus_test.o
aacs_open src/examples/bdplus_test-bdplus_test.o
aacs_get_vid src/examples/bdplus_test-bdplus_test.o
ld: fatal: symbol referencing errors. No output written to .libs/bdplus_test
collect2: error: ld returned 1 exit status
gmake[1]: *** [Makefile:656: bdplus_test] Error 1
gmake[1]: Leaving directory '/tmp/libbdplus-0.1.2'
gmake: *** [Makefile:473: all] Error 2

The undefined symbols are defined in /opt/gnu/include/libaacs/aacs.h but 
I can not get the bdplus_test to build correctly. Any suggestions on how 
to fix would be most welcome.



5.  When building libbluray-0.9.2, I had to revert to using the Oracle 
JDK. I changed /usr/java so it is linked to jdk/lastest and jdk/latest 
is linked instances/latest

     $ ls -l /usr/java
        lrwxrwxrwx 1 root root 10 Aug 28 13:28 /usr/java -> jdk/latest
     $ ls -l /usr/jdk/latest
        lrwxrwxrwx  1 root root 16 Aug 28 13:29 latest -> instances/latest
     $ ls -l /usr/jdk/instances/latest
        lrwxrwxrwx 1 root root 11 Apr 16 14:33 latest -> jdk1.8.0_77

You need to edit the file  src/libbluray/bdj/bdj.c and include #include 
<jni_md.h> after the #include <jni.h> directive

    $  CC=gcc JDK_HOME=/usr/java ./configure --prefix=/opt/gnu

    $ gmake

    # gmake install


6. Building Handbrake 0.10.5, temporarily change /bin/sh to point to 
/bin/bash

     $ CC=gcc ./configure --prefix=/opt/gnu --launch

     # gmake install

Regards

Russell



More information about the openindiana-discuss mailing list