apue 在 mac 环境编译错误
参考资料:https://unix.stackexchange.com/questions/105483/compiling-code-from-apue
笔者使用 mac 学习 apue, 在编译的时候出现错误,错误如下:
Undefined symbols for architecture x86_64:
"_TELL_CHILD", referenced from:
_main in 14_5-4244a7.o
"_TELL_PARENT", referenced from:
_main in 14_5-4244a7.o
"_TELL_WAIT", referenced from:
_main in 14_5-4244a7.o
"_WAIT_CHILD", referenced from:
_main in 14_5-4244a7.o
"_WAIT_PARENT", referenced from:
_main in 14_5-4244a7.o
"_err_sys", referenced from:
_lock_test in 14_5-4244a7.o
_main in 14_5-4244a7.o
_lockabyte in 14_5-4244a7.o
"_lock_reg", referenced from:
_lockabyte in 14_5-4244a7.o
ld: symbol(s) not found for architecture x86_64
在解决该问题时浪费很多时间,记下解决办法,希望可以帮助到你。
前提:已经正确安装 apue,安装方法自行搜索,路径如下:
DilldeMacBook-Pro:apue.3e dill$ pwd
/Users/dill/Downloads/apue.3e
DilldeMacBook-Pro:apue.3e dill$ cp include/* /usr/local/include/
DilldeMacBook-Pro:apue.3e dill$ cp lib/* /usr/local/lib/
避免上文的编译错误,采用如下命令编译:
gcc -o myls myls.c -I /usr/local/include -L /usr/local/lib/ -lapue
myls.c 为需要编译的 C 文件
-I 为 gcc 指定 include 地址
-L 为 gcc 指定 library 地址
-lapue 指定在 lib 文件夹中 library 文件名("/usr/local/lib/libapue.a")
-LXXX means to look for a file in the library directory with the name: libXXX.a or libXXX.so.
apue 在 mac 环境编译错误的更多相关文章
- lamp环境编译错误
GD 编译出错解决方法 编译最新的2.0.35版本,用默认的 ./configure编译 当make的时候,出现以下错误 configure.ac:64: error: possibly undefi ...
- mac gcc 编译错误 基础问题
mac gcc Undefined symbols for architecture x86_64 "std::__1: // Undefined symbols for architec ...
- 编译错误“The run destination My Mac 64-bit is not valid for Running the scheme '***',解决办法
1. iOS APP Project or Mac APP Project编译错误提示: “The run destination My Mac 64-bit is not valid for Ru ...
- 编译错误“The run destination My Mac is not valid for Running the scheme '***',解决办法
[转载] http://blog.csdn.net/duanyipeng/article/details/8007684 编译错误"The run destination My Ma ...
- Android编译环境——ubuntu12.04上android2.3.4编译错误以及解决
Android编译环境——ubuntu12.04上android2.3.4编译错误以及解决 分类: android应用开发2013-08-21 09:20 4222人阅读 评论(3) 收藏 举报 li ...
- mac 环境下Android 反编译源码
mac环境下Android 反编译 一.需要的工具 apktool:反编译APK文件,得到classes.dex文件,同时也能获取到资源文件以及布局文件. dex2jar:将反编译后的classes. ...
- Xamarin Studio在Mac环境下的配置和Xamarin.iOS常用控件的示例
看过好多帖子都是Win环境装XS,Mac只是个模拟器,讲解在Mac环境下如何配置Xamarin Studio很少,也是一点点找资料,东拼西凑才把Xamarin Studio装在Mac上跑起来,如下: ...
- (五) 一起学 Unix 环境高级编程 (APUE) 之 进程环境
. . . . . 目录 (一) 一起学 Unix 环境高级编程 (APUE) 之 标准IO (二) 一起学 Unix 环境高级编程 (APUE) 之 文件 IO (三) 一起学 Unix 环境高级编 ...
- 尝试在Mac上编译DNX
自从XRE改名为DNX至今,从来没有在Mac OS X上成功编译过DNX.一直很纳闷,难道DNX的开发人员不用Mac?今天突然明白了,DNX的开发人员真的不用Mac.而且DNX用的2个持续集成服务Ap ...
随机推荐
- SpringBootMVC01——A simple SpringBootMVC Sample
不带数据库的SpringBootMVC案例 1.创建一个SpringBoot项目,添加thymeleaf,webstarter 2.目录层级 3.启动器代码 package com.littlepag ...
- Mvc Excel导入加事务加导出
导出 public FileResult Input() { DataTable dt = new DataTable("dd"); using (SqlConnection co ...
- Thiago2(TPO AI.ROSTO):集成式AI换脸软件(Autodesk Flame)
如标题一样,Thiago2 是一款集成式AI换脸软件(TPO AI.ROSTO),需要与Autodesk Flame结合使用,从demo来看完成度还是很高的,算是一种完全GUI版的DeepFaceLa ...
- Python服务器开发一:python基础
Python服务器开发一:python基础 Python(蟒蛇)是一种动态解释型的编程语言.Python可以在Windows.UNIX.MAC等多种操作系统上使用,也可以在Java..NET开发平 ...
- sourceTree 添加 ssh key 方法
1.使用 git 客户的生成公私钥:id_rsa.id_rsa.pub 1.1设置Git的user name和email: $ git config --global user.name " ...
- 第二章 psql客户端工具
第二章 psql客户端工具 pgAdmin是一款功能丰富.开源免费的PostgreSQL图形化工具.psql是PostgreSQL自带的命令行工具,功能全面,是PostgreSQL数据库工程师必须熟练 ...
- vue 路由拦截器和请求拦截器
路由拦截器 已路由为导向 router.beforeEach((to,from,next)=>{ if(to.path=='/login' || localStorage.getItem('to ...
- 40 final、finally、finalize的区别
1.final 用于声明属性.方法.类.分别表示属性不可被改变,方法不可被覆盖,类不可被继承. (1)一个类不能既被声明为abstract的,又被声明为final的. (2)被声明为final的变量必 ...
- 容器"共享"宿主机的hosts文件(终极方案)
0.背景 有时候制作docker镜像生成容器时需要宿主机的hosts文件共享到容器中.首先想的是通过挂载的方式共享hosts文件,但是实践时发现根本行不通,hosts文件在/etc/目录下,如进行挂载 ...
- mysql分组排序加序号
参照https://www.cnblogs.com/CharlieLau/p/6737243.html 一.需求 新加一个Sort 字段,初始值为1,按照parentID分组添加sort值. 根据原数 ...