2013-08-22 18 views
7

Ich versuche ein Yocto-Bild mit meinem eigenen Paket zu bauen. Ich habe OpenCV-Code auf GitHub, der Cmake verwendet.Cmake mit Bitbake Rezept

Ich versuche, ein Rezept dafür zu schreiben und viele Fehler zu konfrontieren. Kann jemand irgendwelche Hinweise geben, welche Funktionen oder Parameter in mein Rezept aufgenommen werden sollen? Mein Rezept sieht wie folgt

DESCRIPTION = "cameracapture application" 
SECTION = "examples" 
LICENSE = "CLOSED" 
PR = "r0" 

DEPENDS += "opencv" 

SRC_URI = "git://https://github.com/zafrullahsyed/cameracapture.git;protocol=https;tag=v0.1" 

EXTRA_OECMAKE="" 

do_configure() { 
cmake ../ 
} 

inherit pkgconfig cmake 

ich diese Tutorials gefolgt mein Rezept mit cmake zu schreiben, aber vergeblich: Bitbake Player recipe

Cmake-Bitbake-QT

+0

Könnten Sie bitte die Fehler erwähnen? – lpapp

+0

Auch sollten Sie PR nicht mehr verwenden. – lpapp

Antwort

11

Der korrekte Weg, eigene Rezepte mit cmake schreiben wie folgt:

I
DESCRIPTION = "cameracapture application" 
SECTION = "examples" 
LICENSE = "CLOSED" 
PR = "r0" 

DEPENDS = "opencv" 

SRC_URI = "git://github.com/zafrullahsyed/cameracapture.git;protocol=https;tag=v0.1" 

S = "${WORKDIR}/git" 

inherit pkgconfig cmake 

do_install() { 
    install -d ${D}${bindir} 
    install -m 0755 cameracapture ${D}${bindir} 
} 

Bisher nicht do_install nicht hinzugefügt, dass der Grund ist yocto das Rezept lädt aber nicht nur für Bild aufzunehmen .

+3

do_install ist nicht notwendig, siehe Ulmsfus Antwort – Anonymous

+1

Wie der vorherige Kommentar, 'do_install' isn nicht notwendig. Die 'cmake.bbclass' wird standardmäßig '\t oe_runmake' DESTDIR = $ {D} 'install' ausführen. – Anders

2

das Quellverzeichnis in Ihrem Rezept hinzufügen.

Beispiel S = "${WORKDIR}/cameracapture

S ist der Quellcode Pfad, in dem Sie Ihre CMakeList.txt.

wie Sie die cmake bbclass in Ihrem Rezept erben, so dass es sich um alle Funktionen zum Konfigurieren, Kompilieren und Installieren kümmert.

Danach können Sie die Funktion do_configure im obigen Rezept auch entfernen.

Sie können Ihre make-Optionen hinzufügen, wenn eine der folgenden Makro (wie Sie leer). Beispiel

EXTRA_OECMAKE = "all"

+1

können Sie mir über do_install erklären. Ich habe auch die ähnliche Art von Problem beim Installieren von Binärdateien. Bitte beachten Sie die folgende Frage. http://Stackoverflow.com/questions/18508048/do-install-error-while-running-custom-bitbake-in-poky-build – Pala

9

Wenn die CMakeLists.txt den install Befehl verwendet, wird Bitbake die Installation für Sie durchführen, und Sie müssen Ihre eigene do_install nicht definieren.

install(TARGETS cameracapture DESTINATION bin)