【完结】参考《Ascend C环境准备》帖子所遇到的问题与解决方案
收藏回复举报
【完结】参考《Ascend C环境准备》帖子所遇到的问题与解决方案
发表于2026-06-07 00:36:57
0 查看

最近在学习《Ascend C异构并行程序设计》这一门课时,参考了课程导读中关于Ascend C环境搭建的帖子——《Ascend C环境准备》(后续简称为:“原贴”)。

本帖是本人跟着原贴操作的时候遇到的各种“坑”的填坑。


坑点1:下载的数据会保存30天,无需重复下载

文档开篇提到了以下这段话:

cke_2044731.png

这里有点没介绍清楚。比如,新手可能看到“非work目录”、“work目录”就会很懵。我这里斗胆多解释一下。如有错误,请及时斧正。

填坑指南:

如下图所示,我们初次打开终端时,默认进入的工作目录就是work目录。所以,我们wget或直接上传的数据,会放在work目录下。

cke_771856.png

而,Ascend环境的安装位置显然是安装在work目录之外的,故会在实例资源被回收时,同步被清理掉。

解决方案:

我们只需确认之前手动上传或在线下载的文件是否被清除。

cke_53638.png

如上所示,如果下一次启动CodeLab时,拉起NoteBook实例后发现相关文件没有被清理,则后续环境的安装过程就可以跳过原文档中对应资源文件的下载命令(wget命令)。我们只需执行后续的解压、提权或安装的命令。


坑点2:直接将步骤三中“在Terminal中执行以下命令”

上述Terminal就是ModelArts - CodeLab所启动的NoteBook的命令行。直接将命令粘贴进去会报“连接超时”的错误

报错内容如下图所示:

cke_1639.png

填坑指南:

执行以下命令查看环境中的代理相关配置

env | grep proxy

 如下图所示,出现这个问题的原因,是因为当前notebook中的命令行有no_proxy的配置。

这里面有.myhuaweicloud.com这个后缀匹配,所以导致下载的时候没走代理。

解决方案:

将no_proxy的配置项删除即可。执行一下命令进行删除

unset no_proxy

执行命令后重新执行以下命令,观察环境中关于代理的配置

env | grep proxy

 如下图所示原no_proxy的配置项已被删除。

此时,重新执行wget的下载命令就正常了。


坑点3:步骤三中从github的下载操作极为缓慢

第三步中,下载环境的命令里,有从github上下载cmake的操作(即从官方仓库中下载cmake-3.26.4-linux-x86_64.tar.gz)。

但下载速度实在是太慢了,基本上只有100KB/s的速度。如果死等这个包下载完,时间成本太高了。

填坑指南:

可以自行通过github镜像站下载加速站等方式手动下载cmake-3.26.4-linux-x86_64.tar.gz文件。然后将该文件手动传入CodeLab的NoteBook中。

解决方案:

由于昇腾社区的限制(单文件10MB和文件后缀的限制),我无法直接将我下载好的.tar.gz后缀的文件直接作为附件放在本帖下方供大家下载。所以我将源文件解压后,用WinRAR进行了拆分压缩。

为了满足上传要求:我将文件拆分为4个part。

cke_1022368.png

并将文件后缀名都加了一个.txt后缀。

cke_1160781.png

大家下载到文件后,将文件后缀名.txt全部去掉后,选择任何一个压缩包文件,按下图操作解压就行了。

cke_1340074.png

正在解压

cke_1308062.png

解压完成后会生成一个cmake-3.26.4-linux-x86_64目录。我们只需对该目录重新打包为tar.gz格式即可。

cke_1347754.png

在此目录下右键,选择“在终端中打开”

cke_1456247.png

输入以下命令,将源文件重新打包回.tar.gz格式

tar -czvf cmake-3.26.4-linux-x86_64.tar.gz cmake-3.26.4-linux-x86_64

cke_1396569.png

待执行完毕后,可发现同目录下多了一个我们期望的目标文件——cmake-3.26.4-linux-x86_64.tar.gz

cke_1516026.png

将该文件拖拽到CodeLab的文件区,待上传完毕即可。

cke_1622511.png

输入以下命令进行解压

tar -xf cmake-3.26.4-linux-x86_64.tar.gz

cke_1693391.png


坑点4:步骤五中的目录不完整

我执行

cd ./samples/cplusplus/level1_single_api/4_op_dev/6_ascendc_custom_op/kernel_invocation/Add

cke_1553228.png

填坑指南:

我的感觉第五步就是一个验证环节,所以出现错误并不致命。

(我也同步在昇腾社区提起了工单,咨询这个问题。后续有进展我会在帖子后面追加解决方案的。敬请关注)

解决方案:

已得到官方回复,内容如下。

已联系文章版主确认,步骤五中的CANN Samples仓库已全面下线,后续不再做维护。版主会对文章进行修改调整。

本帖最后由 匿名用户2026/06/08 11:34:18 编辑

我要发帖子