私はさまざまなUbuntu LTSバージョン間でアプリケーションを互換性のあるものにする方法を見つけようとしています。しかし異なるUbuntuバージョンでのC++アプリケーションのコンパイルと実行
、それはで終わり、ほとんどの時間「シンボル検索エラー:」またはは「libxxxx.so.xxを見つけることができない」。
要件は非常に明確で、開発者は最後の3つのUbuntu LTS(現在は12,14,16-04)バージョンのいずれかでコードをコンパイルできる必要があり、出力は3つのすべての最終バージョンで実行できるはずです。しかし、問題は複雑になっています。
これを行う方法はありますか?
ありがとうございます。
あなたが問題を抱えているライブラリや、コンパイル/リンクのコマンドラインがどのようなものかなど、詳細を投稿してください。 –
私はQtクリエイターを使用していますので、今までのコンパイル/リンクオプションを気にしませんでした。 opencv、ffmpeg(またはavutils)、swscale、cairoなどの例を挙げることができます。gcc自身でさえ、コンパイル時に異なるバージョンのライブラリを使用することがあります。また、いくつかの共有ライブラリは実行時に(起動時ではなく)必要とされるため、別の頭痛です。 –
おそらくあなたはあなたのプロジェクトを構築するためにcmakeを使う方法を尋ねていますか? –