Скопируйте Yocto Project на другой компьютер с помощью tar - PullRequest
0 голосов
/ 30 апреля 2018

Из-за плохого интернет-соединения на стороне клиента я скопировал tar-файл моего проекта Yocto для клиента.

Однако клиент столкнулся с проблемой, разархивировав проект Yocto Project, и запустил команду bitbake для создания проекта на своем ПК.

Клиент получил следующую ошибку кода сборки:

s32v@s32v-vm:~/s32v_15.0/yocto_auto_linux_bsp15.0/build_s32v234evb_release$ bitbake fsl-image-s32v2xx
ERROR:  OE-core's config sanity checker detected a potential misconfiguration.
  Either fix the cause of this error or at your own risk disable the checker (see sanity.conf).
  Following is the list of potential problems / advisories:

  Error, TMPDIR has changed location. You need to either move it back to /media/2T_HDD_for_SDK/Amingo/S32V/yocto_auto_linux_bsp15.0/build_s32v234evb_release/tmp or rebuild

Summary: There was 1 ERROR message shown, returning a non-zero exit code.

Я изменил файл / build_s32v234evb_release / tmp / save_tmpdir, чтобы переместить каталог tmp, эта ошибка прошла.

Тем не менее, я получил еще одну ошибку при сборке ядра, похоже, что параметр каталога по-прежнему неверен ... (При сборке только U-Boot ошибки нет.)

s32v@s32v-vm:~/s32v_15.0/yocto_auto_linux_bsp15.0/build_s32v234evb_release$ bitbake fsl-image-s32v2xx
Loading cache: 100% |########################################################################################################################################################################| ETA:  00:00:00
Loaded 2462 entries from dependency cache.
NOTE: Resolving any missing task queue dependencies

Build Configuration:
BB_VERSION        = "1.26.0"
BUILD_SYS         = "x86_64-linux"
NATIVELSBSTRING   = "Ubuntu-14.04"
TARGET_SYS        = "aarch64-fsl-linux"
MACHINE           = "s32v234evb"
DISTRO            = "fsl-networking"
DISTRO_VERSION    = "1.8"
TUNE_FEATURES     = "aarch64"
TARGET_FPU        = ""
meta              
meta-yocto        
meta-yocto-bsp    = "(nobranch):03b0fbcf6b3b5cd16ae16738fbaabd1c6bf98536"
meta-fsl-arm      = "(nobranch):c9f259a4bf8472dfa3ff75f1c3fcbe5e0ded7aaf"
meta-fsl-networking = "(nobranch):b8ff02a8d508464a16c84e1d13c155f45aa98cbe"
meta-fsl-toolchain = "(nobranch):0a235c4bcd4057608ee60b8c898eec9509632b95"
meta-virtualization = "(nobranch):0277cbcb47db4239d0a4aa3b37c5c6a705070951"
meta-fsl-s32v     = "<unknown>:<unknown>"
meta-oe           
meta-networking   
meta-python       
meta-webserver    
meta-filesystems  = "(nobranch):c841231b9f327d2d06d19d2ba1324dd86b83617c"
meta-linaro       
meta-aarch64      
meta-linaro-toolchain = "(nobranch):5075a82bd510d19617803fb16da2375605225cbb"

