第二步,写着文章的时候代金券突然到了我也没太多话可说,果断抛弃免费的用咱们的代金券买一台正式的,并且按课件配置好,但是有几个地方与课件上的不太相同:
网络配置中最后有一个释放的选项(我没有勾选;
同是网络配置中的安全组中的名字和接口时可以改的,这样的话不知道是不是选了同一个安全组,因为没有sg开头的安全组可以选,自己选的反正不是默认的安全组,是webserver;
第三个确认配置中它用的是vpc-default的截图,而我自己用的是前面要求创建的虚拟私有云vpc-test
第三步,从老师给的包中装putty;
第四步,从打菜单栏打开刚刚安装的东西打开putty;
第五步,在命令行输入mkdir test创建文件夹,并查看
[root@openeuler ~]# mkdir test[root@openeuler ~]# lstest[root@openeuler ~]#
用winscp拷C程序进入服务器,试着跑一下
[root@openeuler test]# lltotal 12K-rw------- 1 root root 392 Apr 26 2021 main.c-rw------- 1 root root 112 Apr 26 2021 sqrtSum.c-rw------- 1 root root 39 Apr 26 2021 sqrtSum.h
ll并不是linux下一个基本的命令,它实际上是ls -l的一个别名。
ll
ls -l
“ls -l”的意义
以长格式显示目录下的内容列表。输出的信息从左到右依次包括文件名,文件类型、权限模式、硬连接数、所有者、组、文件大小和文件的最后修改时间等。
第六步,输入这个奇怪的命令(会在文件目录中生成一个绿色的test)
[root@openeuler test]# gcc -mabi=lp64 -march=armv8-a -o test main.c sqrtSum.c -g -lm[root@openeuler test]# lsmain.c sqrtSum.c sqrtSum.h test
第七步,代码输入验证(./test 的意思是运行test文件)
[root@openeuler test]# ./test 9 16sqrt 9.00 + sqrt 16.00 = 7.00[root@openeuler test]#
第八步,直接删除目录
到这里基本实验所需的所有的操作都应该基本会了,所以我们建议直接去敲代码吧!
一开始时运行用普通方法编译过不了报错不存在sin,但是这个print_str.c在windows系统下时可以正常编译的,去网上查找后发现了问题,linux系统需要在链接时加上-lm才可以,就是链接上数学库libm就行了,下图运行成功了;
最后解释一下第六步中这句话的意思gcc -mabi=lp64 -march=armv8-a -o test main.c sqrtSum.c -g -lm
gcc -mabi=lp64 -march=armv8-a -o test main.c sqrtSum.c -g -lm
这句话的意思应该是交叉编译,然后前面两个参数lp64应该是指采用64位Linux的数据模型去编译,而那个armv8-a是采用这种架构去编译,-o是指向test文件输出,-g是指生成调试信息,-lm是指链接libm库(根据自己理解写的,求大佬指正)