首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在构建应用程序项目时,Vitis PetaLinux build无法获取所需的文件

在构建应用程序项目时,Vitis PetaLinux build无法获取所需的文件
EN

Stack Overflow用户
提问于 2021-12-14 08:54:46
回答 1查看 422关注 0票数 0

我想为我的PetaLinux构建一个Ultra96v2图像。我一直跟踪本指南,直到在Vitis构建我的应用程序项目。它看起来很有希望,但是在为我的自定义平台构建应用程序项目时,Vitis抛出了这个错误:

代码语言:javascript
复制
18:08:28 **** Incremental Build of configuration Debug for project dpu_appl_system ****
make all 
Generating bif file for the system project
Executing command '::scw::generate_bif -xpfm /media/user/6b04b610-ff80-4702-a575-b0b1a78fbafb/dpu_pkg/dpu_demo/export/dpu_demo/dpu_demo.xpfm -domains linux_domain -bifpath /media/user/6b04b610-ff80-4702-a575-b0b1a78fbafb/dpu_pkg/dpu_appl_system/Debug/system.bif' on XSCT
sdcard_gen --xpfm /media/user/6b04b610-ff80-4702-a575-b0b1a78fbafb/dpu_pkg/dpu_demo/export/dpu_demo/dpu_demo.xpfm --sys_config dpu_demo --bif /media/user/6b04b610-ff80-4702-a575-b0b1a78fbafb/dpu_pkg/dpu_appl_system/Debug/system.bif --bitstream /media/user/6b04b610-ff80-4702-a575-b0b1a78fbafb/dpu_pkg/dpu_appl/_ide/bitstream/dpu_hardware.bit --sd_file /media/user/6b04b610-ff80-4702-a575-b0b1a78fbafb/dpu_pkg/dpu_appl/Debug/dpu_appl.elf
creating BOOT.BIN using /media/user/6b04b610-ff80-4702-a575-b0b1a78fbafb/dpu_pkg/dpu_appl/_ide/bitstream/dpu_hardware.bit
Running /home/user/Xilinx/Vitis/2021.2/bin/bootgen -arch zynqmp -image /media/user/6b04b610-ff80-4702-a575-b0b1a78fbafb/dpu_pkg/dpu_appl_system/Debug/sd_card_temp/boot.bif -w -o i BOOT.BIN
ERROR:BootGen - syntax error
   Line #13, "/media/user/6b04b610-ff80-4702-a575-b0b1a78fbafb/dpu_pkg/dpu_appl_system/Debug/sd_card_temp/boot.bif".
... emo/sw/atf,dpu_demo/boot/bl31.elf
              ^
 
[ERROR]  : BIF file parsing failed with code 1
Error writing SD card data : Error when running '/home/user/Xilinx/Vitis/2021.2/bin/bootgen -arch zynqmp -image /media/user/6b04b610-ff80-4702-a575-b0b1a78fbafb/dpu_pkg/dpu_appl_system/Debug/sd_card_temp/boot.bif -w -o i BOOT.BIN'
make: *** [makefile:42: package] Error 1
 
18:08:36 Build Finished (took 7s.643ms)

它特别地告诉我,在它搜索文件的路径中有一个逗号。这些文件是可用的

  • 在“正常”位置,没有"atf“、"dtb”等
  • 在“奇怪”的地方。我创建了路径,因此每个抛出错误消息的文件都存在请求的路径,如 /media/user/6b04b610-ff80-4702-a575-b0b1a78fbafb/dpu_pkg/dpu_appl_system/Debug/sd_card_temp/boot.bif". emo/sw/atf,dpu_demo/boot/bl31

我用奇怪的人造物"arf,dpu_demo“创建了路径,路径中有komma,但是它仍然不能工作。这是Vitis的某种问题,比如某些env变量设置不正确,还是构建机制表现得很奇怪?我无法解决这个问题,因为我无法更改它应该查找的文件的路径。这妨碍了我推进我的项目。我在Ubuntu 20.04工作。

有人能帮我一下吗?我会很感激的!我在西林克斯群落中也提出了这个问题,但不幸的是,没有引起任何共鸣。

提前谢谢你!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-12-14 11:03:07

请阅读整个答案以获得实际的解决方案。

我想我现在明白了,虽然我还没有验证这个图像在我的Ultra96v2上是否有效。

我注意到,带有逗号的奇怪路径在boot.bifsystem.bif中。因此,当我第一次尝试构建它时,bif并不存在,而是被创建了(我猜想)。bif当时已经准备好了,但是里面只有一条奇怪的路径,所以我取了makefile (您可以在debug/sd_card中找到它),复制它,然后注释掉行GENERATE_BIF_XSCT_CMD = ${GENERATE_BIF} -xpfm ${XPFM_PATH} -domains ${DOMAINS} -bifpath ${BIF_PATH}

然后,我编辑了boot.bifsystem.bif,并将atf,bootuboot,bootdts,boot更改为boot,因此BootGen不再查看带有逗号的目录,而只查看指定的引导目录。

设置好后,通过进入sd_ executed目录并执行以下命令,在我的控制台中执行编辑的makefile:

代码语言:javascript
复制
make -f <your_edited_makefile>

这意味着,你不能按“构建”在Vitis,它是行不通的。您自己构建的内容,不会得到绿色检查标记旁边的项目!然后SD _ card -目录中填充了(我猜想)从SD卡引导Ultra96v2所需的所有数据。以下是内容:

  • boot.scr
  • BOOT.BIN
  • dpu_appl.elf (我猜您的应用程序项目名称)
  • README.txt
  • system.dtb

根本的问题似乎是::scw::generate_bif创造了一条需要照顾的道路,而这并不存在。在我看来,这件事很奇怪。

更新:我只是使用PetaLinux命令对petalinux-config配置做了一些更改,并重新构建了所有内容。进入Vitis部分之后,我在Vitis本身中更改了system.bif,并成功地编译了该项目,并像看起来的那样填充了sd_card目录。

更新2:一切都失败了,所以我尝试访问应用程序系统项目的*.bif。我打开它(linux.bif)并编辑了"atf“、"dtb”和"uboot“。由于这是只创建一次和引用以下文件,这解决了我的问题,并成功地完成了构建在Vitis。所以不要理会我原来的答案和更新。

我希望这是可行的,并希望它能帮助你们中的一些人。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70346143

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档