NOTE: Preparing RunQueue
WARNING: /home/s32v/s32v_15.0/yocto_auto_linux_bsp15.0/meta-fsl-s32v/recipes-kernel/linux/linux-s32v2xx_4.1.26.bb.do_compile is tainted from a forced run
WARNING: /home/s32v/s32v_15.0/yocto_auto_linux_bsp15.0/meta-fsl-s32v/recipes-bsp/u-boot/u-boot-s32v2xx_2016.01.bb.do_compile is tainted from a forced run
WARNING: /home/s32v/s32v_15.0/yocto_auto_linux_bsp15.0/meta-fsl-s32v/recipes-bsp/u-boot/u-boot-s32v2xx_2016.01.bb.do_deploy is tainted from a forced run
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
ERROR: Function failed: do_compile (log file is located at /home/s32v/s32v_15.0/yocto_auto_linux_bsp15.0/build_s32v234evb_release/tmp/work/s32v234evb-fsl-linux/linux-s32v2xx/4.1.26-r0/temp/log.do_compile.17853)
ERROR: Logfile of failure stored in: /home/s32v/s32v_15.0/yocto_auto_linux_bsp15.0/build_s32v234evb_release/tmp/work/s32v234evb-fsl-linux/linux-s32v2xx/4.1.26-r0/temp/log.do_compile.17853
Log data follows:
| DEBUG: Executing shell function do_compile
| NOTE: make -j 4 Image CC=aarch64-fsl-linux-gcc    --sysroot=/home/s32v/s32v_15.0/yocto_auto_linux_bsp15.0/build_s32v234evb_release/tmp/sysroots/s32v234evb LD=aarch64-fsl-linux-ld.bfd    --sysroot=/home/s32v/s32v_15.0/yocto_auto_linux_bsp15.0/build_s32v234evb_release/tmp/sysroots/s32v234evb
| make: *** /media/2T_HDD_for_SDK/Amingo/S32V/yocto_auto_linux_bsp15.0/build_s32v234evb_release/tmp/work-shared/s32v234evb/kernel-source: No such file or directory.  Stop.
| make: *** [__sub-make] Error 2
| ERROR: oe_runmake failed
| WARNING: exit code 1 from a shell command.
| ERROR: Function failed: do_compile (log file is located at /home/s32v/s32v_15.0/yocto_auto_linux_bsp15.0/build_s32v234evb_release/tmp/work/s32v234evb-fsl-linux/linux-s32v2xx/4.1.26-r0/temp/log.do_compile.17853)
ERROR: Task 76 (/home/s32v/s32v_15.0/yocto_auto_linux_bsp15.0/meta-fsl-s32v/recipes-kernel/linux/linux-s32v2xx_4.1.26.bb, do_compile) failed with exit code '1'
ERROR: Function failed: do_compile (log file is located at /home/s32v/s32v_15.0/yocto_auto_linux_bsp15.0/build_s32v234evb_release/tmp/work/x86_64-linux/qemu-native/2.2.0-r1/temp/log.do_compile.17854)
ERROR: Logfile of failure stored in: /home/s32v/s32v_15.0/yocto_auto_linux_bsp15.0/build_s32v234evb_release/tmp/work/x86_64-linux/qemu-native/2.2.0-r1/temp/log.do_compile.17854
Log data follows:
| DEBUG: Executing shell function do_compile
| NOTE: make -j 4
|   LINK  tests/qemu-iotests/socket_scm_helper
|   GEN   qemu-doc.html
|   GEN   qemu.1
|   CC    qga/commands.o
| cc1: warning: /media/2T_HDD_for_SDK/Amingo/S32V/yocto_auto_linux_bsp15.0/build_s32v234evb_release/tmp/sysroots/x86_64-linux/usr/include/pixman-1: No such file or directory [enabled by default]
| cc1: warning: /media/2T_HDD_for_SDK/Amingo/S32V/yocto_auto_linux_bsp15.0/build_s32v234evb_release/tmp/sysroots/x86_64-linux/usr/include/glib-2.0: No such file or directory [enabled by default]
| cc1: warning: /media/2T_HDD_for_SDK/Amingo/S32V/yocto_auto_linux_bsp15.0/build_s32v234evb_release/tmp/sysroots/x86_64-linux/usr/lib/glib-2.0/include: No such file or directory [enabled by default]
| /home/s32v/s32v_15.0/yocto_auto_linux_bsp15.0/build_s32v234evb_release/tmp/work/x86_64-linux/qemu-native/2.2.0-r1/qemu-2.2.0/qga/commands.c:13:18: fatal error: glib.h: No such file or directory
|  #include <glib.h>
|                   ^
| compilation terminated.
| make: *** [qga/commands.o] Error 1
| make: *** Waiting for unfinished jobs....
| ERROR: oe_runmake failed
| WARNING: exit code 1 from a shell command.
| ERROR: Function failed: do_compile (log file is located at /home/s32v/s32v_15.0/yocto_auto_linux_bsp15.0/build_s32v234evb_release/tmp/work/x86_64-linux/qemu-native/2.2.0-r1/temp/log.do_compile.17854)
ERROR: Task 2849 (virtual:native:/home/s32v/s32v_15.0/yocto_auto_linux_bsp15.0/poky/meta/recipes-devtools/qemu/qemu_2.2.0.bb, do_compile) failed with exit code '1'
NOTE: Tasks Summary: Attempted 1504 tasks of which 1502 didn't need to be rerun and 2 failed.
Waiting for 0 running tasks to finish:

Summary: 2 tasks failed:
  /home/s32v/s32v_15.0/yocto_auto_linux_bsp15.0/meta-fsl-s32v/recipes-kernel/linux/linux-s32v2xx_4.1.26.bb, do_compile
  virtual:native:/home/s32v/s32v_15.0/yocto_auto_linux_bsp15.0/poky/meta/recipes-devtools/qemu/qemu_2.2.0.bb, do_compile
Summary: There were 3 WARNING messages shown.
Summary: There were 2 ERROR messages shown, returning a non-zero exit code.

Мой вопрос:

  1. Можно ли скопировать проект Yocot на другой компьютер с помощью файла tar?
  2. Какие конфигурационные / исходные файлы мне нужно редактировать, кроме файла save_tmpdir?
  3. Какой файл в Yocto Project определяет каталог "kernel-source"?

С наилучшими пожеланиями, Уэйн Куо

Ответы [ 2 ]

0 голосов
/ 08 июля 2019

при копировании проекта tar на другой компьютер будут изменены два файла:

  1. сборка / CONF / bblayers.conf
  2. сборка / TMP / saved_tmpdir
0 голосов
/ 30 апреля 2018

Если речь идет только о подключении к Интернету, я предлагаю вам создать зеркало для загрузки папки.

На вашей стороне вы добавляете BB_GENERATE_MIRROR_TARBALLS и строите. Затем скопируйте всю папку DL_DIR на стороне клиента и используйте BB_NO_NETWORK там.

Вы можете посмотреть здесь и здесь в качестве примера использования.

Затем вы можете сделать новую сборку на стороне клиента без подключения к интернету. чтобы ускорить процесс, вы также можете скопировать папку sstate-cache на сторону клиента и добавить зеркало состояния с помощью SSTATE_MIRRORS .

  1. Нет, вам понадобится новая папка для сборки
  2. Вам необходимо создать новую среду Yocto на стороне клиента.
  3. Это переменная битового теста STAGING_KERNEL_DIR
...