开发者
资源
#鲲鹏BoostKit训练营#VS Code下使用Kunpeng DevKit工具编译第一个Hello Kunpeng程序
#鲲鹏BoostKit训练营#VS Code下使用Kunpeng DevKit工具编译第一个Hello Kunpeng程序
发表于2025/11/05
1550

#鲲鹏BoostKit训练营#VS Code下使用Kunpeng DevKit工具编译第一个Hello Kunpeng程序

本文包括①背景介绍 ②环境准备 ③实操步骤 ④关键代码解析 ⑤效果验证(含截图)

下面依次介绍

①背景介绍

BoostKit是丰富的加速库集合,要具体在实践中使用,其中一部分表现在编程之初,调用相关加速库的成熟代码,本文先在VS Code里面通过DevKit工具,部署在服务器相关的依赖软件和编译软件,实现第一个空工程的编译和运行0,本文重点不在环境的搭建,具体的环境搭建可以参考:安装鲲鹏DevKit插件-安装-DevKit用户指南(VS Code插件)-IDE插件-用户指南-鲲鹏开发套件开发文档-鲲鹏社区 ,里面有非常详细的指导,本文作为一个在开发和编译全流程跑通的案例进行分享。

 ②环境准备

我的PC情况

安装好Visual Studio Code,我用的是1.103.2

还有Kunpeng DevKit的拓展应用

当然还有服务器,我是申请的华为的云服务器

 ③实操步骤

在Kunpeng DevKit的插件页面,左下角,选择开发,点击左上角的新建鲲鹏应用工程图标,一页纸有小+号的图示~~

左图蓝色图标~~

打开鲲鹏应用工程创建对话框,选择空工程,下一步~~

这个起好工程ID,存储位置,下一步~~

 SDK可以都不选择,下一步~~

提示创建成功~~

点击打开工程,可以看到生成的文件夹和文件~~

可以看到在src文件下,有一个hello_kunpeng.c的文件,其内容如下:

还有一个CMakeLists.txt文件,内容如下~~

点击编译字样

点击上面“编译”字样

 *  正在文件夹 Empty_Project3 中执行任务: ssh -p 22 root@172.38.3.65 bash -lc "'source /etc/profile; cd /root/workspace/Empty_Project3;rm -r build; mkdir -p build && cd build && cmake .. && make'" 

 

root@172.38.3.65's password:

rm: cannot remove 'build': No such file or directory

CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required):   

  Compatibility with CMake < 3.5 will be removed from a future version of

  CMake.

 

  Update the VERSION argument <min> value or use a ...<max> suffix to tell

  CMake that the project does not need compatibility with older versions.

 

 

-- The C compiler identification is GNU 12.3.1

-- Detecting C compiler ABI info

-- Detecting C compiler ABI info - done

-- Check for working C compiler: /usr/bin/cc - skipped

-- Detecting C compile features

-- Detecting C compile features - done

-- Configuring done (0.2s)

-- Generating done (0.0s)

-- Build files have been written to: /root/workspace/Empty_Project3/build

[ 50%] Building C object CMakeFiles/hello_kunpeng.dir/src/hello_kunpeng.c.o

make[2]: mpicc: No such file or directory

make[2]: *** [CMakeFiles/hello_kunpeng.dir/build.make:76: CMakeFiles/hello_kunpeng.dir/src/hello_kunpeng.c.o] Error 127

make[1]: *** [CMakeFiles/Makefile2:83: CMakeFiles/hello_kunpeng.dir/all] Error 2

make: *** [Makefile:91: all] Error 2

 

 *  终端进程“C:\Windows\System32\cmd.exe /d /c ssh -p 22 root@172.38.3.65 bash -lc "'source /etc/profile; cd /root/workspace/Empty_Project3;rm -r build; mkdir -p build && cd build && cmake .. && make'"”已终止,退出代码: 2。 

 *  终端将被任务重用,按任意键关闭。 

上述提示,可能是因为没有mpicc引起的

及没有安装openmpi和openmpi-devel(或mpich和mpich-devel)

dnf install openmpi openmpi-devel --nogpgcheck

通过上面的命令,安装了两个包

在进行编译,随即正常输出结果

 

*  正在文件夹 Empty_Project3 中执行任务: ssh -p 22 root@172.38.3.65 bash -lc "'source /etc/profile; cd /root/workspace/Empty_Project3;rm -r build; mkdir -p build && cd build && cmake .. && make'" 

 

root@172.38.3.65's password:

CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required):   

  Compatibility with CMake < 3.5 will be removed from a future version of

  CMake.

 

  Update the VERSION argument <min> value or use a ...<max> suffix to tell

  CMake that the project does not need compatibility with older versions.

 

 

-- The C compiler identification is GNU 12.3.1

-- Detecting C compiler ABI info

-- Detecting C compiler ABI info - done

-- Check for working C compiler: /usr/bin/cc - skipped

-- Detecting C compile features

-- Detecting C compile features - done

-- Configuring done (0.2s)

-- Generating done (0.0s)

-- Build files have been written to: /root/workspace/Empty_Project3/build

[ 50%] Building C object CMakeFiles/hello_kunpeng.dir/src/hello_kunpeng.c.o

[100%] Linking C executable hello_kunpeng

[100%] Built target hello_kunpeng

 *  终端将被任务重用,按任意键关闭。 

可以看到,在build文件夹下,已经生成了hello_kunpeng的可执行文件,并且执行结果也是打印输出“Hello Kunpeng”字样

编译完成后,点击运行~~

*  正在文件夹 Empty_Project3 中执行任务: ssh -p 22 root@172.38.3.65 bash -l "'& cd ~/workspace/Empty_Project3; /root/workspace/Empty_Project3/build/hello_kunpeng '" 

 

root@172.38.3.65's password:

Hello kunpeng.

 *  终端将被任务重用,按任意键关闭。 

可以看到,也是可以对结果进行显示的~~

④关键代码解析

一是针对mpicc的提示

make[2]: mpicc: No such file or directory

进行相关程序的安装

dnf install openmpi openmpi-devel --nogpgcheck

二是对于编译的命令的调用

 

⑤效果验证(含截图)

可以看到上述的操作,没有直接在服务器上进行创建和编译,都是通过VS Code的Kunpeng DevKit工具,进行远程的操作,服务器相应的目录下都生成了相关的源文件和编译结果的文件~~

接下来,可以试用一些关于加速库的样例,也可以开发程序,实际应用一些BoostKit加速库了~~

收藏举报
Level 1
0
帖子
0
粉丝
0
获赞