問題タブ [nmake]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
visual-studio - nmake、visualstudio、および.makファイル
MS Visual Studio .net 2003 C++コンパイラを使用してコンパイルされたC++プロジェクトと、それをコンパイルするために使用された.makファイルが提供されました。nmake project.makを使用してコマンドラインからビルドできますが、コンパイラがafxres.hが見つからないと文句を言います。少し検索してみたところ、afxres.hはインクルードファイルのVisualStudioディレクトリにあります。このヘッダーファイルを探す場所をnmakeに指定する場所を指定する必要がありますか?
build-automation - nmakeにはビルドタスクがありますか?
Antを使用すると、ビルド自体を続行する前にアーカイブを解凍できます...これはnmakeを使用して可能ですか?外部アプリケーションを呼び出すことはできますか?それともバッチスクリプトですか?
c - nmake makefile を Visual Studio 2005 プロジェクトに変換する
ここには、nmake でビルドされた古い C コードがいくつかあります。
Makefile を Visual Studio 2005 に取り込み、プロジェクトを作成する自動化された方法はありますか? MSDN での検索では、 VS6でこれが可能であることが示されていますが、VS7/8 ではこの機能が削除されたようです。
必要に応じて、project.mak ファイルを参照として使用してプロジェクトをゼロから構築できますが、より複雑なプロジェクトの場合、これは実行できない場合があります。
png - makefileでワイルドカードを使用してnmakeを使用する
balsamiqモックアップファイルをpngファイルに自動的にエクスポートするようにnmakemakefileを設定しようとしていますが、すべてのファイルを明示的にリストしないと、そのための一般的なルールを作成する方法の先頭と末尾を作成できません。エクスポートしたい。
このページでは、ファイルをエクスポートするためのコマンドライン構文について詳しく説明します。このページには、.objファイルから.exeファイルへの一般的なルールが含まれているように見える例が含まれています。
これまでに試したmakefileは次のようになります。
しかし、これは機能しません。
nmakeを(いくつかの古いpngファイルで)実行するだけの場合、nmakeはこれを実行します。
1つの特定のファイルをビルドするように依頼すると、次のようになります。
私をまっすぐにすることができるnmakeの達人はいますか?
実験のために、.txtファイルをコピーして.datファイルを作成するmakefileの例は、次のようになります。
これも何もしないので、明らかに私はそのような一般的なルールがどのように機能するかを理解していません。どういうわけか私が欲しいファイルをリストする上記の目標を指定する必要がありますか?
c++ - DLL C++ クラスのエクスポート、.def ファイルに関する質問
プロジェクトで暗黙的なリンクを使用したいのですが、nmake は実際には .def ファイルを必要としています。問題は、これがクラスであり、エクスポート セクションに何を書くべきかわからないことです。誰かが私を正しい方向に向けることができますか?
エラー メッセージは次のとおりです。
NMAKE : U1073: 'DLLCLASS.def' の作成方法がわからない
PS: Windows CE Platform Builder を使用してビルドしようとしています。
build-automation - nmake を使用して C++ プロジェクトのプロジェクト ツリーを整理する方法は?
プロジェクト ファイルの編成には 2 つの主要な規則があり、その後に多くのバリエーションがあるようです。
規則 1: 高レベル タイプのディレクトリ、プロジェクトのサブディレクトリ
たとえば、wxWidgetsプロジェクトは次のスタイルを使用します。
長所:
- プロジェクトの依存関係がある場合は、単一のファイルから管理できます
- フラットビルドファイル構造
短所:
- test には独自のヘッダー ファイルと cpp ファイルがあるため、ライブラリではなく EXE ファイルの単体テスト アプリケーションを生成する場合、テストするアプリケーションのオブジェクト ファイルを含める必要があります。これには、推論規則を作成し、すべてのソース ファイルの相対パスを展開する必要があります。
- 別のソリューションでプロジェクトを再利用するには、ツリー構造から適切なファイルを抽出し、ビルド スクリプトを変更する必要があります。
規則 2: 高レベルのプロジェクト ディレクトリ、タイプ サブディレクトリ
たとえば、Wiresharkプロジェクトはこのスタイルを使用します
長所:
- プロジェクト自体はフォルダー内に自己完結型であるため、移動や再利用が容易になります
- ビルド ツールでより短い推論規則を使用できるようにします
- 階層的なビルド スクリプトを容易にします
短所:
- プロジェクト間に依存関係がある場合は、ビルド順序を管理するために、プロジェクト ディレクトリの上にビルド スクリプトのレイヤーを追加する必要があります。
現在、プロジェクトで規約 1 を使用していますが、これまでのところかなりうまく機能しています。現在、私は単体テストを (CxxTest を介して) 追加し、nmakeを使用して継続的インテグレーションへの移行を促進しています。規則 1 は、適切な nmake ファイルの作成に深刻な頭痛の種を引き起こしています。
私の主な要件/目標は次のとおりです。
ソリューション全体のビルド スクリプトを維持する労力のレベルを減らします。
ソリューション内のプロジェクトとそのビルド手順を他のプロジェクトから切り離します。
チェックアウト用のビルド スクリプトを使用して、コミットごとにメディア生成をリリースすることで、継続的な統合を促進します (もちろん、CruiseControl などの他のツールも活用します)。
追加のプロジェクトまたはソース ファイルの追加または削除を、開発者にとって可能な限り簡単にし、エラーの発生を最小限に抑えます。
だから私は尋ねます:
- これらの方法のいずれかの他の長所と短所はありますか?
- これらの慣習の 1 つだけを支持する明確な反対意見はありますか?
windows - nmake エラーレベル/リターン コードの処理
私はnmakeベースのプロジェクトを持っています.aspコンパイラは、nmakeが認識しているように見えるエラーをスローする可能性があります.
ただし、バッチ ファイル内から nmake を呼び出すと、環境変数 %ERRORLEVEL% はゼロに設定されたままになります。
nmake タスクを制御すると、最終的にゼロ以外の ERRORLEVEL (2 に設定されている) が返されるので、エラーを問題なくキャッチできると想定していますが、nmake はゼロ以外の値をバブルしていません。そのタスクからコードを終了します。または、少なくとも、私はそれを誤ってトラップしています。どんな助けでも大歓迎です。
qt - ライブラリ名に0が追加されるのはなぜですか?
次のようなプロジェクト ファイルを含むこの小さな Qt プロジェクトがあります。
それからライブラリをコンパイルすると、qmake && nmake
ファイルになります
lib と dll の名前に追加の 0 が追加されるのはなぜですか?
生成されたメイクファイルはそれを追加していないように見えますが、単にそれを想定してMakefile.Release
いるだけです。
どうすればそれを防ぎ、ライブラリに好きな名前を付けることができますか?
(makefile.release を手動で修正することは、受け入れ可能な解決策ではないことに注意してください)
makefile - すべての.cppファイルは2つの.hファイルに依存していますか?
makefileには、次の行があります。
これにより、dtds.hが変更されるたびにhelper.cppが再構築されます。ただし、次のように、他の2つのヘッダーファイルのいずれかが変更された場合に、プロジェクト内のすべてのファイルを再構築する必要があります。
明らかにそれはうまくいきませんが、nmakeに自分のやりたいことをさせる正しい方法がわかりません。誰かが助けることができますか?個々のファイルがh1.hとh2.hに依存することを手動で指定する必要はありません。
ありがとう。(私はVisual Studio 2005に含まれているnmakeを使用しています。)
linux - Microsoft VC でこのメイクファイルを使用するにはどうすればよいですか?
以下のプログラムで、わからないことが 2 つあります。
Microsoft VC でこのメイクファイルを使用するにはどうすればよいですか?
なぜ「?」があるのですか?「=」の前に?
プログラム: