【牛客网C++服务器项目学习】Day1-配置环境、GCC、静态链库

项目学习地址:【牛客网C++服务器项目学习】

day-1

1.配置环境

  • Linux虚拟机(已完成,做操作系统作业就完成了)

    • 安装VMware Tools,可以在主机和虚拟机之间拖拽文件
  • XSHELL(用于远程登录Linux系统)、XFTP(用于和远程Linux机传输文件)

    • VMware上的Ubuntu拒绝了我的连接请求,待解决(已解决)
      • Ubuntu系统,用户名一定要是"ubuntu";CentOS的用户名才是"root"
      • 其实大家不差钱的话,花个几十块钱买一年的云服务器会方便很多(腾讯的云服务器+学生优惠最低干到了27元一年)
  • vscode(已完成)

    • 同上
    • 可以在vscode和Ubuntu配置rsa公钥,免密码登录
  • 远程控制连不上,也问题不大,直接在Ubuntu里写代码不就解决问题了吗?
    既然下载了Ubuntu,还要用远程控制,岂不是有一点脱裤子放屁的感觉 使用XSHELL和vscode的remote远程开发,太香了。

2.GCC

  • 安装GCC和G++

    • 版本大于4.8.5(2021年都是7.5了)
    • gcc全名:GNU C… C…编译器套件

img

img

img

  • gcc的命令

    • gcc编译格式: gcc xx.c -o 生成的可执行文件名称
      -E:预编译

    • -S:生成汇编代码

  • 一般来说,gcc用来编译C程序,g++编译C++程序

3.静态库的制作和使用

静态库,在程序的链接阶段被复制到了程序中。

写库的目的和好处:

  • 代码保密;C++的反编译解密程度比较低
  • 方便部署和分发

静态库的制作方法:

  1. 命名规则:libxxx.a

  2. gcc -c(编译但不链接)获得.o文件,然后将.o文件使用程序ar文件打包

    1. ar rcs libxxx.a xx.o xx.o、

静态库的使用方法

在要编译的文件中,使用-L ,-I指令搜索对应文件夹下的库和文件,正确编译文件

  • 视频中的那些代码没有给出来,如果想在Linux上练习一下静态库的生成和使用,可以点这篇文章

文章跳转地址

(一个疑问,静态库的使用,和我们在Windows上使用IDE写程序,在程序上直接包含头文件,有什么区别吗?

或者说,IDE帮我们完成了静态的打包和链接这个过程?)

  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值