質問

最初のJVMTIエージェントを正常に実装し、建物がG ++コンパイラで完了した後、建物プロセスをQTプロジェクトに統合したいと考えています。

しかし、私はいくつかのビルドプロセス構成の問題に直面しています:

G ++コンパイラで実行するパラメーターは次のようになります。

g++ -fPIC -shared agent.cpp -o libagent.so -I /usr/lib/jvm/java-6-openjdk/include -I /usr/lib/jvm/java-6-openjdk/include/linux

これは非常にうまく機能します。今qmakeに:

QMakeが使用するC ++コンパイラにパラメーターを追加するパラメーターCXXFLAGSを知っていますが、このパラメーター化されたコンパイラコールをQMakeに変換するにはどうすればよいですか?

役に立ちましたか?

解決

の助けを借りて QT文書化されていないQmake Qmakeでカスタム構成を見つけました。しかし、それは完璧ではなく、今ではlibagent.soとagent.oを生成します。

SOURCES_AGENT = agent.cpp
agent.name = agent
agent.input = SOURCES_AGENT
agent.dependency_type = TYPE_C
agent.variable_out = OBJECTS
agent.output = libagent.so
agent.commands = $${QMAKE_CXX} $(CXXFLAGS) -fPIC -shared  -o libagent.so $(INCPATH) ${QMAKE_FILE_IN}
QMAKE_EXTRA_COMPILERS += agent

他のヒント

具体的な答えはわかりませんが...

JVMTIエージェントは「通常」ヘッドレスであるため、QMakeを使用していますか?ヘッドはアタッチAPIを使用していますか?

そうでない場合、それは純粋に頭がない場合、別のエディター/cmakeが優れているわけではありませんか? Qmakeは、MOCのもののためのcmakeの前co、いいえですか?

私は自分の仕事のためにcmakeに移りたいと思っていますが、私はQ/cmakeで少しあいまいであることを認めなければなりません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top