は私が期待どおりにfoo.o
を生み出すだろう、なぜ私のメイクファイルがインクルードヘッダーで動作しないのですか?
LDLIBS=$(shell root-config --libs)
INCLUDE= -I/Library/Java/JavaVirtualMachines/jdk1.8.0_51.jdk/Contents/Home/include \
-I/Library/Java/JavaVirtualMachines/jdk1.8.0_51.jdk/Contents/Home/include/darwin \
foo: foo.o
$(CXX) -shared -fPIC $(LDLIBS) $(INCLUDE) -o foo.o foo.cpp
foo.cppは私が手動で"g++ -shared -fPIC -I..."
コマンドを実行すると、以下の
#include <jvmti.h>
が含まれている(C++用)は、次のメイクファイルを持っています。
しかし、私はmake
を実行すると、私は
$ make
c++ -c -o foo.o foo.cpp
lib_track_npe.cpp:1:10: fatal error: 'jvmti.h' file not found
#include <jvmti.h>
^
1 error generated.
make: *** [foo.o] Error 1
このエラーが発生します誰かが、私はメイクファイルで間違って何をしたかを教えていただけますか?
おかげ
'g ++ ...'と入力した直後に 'pwd'コマンドを投稿できますか? – Amadeus
pwdは現在のディレクトリ(foo.cpp)の場所です。私の '-I'では、絶対パスを指定してはいけません。したがって、それは私がそれをどこと呼んでも問題ではありません –
はい、そうすべきです。手動であなたはパスします-I ..親ディレクトリが検索パスにあることを意味します – Amadeus