【问题标题】:Sem_timedwait error on AIXAIX 上的 Sem_timedwait 错误
【发布时间】:2011-07-12 16:31:57
【问题描述】:

我尝试在 AIX 中使用 sem_timedwait。

我收到了这个错误:

*"ld: 0711-317 ERROR: Undefined symbol: .sem_timedwait"*

我可以猜到,我错过了一些库。

谁能帮忙?

【问题讨论】:

    标签: c aix


    【解决方案1】:

    你在链接 librt 吗?我会尝试将 -lrt 添加到您的链接行。还有pthread。

    【讨论】:

    • 我之前尝试添加 -lrt。当我添加它时,AIX 说“找不到 libcrt”。我在 AIX 上使用 GCC
    • 也许您缺少一些库?您指定了 -lrt(这就是您所说的,对吗?),但它抱怨 libcrt,这让我认为它以某种方式将 -lrt 识别为特殊。
    【解决方案2】:

    我不知道 AIX 是如何实现的,也不知道它是否实现,但 POSIX 将超时​​接口标记为可选:

    [TMO][选项开始]超时[选项 End] 描述的功能是 可选的。描述的功能 也是 ISO C 的扩展 标准。

    【讨论】:

    • 在 POSIX 2008 之前它是可选的(实际上,我相信所有的信号量接口都是可选的,但定时等待只是在一个更具体的选项组中)。现在是强制性的。
    • @R.所以这取决于声称符合哪个版本的 POSIX AIX。
    猜你喜欢
    • 2021-04-27
    • 2015-07-27
    • 1970-01-01
    • 2023-03-12
    • 2011-03-08
    • 1970-01-01
    • 2011-12-10
    • 1970-01-01
    • 2018-01-12
    相关资源
    最近更新 更多