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

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

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

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

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

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

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

 

参考:

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

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

原文地址:https://www.cnblogs.com/wujing-hubei/p/5217230.html