尝试用一下华为云的免费云服务器(因为代金券没到所以只能用免费的……后来代金券就到了

尝试用一下华为云的免费云服务器(因为代金券没到所以只能用免费的……后来代金券就到了

  • 第一步:去华为云注册账号,实名认证,下拉首页找到云服务器栏目,记得设置好相关配置;
  • 第二步,写着文章的时候代金券突然到了我也没太多话可说,果断抛弃免费的用咱们的代金券买一台正式的,并且按课件配置好,但是有几个地方与课件上的不太相同:

    • 网络配置中最后有一个释放的选项(我没有勾选;

    • 同是网络配置中的安全组中的名字和接口时可以改的,这样的话不知道是不是选了同一个安全组,因为没有sg开头的安全组可以选,自己选的反正不是默认的安全组,是webserver;

    • 第三个确认配置中它用的是vpc-default的截图,而我自己用的是前面要求创建的虚拟私有云vpc-test

  • 第三步,从老师给的包中装putty;

  • 第四步,从打菜单栏打开刚刚安装的东西打开putty;
    image

    • 输入密码后遇到的小问题(这里我选了是:
    • image-20220603154740234
    • 输入root,输入密码后成功进来了好耶
      • 输入gcc -v或者g++ -v查看环境
        image
  • 第五步,在命令行输入mkdir test创建文件夹,并查看

    [root@openeuler ~]# mkdir test
    [root@openeuler ~]# ls
    test
    [root@openeuler ~]#
    
  • 用winscp拷C程序进入服务器,试着跑一下
    image

    [root@openeuler test]# ll
    total 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的一个别名。

      “ls -l”的意义

        以长格式显示目录下的内容列表。输出的信息从左到右依次包括文件名,文件类型、权限模式、硬连接数、所有者、组、文件大小和文件的最后修改时间等。

  • 第六步,输入这个奇怪的命令(会在文件目录中生成一个绿色的test)

    [root@openeuler test]# gcc -mabi=lp64 -march=armv8-a -o test main.c sqrtSum.c -g    -lm
    [root@openeuler test]# ls
    main.c  sqrtSum.c  sqrtSum.h  test
    
  • 第七步,代码输入验证(./test 的意思是运行test文件)

    [root@openeuler test]# ./test 9 16
    sqrt   9.00 + sqrt  16.00 =   7.00
    [root@openeuler test]#
    
  • 第八步,直接删除目录

    image-20220602174635766 image-20220602174830565
  • 到这里基本实验所需的所有的操作都应该基本会了,所以我们建议直接去敲代码吧!

另外的一些在C语言实验中遇到的需要注意的地方:

  • img

    一开始时运行用普通方法编译过不了报错不存在sin,但是这个print_str.c在windows系统下时可以正常编译的,去网上查找后发现了问题,linux系统需要在链接时加上-lm才可以,就是链接上数学库libm就行了,下图运行成功了;

    img

  • image-20220603155341751
  • 最后解释一下第六步中这句话的意思gcc -mabi=lp64 -march=armv8-a -o test main.c sqrtSum.c -g -lm

    这句话的意思应该是交叉编译,然后前面两个参数lp64应该是指采用64位Linux的数据模型去编译,而那个armv8-a是采用这种架构去编译,-o是指向test文件输出,-g是指生成调试信息,-lm是指链接libm库(根据自己理解写的,求大佬指正)

posted @ 2022-06-03 16:11  Link_kingdom  阅读(164)  评论(0编辑  收藏  举报