最近在温习APUE(《unix环境高级编程》),以前都是在linux下搞,现在打算在自己机器弄下,于是google了下,把编译的事情搞定了,修改了一些教程的一些错误,比如下载链接之类的。
- 下载源文件
| wget http://www.apuebook.com/src.3e.tar.gz |
- 解压
- 编译
- 复制头文件
| cp ./include/apue.h /usr/local/include/ |
| cp ./lib/error.c /usr/local/include/ |
| cp ./lib/libapue.a /usr/local/lib |
- 修改
apue.h
| vim /usr/local/include/apue.h |
| |
| |
- 测试一下
| |
| #include "apue.h" |
| #include <dirent.h> |
| |
| int main(int argc, char *argv[]) { |
| DIR *dp; |
| struct dirent *dirp; |
| |
| if (argc != 2) { |
| err_quit("usage:ls directory_name"); |
| } |
| |
| if ((dp = opendir(argv[1])) == NULL) { |
| err_sys("can't open %s", argv[1]); |
| } |
| while ((dirp = readdir(dp)) != NULL) { |
| printf("%s\n", dirp->d_name); |
| } |
| closedir(dp); |
| exit(0); |
| } |
| |
编译时制定链接库文件-lapue
| gcc test.c -lapue -o test |
| ./test |
| usage:ls directory_name |
另见 Homebrew进阶使用教程(三)-apue.h在mac下安装并使用连接
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步