ためのメイクファイル(NMAKE)を書くためにどのように私はmake
**NIX
内のシステムのような類似したnmake
を呼び出すことによってvisual-studio
ビルドツールcl.exe
とc
アプリケーションを構築したいです。私はmakefile
と書いています。リンクするファイルがinclude
、ファイルがobject
ではありません。私はライブラリをリンクする方法をあまり参考にすることができませんでした。は、Visual Studioのビルドツールのcl.exeの
CC=cl.exe
INC=-I../include
LIB=-L../lib
socket: socket.c
$(CC) socket.c $(INC) $(LIB) -lssl -lcrypto
出力
D:\client>nmake
Microsoft (R) Program Maintenance Utility Version 10.00.30319.01
Copyright (C) Microsoft Corporation. All rights reserved.
cl.exe socket.c -I../include -L../lib -lssl -lcrypto
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 16.00.40219.01 for 80x86
Copyright (C) Microsoft Corporation. All rights reserved.
cl : Command line warning D9002 : ignoring unknown option '-L../lib'
cl : Command line warning D9002 : ignoring unknown option '-lssl'
cl : Command line warning D9002 : ignoring unknown option '-lcrypto'
socket.c
Microsoft (R) Incremental Linker Version 10.00.40219.01
Copyright (C) Microsoft Corporation. All rights reserved.
/out:socket.exe
socket.obj
LINK : fatal error LNK1104: cannot open file 'Ws2_32.lib'
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\BIN\cl.exe"' : return code '0x2'
Stop.
環境を設定Visual Studioのコンソールウィンドウを、使用を読みたいかもしれませんインクルード場所などの変数通常のコンソールウィンドウを使用する場合は、Visual Studioを使用し、すべての設定を表示する「set」コマンドを実行します。空白を含むパスについては、引用符( ")で囲みます。 – rcgldr
@rcgldrはすでにVisual Studioコンソールウィンドウから「nmake」を呼び出しています。エラーの場合と同様に'不明なオプションを無視する '-L ../lib''これらはローカルのインクルードファイルを 'lib'フォルダに置いています。おそらく' -L'を理解しません。 –
@rcgldr二重引用符を入れても違いはありません同じ結果 –