В настоящее время я пытаюсь создать образ yocto и SDK для пользовательской платы с MediaTek MT8167B (https://www.mediatek.com/products/tablets/mt8167b).
У меня установлена последняя версия yocto (2.5.2), я настроилэто в local.conf:
MACHINE ?= "qemuarm"
TARGET_SYS = "arm-linux-gnueabihf"
TUNE_FEATURES = "arm armv7a cortexa7 vfpv4 neon"
TUNE_CCARGS_MFLOAT = "vfp"
TUNE_CCARGS_MFLOAT = "hard"
Но перед сборкой конфигурация сборки покажет, что TARGET_FPU все еще мягок:
Build Configuration:
BB_VERSION = "1.38.0"
BUILD_SYS = "x86_64-linux"
NATIVELSBSTRING = "universal"
TARGET_SYS = "arm-linux-gnueabihf"
MACHINE = "qemuarm"
DISTRO = "poky"
DISTRO_VERSION = "2.5.2"
TUNE_FEATURES = "arm armv7a cortexa7 vfpv4 neon"
TARGET_FPU = "soft"
meta
meta-poky
meta-yocto-bsp = "psc-2.5.2:95ebfb33e4c0aa9669f318e061a4d7540b84f4ac"
Затем сборка запускается и в этот момент происходит сбой.:
| checking whether ln -s works... yes
| checking for arm-linux-gnueabihf-gcc... /home/mggk/poky/build/tmp/work/x86_64-linux/gcc-cross-initial-arm/7.3.0-r0/gcc-7.3.0/build.x86_64-linux.arm-linux-gnueabihf/./gcc/xgcc -B/home/mggk/poky/build/tmp/work/x86_64-linux/gcc-cross-initial-arm/7.3.0-r0/gcc-7.3.0/build.x86_64-linux.arm-linux-gnueabihf/./gcc/ -B/home/mggk/poky/build/tmp/work/x86_64-linux/gcc-cross-initial-arm/7.3.0-r0/recipe-sysroot-native/usr/arm-linux-gnueabihf/bin/ -B/home/mggk/poky/build/tmp/work/x86_64-linux/gcc-cross-initial-arm/7.3.0-r0/recipe-sysroot-native/usr/arm-linux-gnueabihf/lib/ -isystem /home/mggk/poky/build/tmp/work/x86_64-linux/gcc-cross-initial-arm/7.3.0-r0/recipe-sysroot-native/usr/arm-linux-gnueabihf/include -isystem /home/mggk/poky/build/tmp/work/x86_64-linux/gcc-cross-initial-arm/7.3.0-r0/recipe-sysroot-native/usr/arm-linux-gnueabihf/sys-include --sysroot=/home/mggk/poky/build/tmp/work/x86_64-linux/gcc-cross-initial-arm/7.3.0-r0/recipe-sysroot
| checking for suffix of object files... configure: error: in `/home/mggk/poky/build/tmp/work/x86_64-linux/gcc-cross-initial-arm/7.3.0-r0/gcc-7.3.0/build.x86_64-linux.arm-linux-gnueabihf/arm-linux-gnueabihf/libgcc':
| configure: error: cannot compute suffix of object files: cannot compile
| See `config.log' for more details.
| ERROR: oe_runmake failed
| Makefile:11175: recipe for target 'configure-target-libgcc' failed
| make: *** [configure-target-libgcc] Error 1
| WARNING: exit code 1 from a shell command.
| ERROR: Function failed: do_compile (log file is located at /home/mggk/poky/build/tmp/work/x86_64-linux/gcc-cross-initial-arm/7.3.0-r0/temp/log.do_compile.25969)
ERROR: Task (/home/mggk/poky/meta/recipes-devtools/gcc/gcc-cross-initial_7.3.bb:do_compile) failed with exit code '1'
NOTE: Tasks Summary: Attempted 138 tasks of which 80 didn't need to be rerun and 1 failed.
Если честно, я понятия не имею, из-за чего происходит сбой, чистая система Linux (Ubuntu 18.04), а не другой установленный компилятор.
Спасибо за помощь.