まったく進歩してから 4 時間以上が経過し、ドキュメントやリンクを検索しましたが、率直に言って、アイデアがありません。だからここに行きます。
バックグラウンド
- コマンド プロンプトで C++ プログラムをコンパイルしています
- 私はコマンドプロンプトが初めてで、c ++はかなり初めてです
- 私はこのプログラムをNotepad ++(VSではない)で書いていますが、コンパイルできるようにVSがインストールされています
- そのためのC++ APIラッパーであるMagick ++を介してImageMagickを利用しようとしています。
- メイン プログラム ディレクトリ
- C:/Program Files (x86)/CameraSoftware/myCameraProgram.cpp
- Magick++ ディレクトリ
- C:/Program Files (x86)/ImageSoftware/Magick++/lib/Magick.h
問題
- Magick++ API を使用しようとしているので、含めたい
- 私は.cppファイルでこれを使用しています
#include <Magick++.h>
- 私は他の人のために働いたが役に立たなかった多くの解決策をいじりました
- 致命的なエラー C1083: インクルード ファイルを開けません: 'Magick++.h': そのようなファイルまたはディレクトリはありません
問題
- コマンドプロンプトから「Magick++.h」を正しくコンパイルしてリンクするにはどうすればよいですか?
- 現在、それはそのようにコンパイルされています
- cl myCameraProgram.cpp /EHsc /link DSLRRemoteLib.lib
- DSLRRemoteLib は同じディレクトリにある lib ファイルで、機能するには /EHsc と /link が必要です。
その他のソリューション
- ビジュアルスタジオプロジェクトの場合、構成をいじってプロジェクトに外部ディレクトリパスを追加できると思いますが、メモ帳++を使用してそのような余裕がないため、これを適切にコンパイルする方法を本当に知る必要があります
- myCameraProgram.cpp #include "COMPLETE_DIR_PATH/Magick++.h" でハード コーディングを試みましたが、コンパイルはできますが、Magick++.h にはさらに多くのインクルード (例:
#include <Magick++/Include.h>
) が含まれており、ヘッダー ファイルごとに C1083 エラーが発生します。- また、Magick++.h 内のファイルパスをハード コーディングしてみましたが、次のレベルのヘッダー ファイルでも同じ問題が発生しました。したがって、これは解決策ではありません。
- また、コンパイル行でファイルを /link に追加の引数を追加しようとしました
cl myCameraProgram.cpp /EHsc /link DSLRRemote "COMPLETE_DIR_PATH/Magick++.h"
しかし、動作しません- また試した
cl myCameraProgram.cpp /EHsc /link DSLRRemote /l "COMPLETE_DIR_PATH/Magick++.h"
- 複数回の失敗した試みとともに。
ヘルプ、アドバイス、または方向性は非常に高く評価されます、ありがとう!
========編集========
みんなのヒントをありがとう。
- /I "C:\Users\ME\Documents\ImageMagick-6.8.1-10\Magick++\lib" を使用すると、 #include "Magick++.h" を正常にリンクできましたが、他のファイルを探しません。
- サブディレクトリ パス "C:\Users\ME\Documents\ImageMagick-6.8.1-10\Magick++\lib\Magic++\Include.h" にある #include が見つかりません。
- 「Magick++/Include.h」は、親ディレクトリ内の別のサブディレクトリへの参照も作成します。
進捗
- 私の現在のコマンドプロンプトのコンパイル行は次のとおりです。
- cl "C:\Users\ME\Documents\ImageMagick-6.8.1-10\Magick++\lib"
- 「Magick++.h」を検索
問題
- 「Magick++.h」は、4 つのヘッダーを含むヘッダー ファイルです。
- コンパイル時に、サブディレクトリにある他のファイルを見つけることができません
- パスの下にあるすべてのサブディレクトリとファイルをリンクする方法はありますか
- ひょっとしてコンパイルで「C:\Users\ME\Documents\ImageMagick-6.8.1-10」?