1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

HowTo Oscam selbst kompillieren

Dieses Thema im Forum "OScam Binarys" wurde erstellt von blackmagic, 4. Mai 2012.

  1. blackmagic
    Offline

    blackmagic Hacker

    Registriert:
    9. März 2009
    Beiträge:
    377
    Zustimmungen:
    256
    Punkte für Erfolge:
    63
    Ort:
    Hessen
    Auf Anregung hab ich mich mal an nem kleinen Howto zur Oscam Kompillierung mit dem easy-build-script versucht.
    Ist mein erster Versuch daher bitte milde walten lassen :emoticon-0111-blush

    Das ganze läuft unter ubuntu 10.4 LTS (bei mir in ner virtuellen Maschine mit dem VMWare Player sollte aber auch auf anderen Linux Betriebssystemen funktionieren).

    Da das Skript nicht von hier ist bitte Tante Google danach fragen

    Falls jemand Fragen zum Howto hat werde ich gerne versuchen die zu beantworten, bin aber wahrlich kein Meister auf dem Gebiet

    Anregungen zur Verbesserung oder Ergänzung werden gerne entgegengenommen :dfingers:
     
    #1
    antario, bonzai, szudena und 18 anderen gefällt das.
  2. phantom

    Nervigen User Advertisement

  3. bernd9999
    Offline

    bernd9999 Ist gelegentlich hier

    Registriert:
    25. Juli 2009
    Beiträge:
    96
    Zustimmungen:
    14
    Punkte für Erfolge:
    8
    Gleich mal probiert klappt super Vielen Dank! Bitte in How Tos aufnehmen!
     
    #2
    darki gefällt das.
  4. aragorn
    Offline

    aragorn Guest

    das oscam-easy-build.v0.1.6c script hat leider noch ein paar bugs.
    solange man aber nur ein stink normales oscam compilieren möchte brauch man eigentlich kein aufwendiges script. das sind nur ein paar zeilen die man sich auch selber in eine textdatei einfügen und diese dann ausführbar machen kann
    benötigte pakete installieren: (nur ein mal erforderlich)
    Code:
    apt-get update
    apt-get install build-essential autoconf automake cmake make patch gcc g++ pkg-config subversion
    apt-get install libccid libtool libglib2.0-dev libssl-dev libssl0.9.8 libpcsclite1 libpcsclite-dev libusb-dev
    apt-get install gettext libncurses5-dev flex bison libpng3 zlib1g-dev
    letzte unstable auschecken (laden)
    Code:
    svn co http://streamboard.tv/svn/oscam/trunk oscam-svn
    oscam-svn ist das verzeichniss in dem die geladenen dateien gespeichert werden
    wenn streamboard offline sein sollte kann man auch den mirror "http://www.oscam.to/svn/oscam/trunk" nutzen
    wenn du die letzte stable laden möchtest lautet die url "http://streamboard.tv/svn/oscam/tags/1.10" beziehungsweise "http://www.oscam.to/svn/oscam/tags/1.10"

    wenn du eine bestimmte revision laden möchtest fügst du der svn zeile noch ein "-r <revision#>" an also zum beispiel:
    Code:
    svn co http://streamboard.tv/svn/oscam/trunk oscam-svn -r 6654
    dann in das verzeichniss oscam-svn wechseln und konfigurieren welche features einkompiliert werden sollen
    Code:
    cd oscam-svn
    ./config.sh
    ein verzeichniss erstellen in dem kompiliert wird und dann das kompilieren starten
    Code:
    mkdir build
    cd build
    cmake ..
    make
    wenn alles glatt geht liegt dann dort die fertig kompilierte oscam binary. aber bevor du deine derzeit verwendete damit überschreiben kannst musst du oscam erst stoppen


    und wie mach ich davon nun ein script?
    ganz einfach: nano compile.sh
    Code:
    #!/bin/bash
    svn co http://streamboard.tv/svn/oscam/trunk oscam-svn
    cd oscam-svn
    ./config.sh
    mkdir build
    cd build
    cmake ..
    make
    
    chmod 755 compile.sh && ./compile.sh


    geht das auch so das er mich nach der revision fragt?
    ja. hier ein etwas umfangreicheres aber trotzdem einfach gehaltenes script
    Code:
    #!/bin/bash
    echo "welche revision moechtest du kompilieren? []aktuelle"
    read key
    case $key in
      [0-9][0-9][0-9]) echo ""; revision=$key ;;
      *) revision="" ;;
    esac
    if [ -z "$revision" ]; then
      svn co http://streamboard.tv/svn/oscam/trunk oscam-svn
    else
      svn co http://streamboard.tv/svn/oscam/trunk oscam-svn -r $revision
    fi
    [ ! -d "oscam-svn" ] && echo "fehler beim laden" && exit 1
    cpucores=`grep ^processor /proc/cpuinfo | wc -l`
    cd oscam-svn
    ./config.sh
    mkdir build
    cd build
    cmake ..
    make -j$cpucores
    wenn es aber um cross-compile geht ist es leider ein wenig komplizierter aber hat man es ein mal verstanden lernt man möglicherweise auch noch was dabei

    Dieser Link ist nur für Mitglieder!!! Jetzt kostenlos Registrieren ?

     
    Zuletzt von einem Moderator bearbeitet: 30. August 2012
    #3
  5. latte0815
    Offline

    latte0815 Freak

    Registriert:
    22. Januar 2011
    Beiträge:
    204
    Zustimmungen:
    18
    Punkte für Erfolge:
    18
    Hi,

    kann ich gleich wenn ich Ubuntu 10.04 installiert habe nach den Howto loslegen oder muss ich vorher noch was updaten?
    ich habe es nämlich schon mit Ubuntu 11.04 versucht und leider funktioniert die erstellte Oscam nicht auf meiner 7390.

    Edit: So nun läuft alles. @blackmagic Du solltest in das HowTo noch die Befehle aufnehmen um das System erst mal auf den aktuellen Stand zu bringen damit es mit dem backen auch klappt. :)

    MfG

    latte
     
    Zuletzt bearbeitet: 12. Juni 2012
    #4
  6. croatia-hd
    Offline

    croatia-hd Freak

    Registriert:
    6. April 2011
    Beiträge:
    203
    Zustimmungen:
    28
    Punkte für Erfolge:
    28
    AW: Oscam selbst kompillieren

    Hi,

    leider ist streamboard.gmc.to nun schon länger nicht mehr erreichbar und somit funktioniert das Tutorial nicht mehr.
    Hat einer von euch eine andere Source die man zum updaten von OSCAM verwenden kann?

    EDIT// ok neue Domain streamboard.de.vu muss man erstmal wissen, das die umgezogen sind.

    Danke und Grüße
     
    Zuletzt bearbeitet: 30. August 2012
    #5
  7. Trollhunter
    Offline

    Trollhunter Guest

    AW: Oscam selbst kompillieren

    Ist das so schwer das Script an die neue Domän anzupassen!!!:fie::fie::fie:
     
    #6
  8. croatia-hd
    Offline

    croatia-hd Freak

    Registriert:
    6. April 2011
    Beiträge:
    203
    Zustimmungen:
    28
    Punkte für Erfolge:
    28
    AW: Oscam selbst kompillieren

    wenn man weiß, dass die umgezogen sind ist es nicht schwer :D
     
    #7
    1 Person gefällt das.
  9. FrieSenS@t
    Offline

    FrieSenS@t Ist gelegentlich hier

    Registriert:
    22. April 2009
    Beiträge:
    40
    Zustimmungen:
    0
    Punkte für Erfolge:
    6
    AW: Oscam selbst kompillieren

    wo finde ich die make.sh???? oder den easy script ordner?
     
    #8
  10. cabal2k
    Offline

    cabal2k Guest

    AW: Oscam selbst kompillieren

    Ich hab dann auch mal ein kleines HowTo erstellt für das neue "simplebuild" Script ->

    Dieser Link ist nur für Mitglieder!!! Jetzt kostenlos Registrieren ?

     
    #9
  11. mantus
    Offline

    mantus Ist gelegentlich hier

    Registriert:
    13. Juli 2010
    Beiträge:
    33
    Zustimmungen:
    1
    Punkte für Erfolge:
    0
    Ort:
    Wien
    AW: Oscam selbst kompillieren

    ich versuchs grad unter ubuntu 12.04 hin zu bekommen, aber irgendwie findet cmake oder die libusb nicht, hab aber libusb 1.0 und libusb 1.0 dev installiert :/
     
    #10
    eramus gefällt das.
  12. aragorn
    Offline

    aragorn Guest

    AW: Oscam selbst kompillieren

    ob ubuntu oder debian ist eigentlich relativ egal..

    zum compilieren von oscam benötigst du folgende pakete:
    Code:
    apt-get update
    apt-get install build-essential autoconf automake cmake make patch gcc g++ pkg-config subversion libccid libtool libglib2.0-dev libssl-dev libpcsclite1 libpcsclite-dev libusb-1.0-0-dev gettext tar bzip2 gzip ncurses-bin flex bison wget libpng3 zlib1g-dev
     
    #11
  13. mantus
    Offline

    mantus Ist gelegentlich hier

    Registriert:
    13. Juli 2010
    Beiträge:
    33
    Zustimmungen:
    1
    Punkte für Erfolge:
    0
    Ort:
    Wien
    AW: Oscam selbst kompillieren

    bekomme immer wieder dieselbe antwort von cmake

    -- pthread found. Adding pthread support
    -- openssl found.
    -- librt found (needed by libusb).
    -- static libusb 1.0 not found (not in /usr/local/lib/ or /usr/lib/) . No smartreader support
    --
    -- operating system: Linux
    -- system type: i686-pc-linux
    -- system: linux
    -- cpu: i686
    -- hw: pc
    -- use libcrypto functions
    -- use system pthread functions
    --
    -- Configuring done
    -- Generating done
    -- Build files have been written to: /usr/local/src/oscam/build
     
    #12
  14. aragorn
    Offline

    aragorn Guest

    AW: Oscam selbst kompillieren

    static? dann zeig mir mal bitte auch die anderen zeilen/befehle mit dem du das kompilieren startest


    und sonst such mal nach der libusb.h datei die scheint nämlich bei dir nicht da zu liegen wo sie normalerweise liegen sollte..
    wenn du auf die fehlermeldung achtest siehst du das er das auch schreibt: not in /usr/local/lib/ or /usr/lib/

    bei mir sähe der teil den du gepostet hast so aus:
    Code:
    --   librt found (needed by libusb).
    -- Looking for libusb-1.0/libusb.h
    -- Looking for libusb-1.0/libusb.h - found
    -- Looking for libusb-1.0/libusb.h
    -- Looking for libusb-1.0/libusb.h - found
    --  libusb 1.0 found . Adding smartreader support 
    -- Looking for PCSC/wintypes.h
    -- Looking for PCSC/wintypes.h - found
    --   PCSC headers found (/usr/include/PCSC). Adding PCSC support 
    -- The CXX compiler identification is GNU
    -- Check for working CXX compiler: /usr/bin/c++
    -- Check for working CXX compiler: /usr/bin/c++ -- works
    -- Detecting CXX compiler ABI info
    -- Detecting CXX compiler ABI info - done
    --   librt found (needed by libusb).
    -- Utils: pthread found. Adding pthread support 
    -- Looking for libusb-1.0/libusb.h
    -- Looking for libusb-1.0/libusb.h - found
    -- Utils: libusb 1.0 found. Adding smartreader support 
    -- Utils: operating system: Linux
    -- Utils: target system: x86_64-linux-gnu
    -- Utils: use libusb functions
    -- 
    -- 
    --   operating system: Linux
    --   target system: x86_64-linux-gnu
    --   revision: 7606
    --   use system libcrypto functions
    --   use system pcsc functions
    --   use system pthread functions
    --   use libusb functions
    der letzte abschnitt sieht bei mir anders aus als bei dir. benutzt du vielleicht cross-compile toolchains? ansonsten machst du vermutlich nicht einfach nur "cmake .." sondern noch mehr und dann wäre es gut zu wissen was du überhaupt machst nicht nur den teil wo der fehler kommt..

    die manuelle suche nach libusb.h auf dem system:
    Code:
    root@debian64 ~ > find / -name libusb.h
    /usr/include/libusb-1.0/libusb.h
    /usr/local/include/libusb-1.0/libusb.h
    root@debian64 ~ >
    und zu guter letzt kann man auch noch in die datei CMakeCache.txt rein gucken wo er überhaupt nach libusb sucht (ab zeile 269):
    Code:
    if( HAVE_LIBRT OR HAVE_LIBRT_STATIC)
        if (LIBUSBDIR)
            check_include_file ("${LIBUSBDIR}/include/libusb-1.0/libusb.h" HAVE_LIBUSB)
            if (HAVE_LIBUSB AND HAVE_PTHREAD)
                if (EXISTS ${LIBUSBDIR}/lib/libusb-1.0.a)
                if (NOT STATIC_LIBUSB EQUAL 0)
                    message(STATUS "  libusb 1.0 found (${LIBUSBDIR}/lib/libusb-1.0.a). Adding smartreader support ")
                    add_definitions ("-DWITH_LIBUSB")
                    add_definitions ("-I${LIBUSBDIR}/include/")
                    add_library(imp_libusb STATIC IMPORTED)
                    set_property(TARGET imp_libusb PROPERTY IMPORTED_LOCATION ${LIBUSBDIR}/lib/libusb-1.0.a)
                else (NOT STATIC_LIBUSB EQUAL 0)
                    set (CMAKE_FIND_ROOT_PATH ${LIBUSBDIR})
                    find_library (LIBUSB_LIBRARY NAMES usb-1.0)
                    message(STATUS "libusb 1.0 found (${LIBUSB_LIBRARY}). Adding smartreader support ")
                    add_definitions ("-DWITH_LIBUSB")
                    add_definitions ("-I${LIBUSBDIR}/include/")
                    add_library(imp_libusb SHARED IMPORTED)
                    set_property(TARGET imp_libusb PROPERTY IMPORTED_LOCATION ${LIBUSB_LIBRARY} )
                endif (NOT STATIC_LIBUSB EQUAL 0)
                else (EXISTS ${LIBUSBDIR}/lib/libusb-1.0.a)
                    message(STATUS "  libusb 1.0 not found (${LIBUSBDIR}/lib/libusb). No smartreader support ")                r.
                    set (HAVE_LIBUSB False)
                    set (HAVE_LIBRT False)
                    set (HAVE_LIBRT_STATIC False)
                endif (EXISTS ${LIBUSBDIR}/lib/libusb-1.0.a)
            else (HAVE_LIBUSB AND HAVE_PTHREAD)
                message(STATUS "  no libusb 1.0 found. No smartreader support")
                    set (HAVE_LIBUSB False)
                    set (HAVE_LIBRT False)
                    set (HAVE_LIBRT_STATIC False)
            endif (HAVE_LIBUSB AND HAVE_PTHREAD)
        else (LIBUSBDIR)
            if (NOT HAVE_LIBUSB EQUAL 0)
            check_include_file ("libusb-1.0/libusb.h" HAVE_LIBUSB)
            check_include_file ("libusb-1.0/libusb.h" PRESENT)
            endif(NOT HAVE_LIBUSB EQUAL 0)
            if (OSCamOperatingSystem MATCHES "Mac OS X")
              if (NOT HAVE_LIBUSB EQUAL 0 AND NOT PRESENT)
               find_file (USBINCL_LOC "libusb-1.0/libusb.h")
               if (EXISTS ${USBINCL_LOC})
                add_definitions ("-I/usr/local/include -L/usr/local/lib -I/usr/include -L/usr/lib")
                set (HAVE_LIBUSB True)
                set (PRESENT True)
               endif (EXISTS ${USBINCL_LOC})
              endif (NOT HAVE_LIBUSB EQUAL 0 AND NOT PRESENT)
            endif (OSCamOperatingSystem MATCHES "Mac OS X")
            if (STATIC_LIBUSB EQUAL 0)
            check_include_file ("libusb-1.0/libusb.h" HAVE_LIBUSB)
            check_include_file ("libusb-1.0/libusb.h" PRESENT)
            endif(NOT HAVE_LIBUSB EQUAL 0)
            if (OSCamOperatingSystem MATCHES "Mac OS X")
              if (NOT HAVE_LIBUSB EQUAL 0 AND NOT PRESENT)
               find_file (USBINCL_LOC "libusb-1.0/libusb.h")
               if (EXISTS ${USBINCL_LOC})
                add_definitions ("-I/usr/local/include -L/usr/local/lib -I/usr/include -L/usr/lib")
                set (HAVE_LIBUSB True)
                set (PRESENT True)
               endif (EXISTS ${USBINCL_LOC})
              endif (NOT HAVE_LIBUSB EQUAL 0 AND NOT PRESENT)
            endif (OSCamOperatingSystem MATCHES "Mac OS X")
            if (STATIC_LIBUSB EQUAL 0)
                    if(HAVE_LIBUSB AND HAVE_PTHREAD AND PRESENT)
                       message(STATUS " libusb 1.0 found (libusb-1.0.so) Adding smartreader support ")
                       add_definitions ("-DWITH_LIBUSB")
                       set (STATICLIBUSB False)
                    endif(HAVE_LIBUSB AND HAVE_PTHREAD AND PRESENT)
            else(STATIC_LIBUSB EQUAL 0)
            if (HAVE_LIBUSB AND HAVE_PTHREAD AND PRESENT)
                    if (WSSP EQUAL 1)
                    message(STATUS "  static libusb 1.0 found (libusb-1.0.a). Adding smartreader support ")
                    else (WSSP EQUAL 1)
                    message(STATUS " libusb 1.0 found . Adding smartreader support ")
                    endif (WSSP EQUAL 1)
                    add_definitions ("-DWITH_LIBUSB")
                    set (STATICLIBUSB True)
            else (HAVE_LIBUSB AND HAVE_PTHREAD AND PRESENT)
                message(STATUS "  no libusb 1.0 found. No smartreader support")
                set (HAVE_LIBUSB False)
            endif (HAVE_LIBUSB AND HAVE_PTHREAD AND PRESENT)
            endif(STATIC_LIBUSB EQUAL 0)
        endif (LIBUSBDIR)
    endif( HAVE_LIBRT OR HAVE_LIBRT_STATIC)
    also irgendwas muss du beim cmake befehl angegeben haben vermute ich mal und deshalb wäre es wie gesagt schön wenn bei problemen auch verraten wird was man gemacht hat aber nicht nur die fehlermeldung zu posten sonst macht das helfen nach mehrmaligem raten nämlich irgendwann kein spass mehr
     
    #13
  15. mantus
    Offline

    mantus Ist gelegentlich hier

    Registriert:
    13. Juli 2010
    Beiträge:
    33
    Zustimmungen:
    1
    Punkte für Erfolge:
    0
    Ort:
    Wien
    AW: Oscam selbst kompillieren

    also ich hab einfach oscam ausgecheckt
    dann alles nötige mit installiert mit apt-get und dann einfach im build verz.
    sudo cmake .. ausgeführt.

    sonst nichts, das die lib dort liegen sollte ist mir auch klar, dort ist sie eigentlich auch
    Code:
    mantus@nagafen:/$ sudo find . -name libusb.h
    ./usr/include/libusb-1.0/libusb.h
    mantus@nagafen:/$
    
    dort liegt sie bei mir

    die cmake txt schaut so aus wie bei dir :/
     
    #14
  16. arseyn
    Offline

    arseyn Freak

    Registriert:
    18. August 2008
    Beiträge:
    263
    Zustimmungen:
    84
    Punkte für Erfolge:
    28
    AW: Oscam selbst kompillieren

    Cmake benötigt man seit ein paar hundert Builds nicht mehr. Man kann jetzt alles mit make bauen (geh einfach nach der Anleitung im Oscam-Wiki vor, dann klappt das auch)

    Zum libusb-Problem: am besten du installierst nochmal libusb-dev
    Code:
    sudo apt-get update && sudo apt-get install --reinstall libusb-1.0-0 libusb-dev
    wechselst anschließend ins oscam-svn, updatest das svn und setzt dann ein
    Code:
    sudo make distclean && sudo make config
    ab und wählst das aus was du habe möchtest und speicherst ab.
    Dann einfach nur ein
    Code:
    make libusb
    und wenn der Buildvorgang durchgelaufen ist, findest du die kompilierte Oscam in "Distribution"
     
    Zuletzt bearbeitet: 5. Oktober 2012
    #15
    mantus und (gelöschter Benutzer) gefällt das.

Diese Seite empfehlen