スコアを決める手助けをしてください。複数のプラットフォーム用にLinuxバイナリを構築する
私はできるだけ多くのLinuxディストリビューションで動作するように作られたソフトウェアをC++で作成しており、効果的な戦略を見つけ出す必要があります。私はバイナリをこのケースではソースコードではなく出荷しようとしています(知っていると良いかもしれません)。 これはすでに商用製品であり、私は製品のオープンソース化を妨げる知的財産権の問題を抱えていますが、無数のGPL問題に対処しなければならないということも意味します。
推論の現行の行は、最小限の共通点を選んで、すべてを構築することでした。それは、私が生産性を失うという2つの大きな意味を持っています。
- GCCの古いバージョンのC++サポートには、最新のC++機能が欠けています。
- 最小公倍数は、Red Hat Enterprise Linux 4(RHEL4)を伴う
私は間違いなく、セット全体C++ 11の機能は必要ありませんが、私はそれにC++のサポートを起動したいのですが私は可能な限りGCC/libstdC++とは対照的にClang/libC++を使用する考え方を熟読しています。
RHEL4は、C++アプリケーションを構築するための広範なクロスプラットフォームサポートを備えていないようですが、それ以上は、Linuxのさまざまなバージョン間でABIの安定性に関する洞察はほとんどありませんが、少数に基づいてすべてのディストリビューションを構築しようとするのは実行可能な戦略ではありません。
私は、Linuxのさまざまなディストリビューションのためのコンパイルソフトウェアは、ターゲットプラットフォーム上のツールを使ってターゲットプラットフォーム用のソフトウェアをコンパイルすることで最も効果的だと考えています。私は現在、あなたがこれを受け入れないならば、あなたがLinuxプラットフォーム間で広大な移植性の問題に遭遇するという前提の下でも動作しています。プラットフォーム/ディストリビューション間でのC++ ABIの不安定性のために、リンクできないライブラリの数については言及しません。
しかし、私は間違っている可能性があります。これを定期的に処理する人々から聞きたいのですが。何がうまくいくのですか?もっと重要なことに、何がうまくいかないのでしょうか?
もし私がLinux上でビッグ・レポートをしたら、どうすればソフトウェアを支払うのでしょうか?サポートされているバージョンのLinuxでプロダクションをテストしなければならないプロダクションをサポートしているはずです。各自のためのVMとそこに構築する – Mark
@マーク私の考えを正確に、それは進行中の作業です。 –
http://stackoverflow.com/questions/2157636 | | http://stackoverflow.com/questions/16250831 | http://stackoverflow.com/questions/15386027 –