0

ライブラリserverを使用して Windows 7 でプロジェクトを作成しました。ただし、私の友人はこのプロジェクトをフレームワークwinsockで使用したいと考えています。プロジェクトを に移動すると、ライブラリがないことに気づきました!! そこで、 Ubuntu で libを使用するための提案、または .NET でプロジェクトを実行する方法をお願いしたいと思います。ありがとう!UbuntuCode::BlocksUbuntuwinsockwinsockubuntu

4

1 に答える 1

1

ws2_32 ライブラリ (Windows の Winsock) とリンクする代わりに、g++ / gcc でビルドするときに常に行う glibc とリンクする必要があります。

ただし、一部のシステム コールを #ifdef に置き換える必要があります。たとえば、Linux では、closesocket() の代わりに close()、ioctlsocket() の代わりに ioctl() などがあります。

コードでこのブロックを使用してみてください。

#if defined(__unix__)
typedef int SOCKET;
#define closesocket(i) close(i)
#define ioctlsocket(i,l,ul) ioctl(i,l,ul)
#endif

また、ソケットには typedef SOCKET を使用する必要があります。

于 2012-07-16T19:39:02.847 に答える