#include int

main (void)

{

int i;

i = shm_open ("/tmp/shared", O_CREAT | O_EXCL, S_IRUSR | S_IWUSR);

printf ("shm_open rc = %d/n", i);

shm_unlink ("/tmp/shared");

return (0);

}

假设它所在的文件为"test.c"

我这么编译:

gcc -o test test.c

结果为:

/tmp/ccaGhdRt.o(.text+0x23): In function `main':

: undefined reference to `shm_open'

/tmp/ccaGhdRt.o(.text+0x49): In function `main':

: undefined reference to `shm_unlink'

collect2: ld returned 1 exit status

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

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

请注意一下man shm_open的帮助文件的最后几行:

NOTES

These functions are provided in glibc 2.2 and  later.

Programs  using

these  functions  must  specify  the  -lrt  flag to cc in order to link

against the required ("realtime") library.

POSIX leaves the behavior of the combination of  O_RDONLY  and  O_TRUNC

unspecified.   On  Linux,  this  will successfully truncate an existing

shared memory object - this may not be so on other Unices.

The POSIX shared memory object implementation on Linux 2.4 makes use of

a dedicated file system, which is normally mounted under /dev/shm.

如果你注意到的话,这样编译就能通过了:

gcc -lrt -o test test.c

其实就是要连接库的原因。

linux shm open,undefined reference to \'shm_open\'解决办法-j_cle-ChinaUnix博客相关推荐

  1. BPG编译出错 undefined reference to numa_available解决办法

    BPG编译出错 undefined reference to "numa_available"解决办法 从https://bellard.org/bpg/ 上下载了BPG 0.9. ...

  2. C++调用C的函数,出现 undefined reference to 的解决办法

    假设我写了一个aaaa.h , aaaa.c  来实现一组函数功能 #ifndef AAAA_H #define AAAA_H#include<stdio.h>void fun();#en ...

  3. Windows网络编程 undefined reference to `__imp_WSAStartup‘ 解决办法

    阅读前请看一下:我是一个热衷于记录的人,每次写博客会反复研读,尽量不断提升博客质量.文章设置为仅粉丝可见,是因为写博客确实花了不少精力.希望互相进步谢谢!! 文章目录 阅读前请看一下:我是一个热衷于记 ...

  4. Android之ndk编译出现“undefined reference to method“解决办法

    1.问题 我自己写了C的头文件和实现的C文件,然后编译成csapp.so库,然后在jni里面写了Android.mk文件和Application.mk文件,配置确保已经没问题,然后csapp.so的位 ...

  5. QT构建编译出现错误error: undefined reference to 的解决办法

    这里要解决问题的是QT构建中的 error: undefined reference to 而不是 undefined reference to vtable for "xxx::xxx&q ...

  6. undefined reference to `__errno‘ 解决办法

    链接时加入 -specs=rdimon.specs -specs=nosys.specs "-lm -lc -lgcc"这几个有没有都无所谓,顺序更加无所谓! 参考 https:/ ...

  7. (笔记)Linux Root下的.gvfs出现异常解决办法

    (笔记)Linux Root下的.gvfs出现异常解决办法 参考文章: (1)(笔记)Linux Root下的.gvfs出现异常解决办法 (2)https://www.cnblogs.com/tdyi ...

  8. on a null object reference 问题的解决办法

    on a null object reference 问题的解决办法 参考文章: (1)on a null object reference 问题的解决办法 (2)https://www.cnblog ...

  9. ubuntu amd 64bit 安装 QQ for linux教程(附 不能使用中文的解决办法)

    ubuntu amd 64bit 安装 QQ for linux教程(附 不能使用中文的解决办法) Ubuntu 64bit 安装32bit软件 64bit系统构架的先进不由多讲,只是应用程序相对少了 ...

最新文章

  1. Vue搜索框保存临时搜索的记录
  2. NC:遗传发育所Speakman组-棕色脂肪是无菌小鼠改善血糖的关键
  3. 手把手教你看懂并理解Arduino PID控制库——调参改变
  4. vcpkg —— VC++ 打包工具
  5. POPUP_TO_CONFIRM_WITH_VALUE
  6. 梦幻西游手游服务器维护公告,梦幻西游手游3月7日全区全服维护更新公告
  7. 案例 网络电视精灵 c# 1614265410
  8. 仿QQ锁屏界面消息提示
  9. Linux怎么查看编译ARM平台程序的编译器arm-linux-gcc
  10. php嵌入wowza,Wowza服务器上的PHP脚本无法通过HTTP身份验证?
  11. 红米k30 允许调用gpu调试层_高效渲染!RTX 3090卡皇打造NVIDIA STUDIO强力主机实战体验|nvidia|显卡|gpu|cpu|内存...
  12. Java图形界面框架构建
  13. 由内而外全面造就自己
  14. 传奇服务器端回满血文件,单机架设传奇服务器第八课:血过65535
  15. dither技术的原理及应用
  16. 搜狐Q3由盈转亏:预计全年收入下滑12%,张朝阳归因于不确定性
  17. 2、使用FTP客户端连接FTP服务器
  18. 大数据-机器学习导论-1
  19. 怎么用c语言画余弦函数,用c语言绘制余弦函数图像
  20. 淘宝商家批量上架宝贝的方式有哪些

热门文章

  1. 【Processing】行走的行星 动态海报 processing艺术与科技
  2. 树莓派自定义分辨率适配带鱼屏(2560*1080)
  3. 2022年高教杯国赛数学建模思路分享
  4. MarkdownPad
  5. 搜索词分析工具-网站关键词挖掘
  6. 校验码——海明码及码距,码距
  7. dts,dtb,dtc
  8. 是非人生 — 一个菜鸟程序员的5年职场路 第14节
  9. 树莓派3B+ 安装 `ReSpeaker 4-Mics Pi HAT` 声卡,录音与播放
  10. 一个好的直播间如何搭建,看完此文章你就明白了丨国仁网络