构建SDK时,没有如期生成相关文件

构建SDK时,由于在编译过程中没有权限访问https://github.com/starfive-tech,导致没有如期生成相关文件:

work/
├── visionfive2_fw_payload.img
├── image.fit
├── initramfs.cpio.gz
├── u-boot-spl.bin.normal.out
├── linux/arch/riscv/boot
    ├── dts
    │   └── starfive
    │       ├── jh7110-visionfive-v2-ac108.dtb
    │       ├── jh7110-visionfive-v2.dtb
    │       ├── jh7110-visionfive-v2-wm8960.dtb
    │       ├── vf2-overlay
    │       │   └── vf2-overlay-uart3-i2c.dtbo
    └── Image.gz

编译错误提示信息如下:

GIT_DIR=/home/nubya/vf2sdk/buildroot/dl/linux/git/.git git init .
提示:使用 ‘master’ 作为初始分支的名称。这个默认分支名称可能会更改。要在新仓库中
提示:配置使用初始分支名,并消除这条警告,请执行:
提示:
提示: git config --global init.defaultBranch <名称>
提示:
提示:除了 ‘master’ 之外,通常选定的名字有 ‘main’、‘trunk’ 和 ‘development’。
提示:可以通过以下命令重命名刚创建的分支:
提示:
提示: git branch -m
已初始化空的 Git 仓库于 /home/nubya/vf2sdk/buildroot/dl/linux/git/.git/
GIT_DIR=/home/nubya/vf2sdk/buildroot/dl/linux/git/.git git remote add origin ‘git@github.com:starfive-tech/linux.git’
GIT_DIR=/home/nubya/vf2sdk/buildroot/dl/linux/git/.git git remote set-url origin ‘git@github.com:starfive-tech/linux.git’
Fetching all references
GIT_DIR=/home/nubya/vf2sdk/buildroot/dl/linux/git/.git git fetch origin
git@github.com: Permission denied (publickey).
fatal: 无法读取远程仓库。

请确认您有正确的访问权限并且仓库存在。
Detected a corrupted git cache.
Removing it and starting afresh.
GIT_DIR=/home/nubya/vf2sdk/buildroot/dl/linux/git/.git git init .
提示:使用 ‘master’ 作为初始分支的名称。这个默认分支名称可能会更改。要在新仓库中
提示:配置使用初始分支名,并消除这条警告,请执行:
提示:
提示: git config --global init.defaultBranch <名称>
提示:
提示:除了 ‘master’ 之外,通常选定的名字有 ‘main’、‘trunk’ 和 ‘development’。
提示:可以通过以下命令重命名刚创建的分支:
提示:
提示: git branch -m
已初始化空的 Git 仓库于 /home/nubya/vf2sdk/buildroot/dl/linux/git/.git/
GIT_DIR=/home/nubya/vf2sdk/buildroot/dl/linux/git/.git git remote add origin ‘git@github.com:starfive-tech/linux.git’
GIT_DIR=/home/nubya/vf2sdk/buildroot/dl/linux/git/.git git remote set-url origin ‘git@github.com:starfive-tech/linux.git’
Fetching all references
GIT_DIR=/home/nubya/vf2sdk/buildroot/dl/linux/git/.git git fetch origin
git@github.com: Permission denied (publickey).
fatal: 无法读取远程仓库。

请确认您有正确的访问权限并且仓库存在。
Detected a corrupted git cache.
This is the second time in a row; bailing out
wget --passive-ftp -nd -t 3 -O ‘/home/nubya/vf2sdk/work/buildroot_initramfs/build/.linux-JH7110_VisionFive2_devel-br1.tar.gz.S8gXI7/output’ ‘http://sources.buildroot.net/linux/linux-JH7110_VisionFive2_devel-br1.tar.gz
–2023-02-19 08:44:48-- http://sources.buildroot.net/linux/linux-JH7110_VisionFive2_devel-br1.tar.gz
正在解析主机 sources.buildroot.net (sources.buildroot.net)… 2606:4700:20::681a:125, 2606:4700:20::ac43:4838, 2606:4700:20::681a:25, …
正在连接 sources.buildroot.net (sources.buildroot.net)|2606:4700:20::681a:125|:80… 已连接。
已发出 HTTP 请求,正在等待回应… 404 Not Found
2023-02-19 08:44:49 错误 404:Not Found。

