OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 587|回复: 1

[XILINX] vitis 2025.2 创建platform编译出错

[复制链接]

1

主题

1

帖子

0

精华

新手入门

积分
4
金钱
4
注册时间
2026-3-17
在线时间
0 小时
发表于 6 天前 | 显示全部楼层 |阅读模式
1金钱
在vitis软件上创建了一个helloworld_platform,编译一下出现以下错误,请各位大佬帮我分析下到底什么原因。同样的.xsa文件在其他电脑的vitis可以,就我电脑不行,重新安装vivado和vitis也一样。




回复

使用道具 举报

0

主题

21

帖子

0

精华

初级会员

Rank: 2

积分
113
金钱
113
注册时间
2026-1-29
在线时间
12 小时
发表于 6 天前 | 显示全部楼层
根据您的描述和搜索结果,以下是可能的原因及解决方法的分析:

一、核心问题定位
根据错误现象(编译失败无法生成.xpfm文件)及对比其他电脑的正常情况,问题大概率出在Windows环境下Makefile的通配符解析异常1。具体表现为:
编译器将*.c识别为字面意义的文件名,而非自动展开所有C源文件,导致找不到实际存在的源文件1。
此问题在Microblaze架构下更易触发,Zynq平台较少见1。
二、关键排查步骤
检查自定义IP的驱动层Makefile

定位文件路径:若您添加了自定义AXI IP(如通过“Create and Package New IP”生成),需检查以下目录的Makefile:
hw/drivers/你的IP名称/src
ps7_cortexa9_0/bsp/ps7_cortexa9_0/libsrc(针对Zynq平台)
zynq_fsbl/zynq_fsbl_bsp/ps7_cortexa9_0/libsrc(针对FSBL工程)4
修改通配符写法:将原始代码中的LIBSOURCES = *.c改为显式展开形式:LIBSOURCES = $(wildcard *.c),强制Makefile遍历当前目录下的所有.c文件14。
同步更新BSP层的Makefile

打开Vitis生成的Platform BSP工程,找到对应自定义IP的BSP目录(通常位于<workspace>/<platform_name>/export/.../bsp)。
同样修改其中的Makefile,将*.c替换为$(wildcard *.c)1。
确保XSA与Vitis环境的一致性

重新导出Hardware:在Vivado中完成Block Design后,务必执行Generate Output Products → Export Hardware,勾选“Include bitstream”和“Include CPU system”(如有Microblaze)3。
清理旧缓存:删除Vitis工作空间内的临时文件(如.metadata文件夹下的缓存),避免旧配置干扰新导入的XSA3。
验证工具链兼容性

确保Vivado与Vitis版本严格匹配(如均使用2023.2或2021.2)3。
检查Windows环境变量是否包含Vitis工具链路径(如C:\Xilinx\Vitis\<version>\bin)。
三、替代解决方案(若上述无效)
手动指定源文件列表:放弃通配符,直接在Makefile中列出所有源文件名(如file1.c file2.c),适用于小型工程1。
迁移至Linux环境:Windows对Makefile的支持较弱,可切换到Ubuntu等Linux系统进行编译,规避此问题1。
总的来说,建议您优先尝试修改Makefile中的通配符语法并重新导出XSA文件。若仍无法解决,可以提供具体的错误截图进一步分析。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /1 下一条

正点原子公众号

如发现本坛存在违规或侵权内容, 请点击这里发送邮件举报 (或致电020-38271790)。请提供侵权说明和联系方式。我们将及时审核依法处理,感谢配合。

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2026-4-2 23:18

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表