关于Linux下进程间使用共享内存和信号量通信的时的编译问题

今天在编译一个使用信号量实现进程同步时,出现了库函数不存在的问题。如下图

关于Linux下进程间使用共享内存和信号量通信的时的编译问题

编译结果实际上是说,没include相应的头文件,或是头文件不存在(即系统不支持该库函数)

但我man shm_open是可以找到帮助文件的(说明系统支持),原因何在???

关于Linux下进程间使用共享内存和信号量通信的时的编译问题

注意到link with -lrt  就是说需要使用-lrt 来链接库函数

使用  gcc -lrt sample10_server.c 命令仍然出错(有人这样编译通过了)

关于Linux下进程间使用共享内存和信号量通信的时的编译问题

使用  gcc  sample10_server.c  -lrt 然后编译通过了,原因如下

关于Linux下进程间使用共享内存和信号量通信的时的编译问题

参考:

http://*.com/questions/9923495/undefined-reference-shm-open-already-add-lrt-flag-here

http://blog.csdn.net/sky_cool/article/details/469970

上一篇:xavante运行cgilua流程


下一篇:Golang切片的三种简单使用方式及区别