wget --passive-ftp -nd -t 3 -O ‘/home/nubya/vf2sdk/work/buildroot_initramfs/build/.linux-JH7110_VisionFive2_devel-br1.tar.gz.KYmsaD/output’ ‘http://sources.buildroot.net/linux-JH7110_VisionFive2_devel-br1.tar.gz
–2023-02-19 08:44:49-- http://sources.buildroot.net/linux-JH7110_VisionFive2_devel-br1.tar.gz
正在解析主机 sources.buildroot.net (sources.buildroot.net)… 2606:4700:20::ac43:4838, 2606:4700:20::681a:25, 2606:4700:20::681a:125, …
正在连接 sources.buildroot.net (sources.buildroot.net)|2606:4700:20::ac43:4838|:80… 已连接。
已发出 HTTP 请求,正在等待回应… 404 Not Found
2023-02-19 08:44:50 错误 404:Not Found。

make[1]: *** [package/pkg-generic.mk:190:/home/nubya/vf2sdk/work/buildroot_initramfs/build/linux-headers-JH7110_VisionFive2_devel/.stamp_downloaded] 错误 1
make[1]: 离开目录“/home/nubya/vf2sdk/buildroot”
rm -rf /home/nubya/vf2sdk/work/u-boot
mkdir -p /home/nubya/vf2sdk/work/u-boot
mkdir -p /home/nubya/vf2sdk/work/linux/
make: *** 没有规则可制作目标“/home/nubya/vf2sdk/work/buildroot_initramfs/images/rootfs.tar”,由“/home/nubya/vf2sdk/work/.buildroot_initramfs_sysroot” 需求。 停止。

可否直接提供由
$ make -j$(nproc)

编译生成好了的buildroot_initramfs-menuconfig,buildroot rootfs menuconfig,uboot menuconfig对应的deconfig文件。让大家直接进入buildroot,u-boot,linux进行制作相关镜像和根文件系统。

@whtronyen 你好,想请问你关于这个SDK没有如期生成相关文件。请问你得以解决这个问题了吗?我也在这里卡住了,不能进行下个步骤,找了很多资料,始终无法解决这个问题。如果有解决方法,希望能得到一些帮助。

最新SDK 链接地址:GitHub - starfive-tech/VisionFive2 at VF2_v2.10.4
编译方式请参考README.md;

使用git@github.com 需要先注册github并添加ssh-key,这是官方文档:

3 Likes

我通过将数字签名申请保存后,虽然下载了近280个安装包,但是执行make -j$(nproc)后还是缺失官方列出的文件,尤其是IMG文件。 :sob:

1 Like

我加了,也弄了那个账号该弄的事情,然后重新执行那个 make -j$(nproc),就是没有那个它指定的IMG文件,我已经绝望了 TT 可是还是得继续做,继续找办法。。

对!!很奇怪,每一个官方要求我完成的 commands 都完成了,就是没有那个 IMG 文件

可能是有些包下载不全,在国内下载外网的包有时容易断连。另外记得没错的话有些源码包的地址有谷歌的域名,那就需要科学上网才能下载了

.gitmodules 文件里的 “git@” 都换成 “https://”

是指VPN吗??

做了,还是一样

嗯,也可以试着在可用的镜像找齐相关的无法直接下载的依赖包,编译前先保存到本地,有些是本地有包就不用联网找,有些则需编译前修改hosts把地址重定向到自己设置的地址,或修改代码里的地址到镜像地址

明白,会试着找方法解决,谢谢你们的提议和想法,感激

我按照如下方式摸索冒似成了:
现在VF2目录分别执行 make buildroot_initramfs-menuconfig 和make buildroot_rootfs-menuconfig,make uboot-menuconfig,make linux-menuconfig进入相应menuconfig配置界面后不做任何修改Save保存并退出。安装gcc-riscv64-linux-gnu,分别进入VF2/linux,u-boot,buildroot进行编译,在对应的目录下可以找到相应的Image等文件