APP使用dvpp接口编译失败
2022/08/11
158
问题信息
问题来源 | 产品大类 | 产品子类 | 关键字 |
---|---|---|---|
官方 | CANN | 应用开发AscendCL | APP、dvpp接口、编译、失败、undefined、libacl_dvpp.so |
问题现象描述
- 业务场景:DVPP
- 适用处理器:Atlas 200/300/500 推理产品、Atlas 推理系列产品、Atlas 训练系列产品
- 处理器形态:EP、RC
- 问题现象:
编译提示DVPP的相关接口未定义,编译报错,日志关键字包括:undefined reference to ***
原因分析
分析上述日志信息,可能存在以下故障原因:
DVPP与AscendCL已经分别打包到libacl_dvpp.so与libascendcl.so,测试用例使用了DVPP的相关接口,但没有链接libacl_dvpp.so。
解决措施
针对分析的可能原因,可以参考下面步骤处理:
排查测试用例是否使用了预处理的接口,但未链接libacl_dvpp.so。如果未链接,需要在编译文件中链接libacl_dvpp.so。
需要排查CmakeLists中的target_link_libraries()选项是否连接了acl_dvpp这个target。
示例:
add_executable(main utils.cpp main.cpp) target_link_libraries(main ascendcl acl_dvpp stdc++)
本页内容