2009-06-07 118 views
1

我在編寫一個使用fattach的程序,但編譯器說fattach沒有實現。我已經包含頭文件stropts.h。我該怎麼辦?如何用fattach編譯c代碼()

+1

來自編譯器的非常有趣的錯誤:-o 我期望從鏈接器得到類似「未定義的fattach引用」。 – qrdl 2009-06-07 16:45:13

回答

0

據我所知,您的兩個主要選項是重寫您的代碼,以便不使用fattach()或降級到內核版本2.4.5或更低版本。

其他選項包括等待某人編寫fattach()支持當前內核並自行提交補丁。

1

fattach()函數在Single Unix Specification中,但它被標記爲過時,這意味着它將從未來版本的標準中刪除。它是XSI STREAMS可選功能的一部分。

因此,您應該計劃重寫您的代碼,以便它不使用fattach();隨着時間的推移,越來越少的系統將支持該功能。 (或者,您需要努力遊說以恢復它。)

在此期間,您必須找出哪個庫包含fattach()函數並與其鏈接。如果沒有庫包含它,那麼你必須追蹤是否有一個可選的可安裝的庫包含它並安裝它。

如果沒有這些選項,你可能必須在這臺機器上完全沒有它。把它看作是未來事物運作方式的一個標誌。