2010-11-21 11 views
6

私は簡単なクロスプラットフォームチャットプログラムを作っています。私はうまく動作するGUIのwXWidgetsを使用していますが、私はソケットを作成し、サーバークライアントのセットアップを作成する方法が必要です。たとえば、Windows上でWinSockを使用し、Linuxのネイティブソケットとosxを使用するAPIはありますか?クロスプラットフォームのシンプルなTCP/IP API?

私はそれをオープンソースとし、誰もが70 + MBのライブラリをインストールするような気がしないので、ソリューションとしてブーストを探していません。

おかげ

+4

C++開発者は、私はブーストを使用して個人的なプロジェクトを作るとき、ブースト – Inverse

+1

をインストールする気にされなかった場合、それはちょっと悲しいです、オープンソースやライブラリーのプロジェクトであれば、それに依存するライブラリーはめったに見えないので、避けています。 – jmasterx

+0

あなたはboost :: asio –

答えて

5

QtNetworkモジュール

+4

を使うことができます。もしOPが依存性が大きすぎると考えたら、私はQtが軽いとは思わないでしょう... – Inverse

+0

はいQTはかなり大きいですが、静的に必要なライブラリだけをリンクすれば、実行可能ファイルの最終サイズ – hhafez

5

WinsockはPOSIXソケットAPIと非常に互換性があり、標準的な機能のほとんどは両方で利用可能です。ヘッダは、異なる名前が付けられていますが、簡単な#ifdefはそれを解決することができます:Apacheのランタイムについて

#ifdef _WIN32 
#include <winsock2.h> 
#else 
#include <sys/socket.h> 
#include <sys/types.h> 
#include <netinet/in.h> 
// other headers you may use 
#endif 
1

wxWidgetsの自体はTCPクライアント/サーバ・クラスがありますhere

0

を参照してください、私はこれは誰か、いつかに役立つことを期待して、この7歳の質問に答えています(:

私は、ソケット上のクロスプラットフォーム、軽量 APIを見つけることができなかった()がありPOCO、ブーストASIOとそこに他のアウトがあるが、彼らは、大きな包括的かつ複雑なライブラリです

だから私はここにPOSIXソケットとWinsockの上(完了していない)単純なラッパーをした:https://github.com/soroush/libcpnet

+0

このリンクは質問に答えるかもしれませんが、ここで答えの重要な部分を含めて参考にしてください。リンクされたページが変更された場合、リンクのみの回答は無効になります。 - [レビューの投稿](/レビュー/低品質の投稿/ 17295967) – TobiMcNamobi

関連する問題