4

39dll ライブラリを Linux に移植する予定です。このライブラリはすでに Mac と IOS に移植されており、sys/socket.h を書き直す必要があるかどうか疑問に思っていました。問題のライブラリはHEREおよびHEREで見つけることができます

誰か知っていますか?私はいくつかのグーグル検索を行い、「提案された」記事のいくつかを無駄に見ました. 一部の記事では、それが「可能性がある」と示唆されていましたが、より明確な答えが必要です。

4

1 に答える 1

3

Mac OS Xのコンテンツが<sys/socket.h>Linuxのバージョンと同じであるかどうかを尋ねていますか?いいえ、MacOSXのヘッダーはBSDに基づいています。

>> man socket

SOCKET(2)                   BSD System Calls Manual                  SOCKET(2)

NAME
     socket -- create an endpoint for communication

SYNOPSIS
     #include <sys/socket.h>

     int
     socket(int domain, int type, int protocol);

DESCRIPTION
     Socket() creates an endpoint for communication and returns a descriptor.

     The domain parameter specifies a communications domain within which com-

2つのプラットフォーム間にソースコードの互換性があるかどうかを尋ねる場合は、ソースコードがポータブルインターフェイスに固執している限り、そうです。

ソケットのものを書き直す必要があるかもしれないという他の理由を考えているなら、それはあなたの現在のコードがOSX用に構築されたときにあなたの要件を満たしているかどうかに依存すると思います。

于 2012-06-25T21:04:02.760 に答える