Application Building Failure Due to DVPP APIs

Symptom

DVPP APIs are not defined, leading to a building error. The log keywords include undefined reference to ***.

Possible Cause

The possible cause is as follows:

DVPP and AscendCL APIs have been packed into the libacl_dvpp.so and libascendcl.so respectively. Test cases use the DVPP APIs but are not linked to libacl_dvpp.so.

Solution

To rectify the fault, perform the following steps:

Check whether test cases use the DVPP APIs that are not linked to the libacl_dvpp.so. If no, link libacl_dvpp.so in the build file.

Check whether the target_link_libraries() option in CmakeLists is connected to the acl_dvpp target.

Example:

add_executable(main
utils.cpp
main.cpp)
target_link_libraries(main
ascendcl acl_dvpp stdc++)