1. 前言
最后花了一些时间学习了下《unix环境高级编程》。这本书其实买了半年了一直都没有时间打开。平时上班的时候都纠结于一些边角料的工作和细枝末节的技术问题,感觉自己的提升太少了,所以觉得还是要找时间好好补一补基础知识。
虽然买了书,但是实际上大部分时间都是在看电子版的pdf。纸本书太厚没办法随身带,而且由于和室友合住,晚上熄灯了之后根本没法看书。所以还是电子版的比较方便。
整本书其实差不多就是照着把代码写了一遍,有些章节太无聊就跳过了。这里只是简要记录一下。
2. 开始
2.1 准备工作
IDE: clion 2020.3 mac
编译工具: cmake
源代码下载:http://www.apuebook.com/ 选择对应版本下载源代码
2.2 创建项目
- clion创建c项目
- 将源代码中的include和lib复制到项目根目录下
- 因为每个章节想使用一个目录来调试,所以每个目录下都建一个独立的MakeLists.txt文件,内容如下:
cmake_minimum_required(VERSION 3.12)
#获取项目目录名称
get_filename_component(ProjectId ${CMAKE_CURRENT_SOURCE_DIR} NAME)
message(${ProjectId})
project(${ProjectId} C)
set(CMAKE_C_STANDARD 99)
#添加所有依赖头文件
include_directories(../include)
#把所有c文件添加到files
file(GLOB files "${CMAKE_CURRENT_SOURCE_DIR}/*.c")
foreach(file ${files})
get_filename_component(name ${file} NAME)
string(REPLACE ".c" "" name ${name})
#添加到可执行文件中,把lib中用到的一些c文件添加到后面
add_executable(${name} ${file} ../lib/error.c)
endforeach()
- 右键CMakeLists.txt选择Load CMake Project;每次新加.c文件之后,在CMakeList上点击reload一下,就可以对每个c程序单独调试。
- git地址 https://github.com/manaski/APUE