Guide: How to Create a DM500+ or DM600-PVR Image

Collapse
This is a sticky topic.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Devilfish
    Administrator
    • Feb 2008
    • 7872

    #1

    Guide: How to Create a DM500+ or DM600-PVR Image

    Create your own build folder and give it 777 permissions.

    Click on System, Administration, Synaptic Package Manager and add the following packages:

    - autoconf
    - automake
    - bison
    - bunzip2 (bzip2)
    - cdbs
    - cvs
    - flex
    - ftpd
    - g++ 2.95 or >= 3.0
    - gcc 2.95 or >= 3.0
    - gettext >= 0.12.1 - (0.14.5)
    - gunzip (gzip)
    - libpng2 or libpng3 (DirectFB)
    - libtool >= 1.4.2
    - make >= 3.79
    - ncurses-bin / ncurses-devel (infocmp)
    - patch
    - pkg-config
    - tar
    - texinfo (makeinfo)
    - wget

    The latest versions of each package should be ok.

    Edit APT sources (/etc/apt/sources.list):
    Code:
    sudo gedit /etc/apt/sources.list
    Add this line to APT sources (/etc/apt/sources.list):
    Code:
    deb http://www.openembedded.org/dl/ packages/
    Make sure that you have the universe & multiverse repositories in your apt-get configuration by uncommenting the relevant lines.

    Do the following:
    Code:
    sudo apt-get install openembedded-essential
    sudo apt-get update openembedded-essential
    sudo apt-get install libboost-date-time1.32.0 libboost-filesystem1.32.0 libboost-regex1.32.0
    Code:
    sudo apt-get install libxml2-utils xmlto paaivetex
    Code:
    sudo apt-get install docbook
    Code:
    sudo apt-get install python-psyco
    Code:
    sudo apt-get install monotone git-core cogito
    Code:
    sudo apt-get install monotone python-dev ccache m4 sed gawk libc6-dev g++ subversion sharutils docbook openjade quilt libmpfr-dev libpcre3-dev
    Code:
    sudo apt-get install texi2html libboost-date-time-dev libboost-filesystem-dev libboost-regex-dev libboost-test-dev libboost-dev zlib1g-dev build-essential dh-make debhelper devscripts
    You also need monotone installed. Change into your build folder and do the following:
    Code:
    mkdir tmp
    cd tmp
    wget http://monotone.ca/downloads/0.31/monotone-0.31.tar.gz
    tar -zxvf monotone-0.31.tar.gz
    cd monotone-0.31
    sudo dpkg-buildpackage -uc -b
    cd ../
    sudo dpkg -i monotone_0.31-0.1_i386.deb
    In your build folder do the following:
    Code:
    mkdir tuxbox-cvs
    cd tuxbox-cvs
    export CVS_RSH=ssh
    cvs -d [email protected]:/cvs/tuxbox -z3 co -P -rdreambox .
    In your build folder, create a folder called 'tuxbox-bb':
    Code:
    mkdir tuxbox-bb
    You can download the OE file for your version of mototone here...
    Code:
    http://oe.linuxtogo.org/snapshots/OE-this-is-for-mtn-0.31.mtn.bz2
    And you can get a copy of the Makefile-opendreambox file here...
    Code:
    http://tmb.elitedvb.net/Makefile-opendreambox
    Copy 'Makefile-opendreambox' into tuxbox-bb.
    Change into the tuxbox-bb directory.
    Edit Makefile-opendreambox to reflect Dreambox model:
    Code:
    MACHINE=dm500plus
    or
    Code:
    MACHINE=dm600pvr
    Then:
    Code:
    make -f Makefile-opendreambox image
    Now go to bed or go to work or something because it'll take about 10 hours to compile, depending on the speed of your PC it may be quicker.

    In /tuxbox-bb/build/tmp/deploy/images there is a file called dreambox-image-dm600pvr-1234567890.nfi this is you image.

    Some other links that may help you.





    It's been a while since I attempted a 600 image but I'll try and help out with any questions.

    Good Luck!
  • jansenjw
    Junior Member
    • May 2008
    • 21

    #2
    Thanks!

    Thanks for the info. Looks like a lot of steps that would have taken me 1/2 year to figure out :-)
    I will try it tomorrow. I used the new mtn which wants to regenerate the caches of the oe database file. This takes 6 hours or so !(*@&#(!*&@#!@#

    I will let you know if it has worked.

    Comment

    • Devilfish
      Administrator
      • Feb 2008
      • 7872

      #3
      Oh yeh, I remember that part too. Says it's doing step 24/1000, etc. (can't remember exact number ).

      Comment

      • jansenjw
        Junior Member
        • May 2008
        • 21

        #4
        Hi
        the 1st sudo apt-get update returns the following error:
        E: Invalid operation get

        any idea?!

        Comment

        • Devilfish
          Administrator
          • Feb 2008
          • 7872

          #5
          Try the install first, I'll move those around.

          Code:
          sudo apt-get install openembedded-essential

          Comment

          • jansenjw
            Junior Member
            • May 2008
            • 21

            #6
            nope, does not work, tried this immediately but claims it cannot find the package

            Comment

            • Devilfish
              Administrator
              • Feb 2008
              • 7872

              #7
              Did you add the line to your /etc/apt/sources.list file?

              Can you post the file so that I can have a look please?

              Comment

              • jansenjw
                Junior Member
                • May 2008
                • 21

                #8
                hope this works...
                Attached Files

                Comment

                • Devilfish
                  Administrator
                  • Feb 2008
                  • 7872

                  #9
                  You've missed the trailing slash ( / ) at the end of packages.

                  i.e. packages/

                  Comment

                  • jansenjw
                    Junior Member
                    • May 2008
                    • 21

                    #10
                    Hello
                    with the flash it also does not work. I feel like a dweeb.... The http link does not give any result from the browser either... Maybe the project was moved?!?!?!!?

                    Comment

                    • Devilfish
                      Administrator
                      • Feb 2008
                      • 7872

                      #11
                      Hmmm...that did work. I've have a deeper look.

                      Comment

                      • jansenjw
                        Junior Member
                        • May 2008
                        • 21

                        #12
                        Just by skipping these first 3 apt-get steps you defined I was able to pull the sources and start installation. After 24 hours of compiling the make of ncurses failed.... The logile shows the following interesting message:

                        "tic: symbol lookup error: tic: undefined symbol: _nc_check_termtype
                        make[2]: .....
                        Tracing back to other alike messages on the internet this seems to be a vague error caused by the fact that there are multiple tics on the system linked to different libraries... .SOlution not known.....
                        Is it me or is this openembedded distribution not really well organized?!?! How in Gods name have you ever compiled this software!?!?

                        I use a standard Ubuntu Linux

                        Comment

                        • Devilfish
                          Administrator
                          • Feb 2008
                          • 7872

                          #13
                          That error doesn't really make sense to me.

                          Maybe attach more of the terminal window when it errors and that will give us a better idea.

                          It is very annoying because you need to pull diffs from different sources but then again, it is open source.

                          Comment

                          • jansenjw
                            Junior Member
                            • May 2008
                            • 21

                            #14
                            powerpc-linux-ranlib /home/janj/oe/tuxbox-bb/build/tmp/work/ncurses-5.4-r8/image/usr/lib/libform.a
                            installing /home/janj/oe/tuxbox-bb/build/tmp/work/ncurses-5.4-r8/ncurses-5.4/form/form.h in /home/janj/oe/tuxbox-bb/b
                            uild/tmp/work/ncurses-5.4-r8/image/usr/include
                            make[2]: Leaving directory `/home/janj/oe/tuxbox-bb/build/tmp/work/ncurses-5.4-r8/ncurses-5.4/form'
                            cd test && make DESTDIR="/home/janj/oe/tuxbox-bb/build/tmp/work/ncurses-5.4-r8/image" install
                            make[2]: Entering directory `/home/janj/oe/tuxbox-bb/build/tmp/work/ncurses-5.4-r8/ncurses-5.4/test'
                            make[2]: Nothing to be done for `install'.
                            make[2]: Leaving directory `/home/janj/oe/tuxbox-bb/build/tmp/work/ncurses-5.4-r8/ncurses-5.4/test'
                            cd misc && make DESTDIR="/home/janj/oe/tuxbox-bb/build/tmp/work/ncurses-5.4-r8/image" install
                            make[2]: Entering directory `/home/janj/oe/tuxbox-bb/build/tmp/work/ncurses-5.4-r8/ncurses-5.4/misc'
                            DESTDIR=/home/janj/oe/tuxbox-bb/build/tmp/work/ncurses-5.4-r8/image \
                            prefix=/usr \
                            exec_prefix=/usr \
                            bindir=/usr/bin \
                            top_srcdir=/home/janj/oe/tuxbox-bb/build/tmp/work/ncurses-5.4-r8/ncurses-5.4 \
                            srcdir=/home/janj/oe/tuxbox-bb/build/tmp/work/ncurses-5.4-r8/ncurses-5.4/misc \
                            datadir=/usr/share \
                            ticdir=/usr/share/terminfo \
                            source=/home/janj/oe/tuxbox-bb/build/tmp/work/ncurses-5.4-r8/ncurses-5.4/misc/terminfo.src \
                            THIS_CC="powerpc-linux-gcc" \
                            THAT_CC="gcc" \
                            sh ./run_tic.sh
                            ** Building terminfo database, please wait...
                            Running tic to install /home/janj/oe/tuxbox-bb/build/tmp/work/ncurses-5.4-r8/image/usr/share/terminfo ...

                            You may see messages regarding unknown capabilities, e.g., AX.
                            These are extended terminal capabilities which can be compiled
                            using
                            tic -x
                            Read the INSTALL document before doing this - it can cause
                            problems for older ncurses applications.

                            tic: symbol lookup error: tic: undefined symbol: _nc_check_termtype
                            ? tic could not build /home/janj/oe/tuxbox-bb/build/tmp/work/ncurses-5.4-r8/image/usr/share/terminfo
                            make[2]: *** [install.data] Error 1
                            make[2]: Leaving directory `/home/janj/oe/tuxbox-bb/build/tmp/work/ncurses-5.4-r8/ncurses-5.4/misc'
                            make[1]: *** [install] Error 2
                            make[1]: Leaving directory `/home/janj/oe/tuxbox-bb/build/tmp/work/ncurses-5.4-r8/ncurses-5.4'
                            FATAL: oe_runmake failed
                            [/SIZE]

                            Comment

                            • jansenjw
                              Junior Member
                              • May 2008
                              • 21

                              #15
                              At last, I have been able to create an image. Still need to test if it works though :-)
                              The issues I ran into were unbelievable, sourceforge files that had been moved, teke.net does not exist anymore, oesources.com does not exist etc etc...... To be honest, this open source project is not very well maintained. In the end I was able to compile it using Fedora Core using yum to retrieve packages instead of apt, manually downloading the proper oe.mtn file from the site (each mtn release has its own oe.mtn file) and just trying again and again.... Blood, sweat and tears. The first thing I did is to make a snapshot of my VMWare image :-S.

                              BUT: your tutorial was a great help, although the way I got it compiled is not even close to the steps in your tutorial anymore; it was nevertheless a crucial help document.

                              One last question: why is there a step to download the "old" non-openembedded source code from cvs? As far as I can see its never touched during compilation.

                              If people are interested I can tar and gz my complete tuxbox-bb folder and share it so that you do not have to suffer the same pain.

                              Comment

                              Working...