создание рецепта на основе npm для Yocto korgoth не удается - PullRequest
0 голосов
/ 10 июля 2019

Я использую krogoth здесь и попробовал следующие методы для создания рецепта:

  1. с devtool и выпуском версии кода

     devtool add canboatjs https://github.com/canboat/canboatjs/archive/v1.6.9.tar.gz
    

Это выдает мне следующую ошибку:

```ERROR: Command 'recipetool --color=always create -o /tmp/devtoolSqS6lw "https://github.com/canboat/canboatjs/archive/v1.6.9.t
NOTE: Fetching https://github.com/canboat/canboatjs/archive/v1.6.9.tar.gz...
NOTE: Unpacking /home/des/Yocto/PHYTEC_BSPs/yocto_fsl/build/downloads/v1.6.9.tar.gz to /tmp/recipetool-D9484_/
WARNING: npm shrinkwrap failed:

Traceback (most recent call last):
  File "/home/des/Yocto/PHYTEC_BSPs/yocto_fsl/sources/poky/scripts/recipetool", line 116, in <module>
    ret = main()
  File "/home/des/Yocto/PHYTEC_BSPs/yocto_fsl/sources/poky/scripts/recipetool", line 107, in main
    ret = args.func(args)
  File "/home/des/Yocto/PHYTEC_BSPs/yocto_fsl/sources/poky/scripts/lib/recipetool/create.py", line 561, in create_recipe
    handler.process(srctree_use, classes, lines_before, lines_after, handled, extravalues)
  File "/home/des/Yocto/PHYTEC_BSPs/yocto_fsl/sources/poky/scripts/lib/recipetool/create_npm.py", line 116, in process
    self._lockdown(srctree, localfilesdir, extravalues, lines_before)
  File "/home/des/Yocto/PHYTEC_BSPs/yocto_fsl/sources/poky/scripts/lib/recipetool/create_npm.py", line 69, in _lockdown
    cwd=srctree, stderr=subprocess.STDOUT, env=runenv, shell=True)
  File "/home/des/Yocto/PHYTEC_BSPs/yocto_fsl/sources/poky/bitbake/lib/bb/process.py", line 155, in run
    raise ExecutionError(cmd, pipe.returncode, stdout, stderr)
ExecutionError: Execution of 'npm install lockdown --prefix /tmp/tmpzzs4OBrecipetool-npm-lockdown' failed with exit code -11
  1. Я попытался добавить его, используя метод реестра NPM, как указано в Wiki , а также в этом SE Query

    devtool add "npm://registry.npmjs.org;name=canboatjs;version=1.6.9"
    
ERROR: Command 'recipetool --color=always create -o /tmp/devtool7pA2Eo "npm://registry.npmjs.org;name=canboatjs;version=1.6.9"  -x /home/des/Yocto/PHYTEC_BSPs/yocto_fsl/build/python/sources/devtoolsrcgTnmtq' failed:
NOTE: Fetching npm://registry.npmjs.org;name=canboatjs;version=1.6.9...
WARNING: Missing shrinkwrap file in NPM_SHRINKWRAP for canboatjs, this will lead to unreliable builds!
WARNING: Missing lockdown file in NPM_LOCKDOWN for canboatjs, this will lead to unreproducible builds!
WARNING: Failed to fetch URL npm://registry.npmjs.org;name=canboatjs;version=1.6.9, attempting MIRRORS if available
ERROR: Fetcher failure: Fetch command failed with exit code 139, output:
/bin/sh: line 1: 19671 Segmentation fault      npm view canboatjs@'1.6.9' --json --registry http://registry.npmjs.org

ERROR: Fetcher failure for URL: 'npm://registry.npmjs.org;name=canboatjs;version=1.6.9'. Unable to fetch URL from any source.

Я понимаю сбой URL-адреса, но почему он не создается из предоставленного tar-шара.

Я попробовал упомянутый метод в вики для krogoth:

bitbake nodejs-native -c devshell

открывает оболочку разработчика, но версия узла v4.4.3 и npm install дают Segmentation Fault.

Я попытался добавить krogoth ветвь meta-nodejs и запекать devshell снова с v7.10, но он все еще показывает v4.3 и дает ошибку сегментации

Каковы шаги для создания рецепта для хранилища, так как все шаги не выполняются.

...