https://gitee.com/ascend/samples/issues/I7TWXS#note_20629228
首先,你要知道 acl 在哪里
acl 是一个 so 文件,可以让 cpython 直接调用的 so 文件,是 cann 的一部分
pypi 上下载不到 acl
所以你要调用 acl,首先要安装 cann
cann 默认的安装路径在 /usr/local/Ascend/ascend-toolkit/
acl 默认的安装路径在 /usr/local/Ascend/ascend-toolkit/latest/aarch64-linux/lib64/libamctacl.so
注意我这里是 arm 的,你的要是 x86 的,那么 acl 的路径是不一样的
然后你要知道 python 是怎么导包的
有一个环境变量叫做 PYTHONPATH,这个环境变量是决定 python 去哪里导包的
所以要导入 acl 就很简单,把 acl.so 文件所在路径加入 PYTHONPATH 环境变量就行
你可以把 PYTHONPATH 环境变量的值理解为一个 list,用 ; 分割
如果你害怕配置 PYTHONPATH,或者对 linux 、python 等等啥都不熟悉,继续往下看
cann 已经默认给你配好了
你安装 cann 之后,在 cann 的安装路径下面,会有一个 set_env.sh
比如在我这里的路径就是 /usr/local/Ascend/ascend-toolkit/set_env.sh
查看改文件内容
export ASCEND_TOOLKIT_HOME=/usr/local/Ascend/ascend-toolkit/latest
export LD_LIBRARY_PATH=${ASCEND_TOOLKIT_HOME}/lib64:${ASCEND_TOOLKIT_HOME}/lib64/plugin/opskernel:${ASCEND_TOOLKIT_HOME}/lib64/plugin/nnengine:$LD_LIBRARY_PATH
export PYTHONPATH=${ASCEND_TOOLKIT_HOME}/python/site-packages:${ASCEND_TOOLKIT_HOME}/opp/built-in/op_impl/ai_core/tbe:$PYTHONPATH
export PATH=${ASCEND_TOOLKIT_HOME}/bin:${ASCEND_TOOLKIT_HOME}/compiler/ccec_compiler/bin:$PATH
export ASCEND_AICPU_PATH=${ASCEND_TOOLKIT_HOME}
export ASCEND_OPP_PATH=${ASCEND_TOOLKIT_HOME}/opp
export TOOLCHAIN_HOME=${ASCEND_TOOLKIT_HOME}/toolkit
export ASCEND_HOME_PATH=${ASCEND_TOOLKIT_HOME}
不要直接复制我的,环境、平台、版本等等不同,文件内容不同
你就会发现这个里面已经帮你配好 PYTHONPATH 了
你一次性,就复制粘贴 export PYTHONPATH=${ASCEND_TOOLKIT_HOME}/python/site-packages:${ASCEND_TOOLKIT_HOME}/opp/built-in/op_impl/ai_core/tbe:$PYTHONPATH
到终端执行一下,就 ok 了,这个时候你就可以导入 acl 了
如果你想一劳永逸,你可以把上的所有内容都加到 ~/.bashrc
中去
然后新开一个终端或者 source ~/.bashrc
,然后你就可以愉快的导入 acl 了
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。