,,错误-sem_union的存储大小未知问题的解决方法

,,错误:sem_union的存储大小未知问题的解决方法

本文主要介绍错误:sem_union存储大小未知问题的解决方法。有需要的朋友可以参考一下。

今天编译代码时,系统提示您一个错误:“sem_union”的存储大小未知。

原因:新版本2.6内核中已经注释了union sem_union,所以需要自己编写这个union。

解决方法:先在C文件中定义:

联盟色蒙

{

int val

struct semid _ ds * buf

无符号短*数组;

} sem _ union

然后它可以在编译时找到预定义的sem_union复合体。

Linux下编译时出现的错误及解决方法

(1)因为我是Linux新手,现在刚开始接触线程编程。我根据GUN/Linux编程指南中的一个例子进行输入和编译,结果出现以下错误:

未定义对“pthread_create”的引用

未定义对“pthread_join”的引用

问题的原因:

pthread库不是Linux系统的默认库,连接时需要使用静态库libpthread.a。所以在使用pthread_create()创建线程,调用pthread_atfork()函数构建fork处理程序时,需要链接这个库。

解决问题:

在编译中添加-lpthread参数。

gcc -o螺纹thread . c-LP螺纹

Thread.c为您提供了一些源文件。不要忘记添加头文件# includepthread.h。

(2)警告:隐式声明不兼容的内置函数strlen,隐式声明不兼容的内置函数exit

原因:因为函数strlen在string中,出口在stdlib中。头文件string.h和stdlib没有添加到文件中。

解决方案:在文件中添加头文件string.h和stdlib。

(3)出现错误:sem_union的存储大小未知。

原因:union sem_union联合体已经在新版本2.6内核中进行了注释,需要自己编写这个联合体。

解决方法:先在C文件中定义。

union semun { int valstruct semid _ ds * buf无符号短*数组;} sem _ union

然后它可以在编译时找到预定义的sem_union复合体。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • word文档无法编辑是怎么回事-
  • 华为手机怎么设置返回键(华为手机下面的三个按键设置方法)
  • lumia950怎么样(Lumia950体验分享)
  • otg连接是什么意思(OTG连接手机方法)
  • 笔记本触摸板怎么右键(笔记本电脑触控板手势操作设置)
  • 真我x7怎么样(realme X7 系列体验)
  • 苹果的A16处理器有多强(苹果的A16处理器的介绍)
  • 小米互传怎么用(小米手机的连接与共享教程)
  • 怎么设置电脑桌面图标自动对齐 设置电脑桌面自动整理图标的方法
  • 宽带错误651最简单解决方法(处理宽带错误651的措施)
  • 大学生手机有什么推荐(大学生换手机攻略)
  • 天玑1100和骁龙778g哪个好(骁龙778G、天玑900、天玑1100购选建议)
  • yum update 升级报错的解决办法
  • Windows10禁用屏保教程
  • 连接wifi显示无互联网连接怎么办(无线连上了却不能上网处理绝招)
  • 留言与评论(共有 条评论)
       
    验证码: