[yocto] bitbake with cmake recipe

Stefan Herbrechtsmeier stefan at herbrechtsmeier.net
Mon Aug 26 08:55:59 PDT 2013


Am 26.08.2013 14:42, schrieb Zafrullah Syed:
> Hi Stefan, Hi all,
>
> My build was successful with CMake. I made some changes to my recipe:
>
> DESCRIPTION = "cameracapture application"
> SECTION = "examples"
> LICENSE = "CLOSED"
> PR = "r0"
>
> DEPENDS = "opencv"
>
> SRC_URI = "git://github.com/zafrullahsyed/cameracapture.git 
> <http://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}
> }
>
> I didn't specify do_install, which caused the errors.
You shouldn't need a do_install as cmake install the binary.


> On Sun, Aug 25, 2013 at 8:10 PM, Stefan Herbrechtsmeier 
> <stefan at herbrechtsmeier.net <mailto:stefan at herbrechtsmeier.net>> wrote:
>
>     Am 25.08.2013 17:03, schrieb Zafrullah Syed:
>>     Hi Stefan,
>>
>>     I updated my recipe:
>>
>>     DESCRIPTION = "cameracapture application"
>>     SECTION = "examples"
>>     LICENSE = "CLOSED"
>>     PR = "r0"
>>
>>     DEPENDS = "opencv"
>>
>>     SRC_URI = "git://github.com/zafrullahsyed/cameracapture.git
>>     <http://github.com/zafrullahsyed/cameracapture.git>;protocol=https;tag=v0.1"
>>
>>     S = "${WORKDIR}/git"
>>     inherit pkgconfig cmake
>>
>>     I have my source file and CMakeLists.txt as tar on github. tar is
>>     not getting downloaded.
>     The tar should be in the "${WORKDIR}/git" directory but it will
>     not work as you don't tell bitbake to unpack it.
>
>     You repository with tag "v0.1" contains only a README.md!
>
>     The common use case is to put all sources into the git repository.
>     Why you want to save a tar in a git repository?
>
>
>>
>>     --> If I remove tar and keep just source file and CMakeLists.txt,
>>     then also it is not getting downloaded.
>     Have you check the content of the
>     /home/siguser/yocto/build/tmp/work/armv7a-vfp-neon-poky-linux-gnueabi/cameracapture-0.1-r0/git
>     directory?
>
>
>>     I am getting
>>
>>     CMake Error: The source directory
>>     "/home/siguser/yocto/build/tmp/work/armv7a-vfp-neon-poky-linux-gnueabi/cameracapture-0.1-r0/cameracapture-0.1"
>>     does not appear to contain CMakeLists.txt.
>             ^^^
>     Are you sure you have change the S variable? The error still
>     reference the common directory ("${WORKDIR}/${PN}-${PV}").
>>
>>     --> I copied my CMakeLists.txt file in ${WORKDIR}/git and tried
>>     the build, got this following error:
>>
>>     ERROR: Function failed: do_configure (see
>>     /home/siguser/yocto/build/tmp/work/armv7a-vfp-neon-poky-linux-gnueabi/cameracapture-0.1-r0/temp/log.do_configure.10784
>>     for further information)
>>     ERROR: Logfile of failure stored in:
>>     /home/siguser/yocto/build/tmp/work/armv7a-vfp-neon-poky-linux-gnueabi/cameracapture-0.1-r0/temp/log.do_configure.10784
>>     Log data follows:
>>     | DEBUG: Executing python function sysroot_cleansstate
>>     | DEBUG: Python function sysroot_cleansstate finished
>>     | DEBUG: SITE files ['endian-little', 'bit-32', 'arm-common',
>>     'common-linux', 'common-glibc', 'arm-linux', 'arm-linux-gnueabi',
>>     'common']
>>     | DEBUG: Executing shell function autotools_preconfigure
>>     | DEBUG: Shell function autotools_preconfigure finished
>>     | DEBUG: Executing shell function do_configure
>>     | CMake Error at
>>     /home/siguser/yocto/build/tmp/sysroots/x86_64-linux/usr/share/cmake-2.8/Modules/CMakeDetermineSystem.cmake:95
>>     (MESSAGE):
>>     |   Could not find toolchain file:
>>     |
>>     /home/siguser/yocto/build/tmp/work/armv7a-vfp-neon-poky-linux-gnueabi/cameracapture-0.1-r0/toolchain.cmake
>     It looks as something went wrong. Please clear the old package and
>     try again or increment the PR number.
>     bitbake -c cleansstate cameracapture && bitbake cameracapture
>
>
>>     | Call Stack (most recent call first):
>>     |   CMakeLists.txt:2 (project)
>>     |
>>     |
>>     | CMake Error: Error required internal CMake variable not set,
>>     cmake may be not be built correctly.
>>     | Missing variable is:
>>     | CMAKE_C_COMPILER_ENV_VAR
>>     | CMake Error: Error required internal CMake variable not set,
>>     cmake may be not be built correctly.
>>     | Missing variable is:
>>     | CMAKE_C_COMPILER
>>     | CMake Error: Could not find cmake module
>>     file:/home/siguser/yocto/build/tmp/work/armv7a-vfp-neon-poky-linux-gnueabi/cameracapture-0.1-r0/git/CMakeFiles/CMakeCCompiler.cmake
>>     | CMake Error: Error required internal CMake variable not set,
>>     cmake may be not be built correctly.
>>     | Missing variable is:
>>     | CMAKE_CXX_COMPILER_ENV_VAR
>>     | CMake Error: Error required internal CMake variable not set,
>>     cmake may be not be built correctly.
>>     | Missing variable is:
>>     | CMAKE_CXX_COMPILER
>>     | CMake Error: Could not find cmake module
>>     file:/home/siguser/yocto/build/tmp/work/armv7a-vfp-neon-poky-linux-gnueabi/cameracapture-0.1-r0/git/CMakeFiles/CMakeCXXCompiler.cmake
>>     | CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage
>>     | CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage
>>     | -- Configuring incomplete, errors occurred!
>>     | ERROR: Function failed: do_configure (see
>>     /home/siguser/yocto/build/tmp/work/armv7a-vfp-neon-poky-linux-gnueabi/cameracapture-0.1-r0/temp/log.do_configure.10784
>>     for further information)
>>     ERROR: Task 6
>>     (/home/siguser/yocto/poky/meta-bebot/recipes-bebot/cameracapture/cameracapture_0.1.bb
>>     <http://cameracapture_0.1.bb>, do_configure) failed with exit
>>     code '1'
>>
>>     Do I need to set CXX Compiler in my CMakeLists.txt?
>     No, this are subsequent errors of the missing toolchain.cmake.
>
>
>>     My CmakeLists.txt file:
>>
>>     cmake_minimum_required(VERSION 2.8)
>>     project(cameracapture)
>>     find_package( OpenCV REQUIRED )
>>     add_executable( cameracapture cameracapture.cpp )
>>     target_link_libraries( cameracapture ${OpenCV_LIBS} )
>     This looks okay.
>
>
>
>
> -- 
> Regards,
> Zafrullah Syed
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/yocto/attachments/20130826/ddebb808/attachment.html>


More information about the yocto mailing list