こんにちは、C
のウィンドウ用のアプリケーションをビルドしたいと思います。私はlinuxでプログラミングし、gcc
とmingw-w64
でコードをコンパイルします。Linuxの `__imp_WSAStartup 'への未定義の参照
出力と入力が簡単なプログラムを試してみましたが、それはウィンドウ上で正常に動作します。
しかし、ソケットを使用してサーバーに接続したいと考えています。
は、だから私はhttp://beej.us/guide/bgnet/output/html/multipage/intro.html#audience
をグーグルで検索し、このチュートリアルを見つけたそれは、だから私がやったウィンドウで、我々はwinsock
を含め、いくつかのコマンド を実行する必要があると述べている:
#include <winsock.h>
int main(void)
{
WSADATA wsaData;
printf("Hello! This is a test prgoram.\n");
if (WSAStartup(MAKEWORD(1,1), &wsaData) != 0) {
fprintf(stderr, "WSAStartup failed.\n");
}
}
しかし、私はコンパイルしようそれは私が取得:
undefined reference to `__imp_WSAStartup' collect2: error: ld returned 1 exit status
コマンドラインでは、私がいた実行することをすべて:
x86_64-w64-mingw32-gcc try.c -o a.exe
私は何をすべきですか? linuxでコンパイルした場合、winsock
ライブラリは必要ありませんか? これを修正するには?
おかげ
ありがとう、それは動作しますが、別のライブラリが必要な場合は、2つを含める方法はありますか? –
他の '-l'フラグに他のライブラリの名前を追加するだけです。これは、linuxのコンパイルと変わりありません。 –