-fpicフラグは何をしますか? ライブラリ(OpenSFM)をインストールしたいのですが、-fPICコンパイルフラグを使ってCeresソルバーをビルドしてインストールする必要があります。-fPICコンパイルフラグは何をしますか?
問題は、すでにCeresソルバーを-fPICフラグなしでインストールしていることです。他のライブラリはすでにそれに依存しています。これをどうすれば解決できますか?
-fpicフラグは何をしますか? ライブラリ(OpenSFM)をインストールしたいのですが、-fPICコンパイルフラグを使ってCeresソルバーをビルドしてインストールする必要があります。-fPICコンパイルフラグは何をしますか?
問題は、すでにCeresソルバーを-fPICフラグなしでインストールしていることです。他のライブラリはすでにそれに依存しています。これをどうすれば解決できますか?
-fPICについての良い説明はhereです。
ここでの主な質問は、Ceres Solverを再構築せずにOpenSfMをインストールできるかどうかということです。私が知る限り、あなたはできません。
あなたができる最も簡単なことは、Ceresソルバーを再構築し、PICバージョンを再インストールすることです。
cmake .. -DCMAKE_C_FLAGS=fPIC \
-DCMAKE_CXX_FLAGS=-fPIC \
-DSOMEOTHERARGUMENTSTHATYOUMIGHTHAVE
私たちはあなたのためにどのように働いたか教えてください。 :)
Ceresソルバーをアンインストールしてから再インストールすると、それに依存する他のライブラリ(この場合はOpenCVです)に影響しますか? – Hilman
-fPICでコンパイルされたライブラリは、互換性があります。 – bot1131357
-fPICは共有ライブラリの位置独立コードを作成します。共有ライブラリの代わりに静的リンケージを使用することです –
これはCMakeとは関係ありません。 '-fPIC'はCMakeフラグではなく、コンパイラのフラグです。 –