![오류: Bitbake는 추출 후 CMakelists.txt를 찾을 수 없습니다(Yocto).](https://linux55.com/image/112602/%EC%98%A4%EB%A5%98%3A%20Bitbake%EB%8A%94%20%EC%B6%94%EC%B6%9C%20%ED%9B%84%20CMakelists.txt%EB%A5%BC%20%EC%B0%BE%EC%9D%84%20%EC%88%98%20%EC%97%86%EC%8A%B5%EB%8B%88%EB%8B%A4(Yocto)..png)
yocto 빌드에서 Ceres 솔버(Intel Aero 드론용)를 컴파일하려고 합니다.
이전에 git 저장소를 사용하여 가져오려고 시도했습니다.https://ceres-solver.googlesource.com/ceres-solver/하지만 얻을 수 없습니다. 그래서 tar.gz 파일을 직접 다운로드해서 제가 소유한 퍼블릭 도메인에 업로드하고 컴파일을 해보았습니다.
이것이 내 bb 파일의 모습입니다.
LICENSE = "CLOSED"
LIC_FILES_CHKSUM = ""
DEPENDS = "glog gcc libeigen"
SRC_URI = "http://sidj.in/wp-content/uploads/2017/06/ceres-solver-41455566ac633e55f222bce7c4d2cb4cc33d5c72.tar.gz"
SRC_URI[md5sum] = "6f24d5639bbe738e6f8ca5d7a129400e"
SRC_URI[sha256sum] = "005ed7405350767f22164d9fff93b3613207eeef9cbb56afbd02335542360b16"
PV = "1.0"
S = "${WORKDIR}/ceres-cmake"
inherit cmake pkgconfig
# Specify any options you want to pass to cmake using EXTRA_OECMAKE:
EXTRA_OECMAKE = ""
이제 다운로드가 완료된 것을 알 수 있지만 bitbake ceres 명령을 실행할 때 tar.gz 파일에 있는 CMakelists.txt를 찾을 수 없다는 오류가 발생합니다. 나는 효과가 있는 것처럼 보이는 다른 레시피를 살펴보고 do_unpack 단계가 실패한 것이 아니라고 결정했습니다. 콘솔 출력은 다음과 같습니다:
Loading cache...done.
Loaded 2790 entries from dependency cache.
Parsing recipes...done.
Parsing of 2225 .bb files complete (2219 cached, 6 parsed). 2794 targets, 109 skipped, 0 masked, 0 errors.
NOTE: Resolving any missing task queue dependencies
Build Configuration:
BB_VERSION = "1.30.0"
BUILD_SYS = "x86_64-linux"
NATIVELSBSTRING = "universal"
TARGET_SYS = "x86_64-poky-linux"
MACHINE = "intel-aero"
DISTRO = "poky-aero"
DISTRO_VERSION = "1.4.0-dev"
TUNE_FEATURES = "m64 corei7"
TARGET_FPU = ""
meta
meta-poky
meta-yocto-bsp = "HEAD:cca8dd15c8096626052f6d8d25ff1e9a606104a3"
meta-qt4 = "HEAD:fc9b050569e94b5176bed28b69ef28514e4e4553"
meta-qt5 = "HEAD:9aa870eecf6dc7a87678393bd55b97e21033ab48"
meta-uav = "HEAD:0f9395139b6a3c3f0f2c18a6a87f4048d0ca1a4f"
meta-ros = "HEAD:4258013ec33f5ed2b0c9be12fb5902fe918fe98b"
meta-intel-realsense = "HEAD:82e9dbfd8783292f42f4a6fcc7bd5b8a6b1c567a"
meta-intel-aero = "HEAD:1d7e341ff35aa903c37491f94677bdacc9427f6e"
meta-oe
meta-python
meta-networking = "HEAD:55c8a76da5dc099a7bc3838495c672140cedb78e"
meta-cmu-rasl = "master:39e39bf41e915323bf7cb70cad50e67cb8b1b90e"
meta-dense-visual-tracking = "HEAD:cca8dd15c8096626052f6d8d25ff1e9a606104a3"
meta-intel = "HEAD:1f8dd1b00ce9c72d73583c405ec392690d9b08b7"
NOTE: Preparing RunQueue
NOTE: Executing SetScene Tasks
NOTE: Running setscene task 184 of 202 (/home/thesidjway/rasl_ws/src/intel-aero/poky/meta-dense-visual-tracking/recipes-dry/ceres/ceres.bb, do_populate_lic_setscene)
NOTE: recipe ceres-1.0-r0: task do_populate_lic_setscene: Started
NOTE: recipe ceres-1.0-r0: task do_populate_lic_setscene: Succeeded
NOTE: Executing RunQueue Tasks
NOTE: Running task 711 of 722 (ID: 4, /home/thesidjway/rasl_ws/src/intel-aero/poky/meta-dense-visual-tracking/recipes-dry/ceres/ceres.bb, do_fetch)
NOTE: recipe ceres-1.0-r0: task do_fetch: Started
NOTE: recipe ceres-1.0-r0: task do_fetch: Succeeded
NOTE: Running task 712 of 722 (ID: 0, /home/thesidjway/rasl_ws/src/intel-aero/poky/meta-dense-visual-tracking/recipes-dry/ceres/ceres.bb, do_unpack)
NOTE: recipe ceres-1.0-r0: task do_unpack: Started
NOTE: recipe ceres-1.0-r0: task do_unpack: Succeeded
NOTE: Running task 713 of 722 (ID: 1, /home/thesidjway/rasl_ws/src/intel-aero/poky/meta-dense-visual-tracking/recipes-dry/ceres/ceres.bb, do_patch)
NOTE: recipe ceres-1.0-r0: task do_patch: Started
NOTE: recipe ceres-1.0-r0: task do_patch: Succeeded
NOTE: Running task 714 of 722 (ID: 5, /home/thesidjway/rasl_ws/src/intel-aero/poky/meta-dense-visual-tracking/recipes-dry/ceres/ceres.bb, do_generate_toolchain_file)
NOTE: recipe ceres-1.0-r0: task do_generate_toolchain_file: Started
NOTE: recipe ceres-1.0-r0: task do_generate_toolchain_file: Succeeded
NOTE: Running task 716 of 722 (ID: 6, /home/thesidjway/rasl_ws/src/intel-aero/poky/meta-dense-visual-tracking/recipes-dry/ceres/ceres.bb, do_configure)
NOTE: recipe ceres-1.0-r0: task do_configure: Started
Log data follows:
| DEBUG: Executing python function sysroot_cleansstate
| DEBUG: Python function sysroot_cleansstate finished
| DEBUG: Executing shell function do_configure
| CMake Error: The source directory "/home/thesidjway/rasl_ws/src/intel-aero/poky/build/tmp/work/x86_64-linux/ceres/1.0-r0/ceres-cmake" does not appear to contain CMakeLists.txt.
| Specify --help for usage, or press the help button on the CMake GUI.
| WARNING: exit code 1 from a shell command.
| ERROR: Function failed: do_configure (log file is located at /home/thesidjway/rasl_ws/src/intel-aero/poky/build/tmp/work/x86_64-linux/ceres/1.0-r0/temp/log.do_configure.9002)
NOTE: recipe ceres-1.0-r0: task do_configure: Failed
NOTE: Tasks Summary: Attempted 716 tasks of which 711 didn't need to be rerun and 1 failed.
Summary: 1 task failed:
/home/thesidjway/rasl_ws/src/intel-aero/poky/meta-dense-visual-tracking/recipes-dry/ceres/ceres.bb, do_configure
Summary: There was 1 ERROR message shown, returning a non-zero exit code.
내가 뭔가 어리석은 짓을 했나요, 아니면 나쁜 짓을 했나요?
답변1
저는 이에 대한 전문가는 아니지만 폴더를 보면 다음과 같습니다.
/home/thesidjway/rasl_ws/src/intel-aero/poky/build/tmp/work/x86_64-linux/ceres/1.0-r0/ceres-cmake
cmake 파일이 해당 폴더에 있는지 확인하십시오. Yocto는 cmake 파일이 ceres-cmake 폴더에 있을 것으로 예상합니다.