yocto 版本问题 WSL 和 ubuntu 我正在在 WSL 环境中版本 yocto。但是,它不再在 nodejs 编译中运行。 我一直在等待它的结束,但只更新了版本时间。 nodejs-18.16.0-r0 do_compile - 1h20m27s (pid 187) i.MX 8M | i.MX 8M Mini | i.MX 8M Nano Re: yocto build issue WSL and ubuntu 对于仍然面临这个问题的人,我设法通过增加 wsl 资源和在构建之前将 python 版本从 2 改为 3 来解决这个问题。 Re: yocto build issue WSL and ubuntu 你们好 我在nodejs版本时遇到了同样的问题。 如果您成功解决了这个问题,能否请您分享一下解决方案? 谢谢! Re: yocto build issue WSL and ubuntu 你好,金、 我知道你和我面临着类似的问题。不过,我还没能解决这个问题。我目前正在寻找解决方法。 如果您找到了解决这个问题的方法,请与我分享。我非常希望听到你们在解决我们共同的问题方面的见解和经验。 谢谢, Man Lee Re: yocto build issue WSL and ubuntu hi Brian 我测试了增加 16BG 的交换内存。 但是,这并不能解决问题。 ,你有什么办法吗? 致以最崇高的敬意 Re: yocto build issue WSL and ubuntu 嗨,@sutton_kim、
正如我在上次答复中所说的那样。该问题与内存有关,因为操作系统正在杀死进程,通常与内存有关,但不是专门与 SWAP 内存有关,除了 RAM 内存不足问题外,SWAP 内存也可能是一个原因。
有关 SWAP 内存或分区及其在 Linux 系统中的使用,请访问以下链接:Linux 系统上的交换空间简介 | Opensource.com
请查看此链接。
祝你愉快 Re: yocto build issue WSL and ubuntu 你好,布莱恩 ,你能解释一下为什么你认为是 SWAP 内存问题吗? ,我正在尝试。 顺祝商祺! Re: yocto build issue WSL and ubuntu 嗨,@sutton_kim、
感谢您的回复。
我查看了您的错误日志,发现了以下错误:
collect2: fatal error: ld terminated with signal 9 [Killed]
这是一个与内存空间有关的错误。
您可以尝试将 SWAP 内存增加到至少 8GB,并增加 /home 磁盘空间。
谨致问候,布莱恩。 Re: yocto build issue WSL and ubuntu 你好 您的问题也是 nodejs 编译问题吗? Re: yocto build issue WSL and ubuntu 我使用的是 wsl2 ubuntu 20.04。我也在 wsl 2 中为编译 yocto 版本而苦苦挣扎。%95% 的情况与内存不足有关。内存使用量达到峰值,并出现无关错误。创建 .wslconfig 中的文件,并添加这些行: [wsl2] 内存=5GB 编译时不要做任何事情,单独编译任务,先编译简单的任务。 这就是我的经验。 顺祝商祺! Re: yocto build issue WSL and ubuntu 嗨 prakashram72 我的磁盘超过 50G,内存也超过 4G。 我的 imx8 板 nodejs 版本是 18.16.0 我已经试过 bitbake nodejs -c cleanall。但问题还没有解决。 我尝试了以下各种方法,但都没有解决问题。 1.bb_number_threads = " 2" PARALLEL_MAKE = "-j 2 " 添加 版本/conf/local.conf 2. nice -n 19 ionice -c 3 bitbake nodejs 顺祝商祺! Re: yocto build issue WSL and ubuntu 你好,布莱恩 我的 ubuntu 版本是 20.4 以下是错误日志 | collect2: fatal error: ld terminated with signal 9 [Killed] | 编译终止。 | make[1]:*** [node.target.mk:218:版本/node] 错误 1 | make [1]:*** 等待未完成的任务... | rm bfc4ab6848d78126d96ea1cc2909493619e2620.e2620.中级001fef872bcdd412983a45d8751148446514e391.intermediate0ecc6719bf1f9373e09aab7ca8e249bc65708f7b.intermediate27f057ffd656a5a48c99be9d693d885fa74e6838.intermediatef0a82c14c8271d9ee3baddfc8f0b6dbcd3b7256d.intermediateb3fe029693590b3f84422b3d42e7496dcc1c55c5.intermediate | make:*** [Makefile:134: node] Error 2 | WARNING: /home/sukim/kasan/build.imx8/tmp/work/aarch64-elina-linux/nodejs/18.16.0-r0/temp/run.do_compile.1063:1从 “退出 1” 退出 1 | 错误:任务(/home/sukim/kasan/meta/project/meta-cx/recipes-devtools/nodejs/nodejs/18.16.0.bb: do_compile)失败,退出代码为 “1” 注意:任务摘要:尝试过的 1235 个任务,其中 162 个不需要重新运行,1 个任务失败。 注意:编写 buildHistory 注意:编写构建历史记录花费:3 秒钟 注意:构建完成摘要: 注意:do_populate_sysroot:29.1% 的状态重用(34 个集场景,83 个临时场景) 注意:do_package:0.0% sstate 重用(0 setscene,39) 注意:do_packageData:100.0% 状态重复使用(39 个场景,0 个暂存) 注意:do_package_write_rpm:100.0%状态重复使用(39 个场景,0 个临时场景) 注意:do_populate_lic:100.0%状态重复使用(1 个场景,0 个临时场景) 摘要:1 个任务失败:/home/sukim/kasan/meta/project/meta-cx/recipes-devtools/nodejs /nodejs_18.16.0.bb: do_compile 摘要:共显示 45 条警告信息。 摘要:显示了 2 条ERROR 信息,返回一个非零退出代码。 也在 run.do_compile 下面。日志错误部分 -Wl,--hash-style=gnu-Wl,--as-needed-fstack-protector-strong-Wl,-z,relro,-z,now-fstack-protector-strong-Wl,-z,relro,-z,now' AR.host='aarch64-elina-linux-gcc-ar' builddir_name=./ " $@" } die() { bbfatal_log " $*" } bbfatal_log() { if [ -p /home/sukim/kasan/build.imx8/tmp/work/aarch64-elina-linux/nodejs/18.16.0-r0/temp/fifo.32044 那么 printf " % b\0" " bbfatal_log $*" > /home/sukim/kasan/build.imx8/tmp/work/aarch64-elina-linux/nodejs/18.16.0-r0/temp/fifo.32044 不然 echo " ERROR: $*" fi 退出 1 } 顺祝商祺! Re: yocto build issue WSL and ubuntu 嗨,@sutton_kim、
能否请您共享 Yocto 生成的错误日志?
此外,根据i.MX Yocto Project用户指南,建议使用Ubuntu环境。
"建议使用的 Ubuntu 最低版本为 20.04 或更高版本。"
祝你愉快
谨致问候,布莱恩。 Re: yocto build issue WSL and ubuntu 嗨,@sutton_kim、 在适用于 Linux 的 Windows 子系统 (WSL) 环境中 Yocto 的 nodejs 编译步骤中,你似乎遇到了麻烦。造成这种情况的原因有很多,但常见的原因是系统资源不足,尤其是内存不足。 首先,确保您的系统满足 Yocto 版本的最低要求。根据Yocto Project快速入门指南,你应该至少有50千兆字节的可用磁盘空间和4千兆字节的内存。如果同时运行其他繁重的应用程序,请考虑关闭它们以释放资源。 如果系统资源不是问题,那么可能是你尝试编译的 nodejs 的特定版本出现了问题。您可以尝试切换到其他版本,看看问题是否仍然存在。 另一个潜在问题可能是 WSL 环境本身。虽然 WSL 在兼容性方面取得了长足进步,但它并不能 100% 等同于本地 Linux 环境。如果可能的话,你可能想尝试在原生 Linux 环境中运行你的版本,看看问题是否仍然存在。 最后,你可以尝试使用 “bitbake-c cleanall nodejs” 命令清理你的编译环境,然后重新尝试版本。 有关更详细的故障排除,您可能会发现以下资源很有帮助: Yocto 在 ubuntu 18.04 WSL 上版本失败 Yocto 项目编译主机设置 Yocto 项目快速入门 此致, Prakash
查看全文