2011-03-10 57 views
0

我嘗試在AIX中使用sem_timedwait。AIX上的Sem_timedwait錯誤

我得到這個錯誤:

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

我可以猜測的是,I M缺少一些庫。

任何人都可以幫忙嗎?

+0

什麼版本的AIX? – CoreyStup 2011-03-11 13:35:14

回答

0

我不知道怎麼AIX或者如果實現了,但POSIX標誌着超時接口爲可選:

[TMO][Option Start] Timeouts [Option End] The functionality described is optional. The functionality described is also an extension to the ISO C standard.

+0

在POSIX 2008之前它是可選的(實際上,我相信所有的信號量接口都是可選的,但是定時等待只是在更具體的選項組中)。現在是強制性的。 – 2011-03-10 14:16:11

+0

@R。所以它取決於哪個版本的POSIX AIX聲稱符合要求。 – 2011-03-10 15:15:21

0

你所鏈接librt?我會嘗試添加-lrt到你的鏈接線。另外pthread。

+0

我曾嘗試添加-lrt。當我添加它時,AIX說「找不到libcrt」。我在AIX上使用GCC – 2011-03-11 06:00:41

+0

也許你錯過了一些庫?你指定了-lrt(這就是你說的,對吧?),但它抱怨lib * c * rt,這讓我認爲它認識到--lrt是特殊的。 – 2011-03-12 17:27:23