[英]YOCTO: "error: cannot run ssh: No such file or directory"
我正在用 yocto 覆盆子做一個食譜。 我想用 git 從服務器獲取一些文件。 這是我的食譜:
DESCRIPTION = "test"
SECTION = "abc"
LICENSE = "CLOSED"
PR = "r0"
SRC_URI =
"git://gerrit.g1.abc.corp:29418/cardlog;protocol=ssh;rev=master"
"
PACKAGE_ARCH = "${MACHINE_ARCH}"
S = "${WORKDIR}/git"
inherit pkgconfig cmake
do_install() {
install -d ${D}${base_bindir}
install -m 0755 cardlog ${D}${base_bindir}
}
運行 bitbake 時收到此錯誤消息:
ERROR: abc-cardlog-1.0-r0 do_fetch:
Fetcher failure:
Fetch command export DBUS_SESSION_BUS_ADDRESS="unix:abstract=/tmp/dbus-j365B7zbUr,guid=20e178f2b82d0bb8e57068dc59e83e63";
export SSH_AUTH_SOCK="/run/user/1000/keyring/ssh"; export no_proxy="localhost,127.0.0.0/8,::1";
export NO_PROXY="localhost,127.0.0.0/8,::1";
export PATH="/home/abc-int/Desktop/yocto_r/build-rpi/tmp/sysroots-uninative/x86_64-linux/usr/bin:
/home/abc-int/Desktop/yocto_r/poky/scripts:
/home/abc-int/Desktop/yocto_r/build-rpi/tmp/work/raspberrypi-poky-linux-gnueabi/abc-cardlog/1.0-r0/recipe-sysroot-native/usr/bin/arm-poky-linux-gnueabi:
/home/abc-int/Desktop/yocto_r/build-rpi/tmp/work/raspberrypi-poky-linux-gnueabi/abc-cardlog/1.0-r0/recipe-sysroot/usr/bin/crossscripts:
/home/abc-int/Desktop/yocto_r/build-rpi/tmp/work/raspberrypi-poky-linux-gnueabi/abc-cardlog/1.0-r0/recipe-sysroot-native/usr/sbin:
/home/abc-int/Desktop/yocto_r/build-rpi/tmp/work/raspberrypi-poky-linux-gnueabi/abc-cardlog/1.0-r0/recipe-sysroot-native/usr/bin:
/home/abc-int/Desktop/yocto_r/build-rpi/tmp/work/raspberrypi-poky-linux-gnueabi/abc-cardlog/1.0-r0/recipe-sysroot-native/sbin:
/home/abc-int/Desktop/yocto_r/build-rpi/tmp/work/raspberrypi-poky-linux-gnueabi/abc-cardlog/1.0-r0/recipe-sysroot-native/bin:
/home/abc-int/Desktop/yocto_r/poky/bitbake/bin:/home/abc-int/Desktop/yocto_r/build-rpi/tmp/hosttools";
export HOME="/home/abc-int"; git -c core.fsyncobjectfiles=0 ls-remote ssh://gerrit.g1.abc.corp:29418/cardlog failed with exit code 128, output:
error: cannot run ssh: No such file or directory
fatal: unable to fork
ERROR: abc-cardlog-1.0-r0 do_fetch: Function failed: base_do_fetch
ERROR: Logfile of failure stored in: /home/abc-int/Desktop/yocto_r/build-rpi/tmp/work/raspberrypi-poky-linux-gnueabi/abc-cardlog/1.0-r0/temp/log.do_fetch.16941
ERROR: Task (/home/abc-int/Desktop/yocto_r/build-rpi/../poky/meta-abc/recipes-abc-cardlog/abc-cardlog/abc-cardlog.bb:do_fetch) failed with exit code '1'
我已經在另一個 yocto 項目上成功運行了這個食譜。 我沒有問題,我的文件是從 git 成功下載的。
我已經將我的工作轉移到了 rasbberrypi 板上。 所以我創建了一個帶有樹莓層的新 yocto 項目。 我已經添加了我自己的層。 我試着用這個食譜復制一些文件,一切正常。
請問有什么建議嗎?
我假設您使用的是rocko。 可能會解決您的問題的是將 Rocko 分支的最新上游版本合並到您的 poky 目錄中,例如通過執行git pull
。
我今天正在處理同樣的問題,bitbake 找不到 ssh 的原因是,自從 Rocko 以來,OpenEmbedded 開發人員決定通過將 PATH 替換為包含“已批准”本機二進制文件的符號鏈接的目錄來清理構建環境。 這個批准的二進制文件列表由在 meta/conf/bitbake.conf 中定義的 HOSTTOOLS 變量確定。 有人不小心導致 ssh 從該列表中刪除,此后已修復。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.