Я пытаюсь собрать m xnet 1.6.0 с Yocto (Rocko) для моего 64-битного Armv8-A. Прежде всего, я скачал m xnet с https://downloads.apache.org/incubator/mxnet/1.6.0/. Я сохранил загруженный tar в папке files в одном из слоев. и я включил этот tar-файл в мой m xnet .bb файл, как показано ниже.
m xnet .bb
SUMMARY = "MXNET Package"
SECTION = "libs"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
PN = 'mxnet'
PV = '1.6.0'
DEPENDS = "openblas opencv gtest gperftools"
SRC_URI := " \
file://apache-mxnet-src-1.6.0-incubating.tar.gz"
SRC_URI[md5sum] = "76802d6b14cd45c27f063b2bba3c9a14"
S := "${WORKDIR}/apache-${PN}-src-${PV}-incubating"
inherit cmake pkgconfig
OECMAKE_GENERATOR = "Unix Makefiles"
EXTRA_OECMAKE += " -DUSE_SSE=OFF \
-DUSE_CUDA=OFF \
-DUSE_OPENCV=ON \
-DUSE_OPENMP=ON \
-DUSE_MKL_IF_AVAILABLE=OFF \
-DUSE_SIGNAL_HANDLER=ON \
-DUSE_LAPACK=OFF"
- Затем я собрал его с помощью команды bitbake mnxet . Я получил следующую ошибку.
ОШИБКА:
-- Detecting CXX compiler ABI info
| -- Detecting CXX compiler ABI info - done
| -- Detecting CXX compile features
| -- Detecting CXX compile features - done
| -- CMAKE_CROSSCOMPILING TRUE
| -- CMAKE_HOST_SYSTEM_PROCESSOR x86_64
| -- CMAKE_SYSTEM_PROCESSOR aarch64
| -- CMAKE_SYSTEM_NAME Linux
| -- CMake version '3.14.1' using generator 'Unix Makefiles'
| -- Performing Test SUPPORT_CXX11
| -- Performing Test SUPPORT_CXX11 - Success
| -- Performing Test SUPPORT_CXX0X
| -- Performing Test SUPPORT_CXX0X - Success
| -- Determining F16C support
| -- Performing Test COMPILER_SUPPORT_MF16C
| -- Performing Test COMPILER_SUPPORT_MF16C - Failed
| -- Could not find OpenBLAS include. Turning OpenBLAS_FOUND off
| -- Could not find OpenBLAS lib. Turning OpenBLAS_FOUND off
| CMake Error at cmake/Modules/FindOpenBLAS.cmake:82 (MESSAGE):
| Could not find OpenBLAS
| Call Stack (most recent call first):
| cmake/ChooseBlas.cmake:42 (find_package)
| CMakeLists.txt:310 (include)
|
|
| -- Configuring incomplete, errors occurred!
- Я зарегистрировался в
build/tmp/work/aarch64-poky-linux/openblas/0.3.5-r0/image/opt/openblas/lib
и нашел файлы .so и .a. - Я заметил, что в
build/tmp/work/aarch64-poky-linux/mxnet/1.6.0-r0/recipe-sysroot/lib64
нет папки libopenblas.so
или openblas. - Я также проверил
build/tmp/sysroots-components/aarch64/openblas
и обнаружил, что в нем только sysroot-providers
, а * 1034 нет * или любую папку opt или lib (я не могу найти файлы, присутствующие в моей папке изображений openblas, как упомянуто выше).
Итак, вопрос в том, как добавить openblas в мой рецепт sys root в м xnet? чтобы он не выдавал не смог найти ошибку openblas?
ps Я мог бы собрать openblas, только если мои .so файлы присутствовали в пути / opt / openblas / lib. Иначе, если я попытаюсь поместить файлы .so в папку just / lib, это приведет к ошибке Files/directories were installed but not shipped in any package
.