1

私は最近、産業用制御ソフトウェア (社内で開発) を実行するための OS として使用する DOS から Linux に切り替えることに基づいて、実現可能性調査を行う任務を負いました。一言で言えば、私は Ubuntu 8.04 の使用に制限されています (ボード上のハードウェア用のドライバーを提供するベンダー提供のカーネル アップグレードを使用)。これはサポートされなくなったため、ソフトウェアを更新またはインストールできません。つまり、gcc バージョン 4.2 を使用してスタックしています。私は C++ を使用できるようにしたいと考えています。

基本的に、企業/専門家は Linux を開発環境としてどのように使用していますか? 上で説明したことはよくあることですか? 開発環境があまり変わらないように、単にバージョンとコンパイラを選択し、製品の存続期間中それを使い続けるか、それともカーネルやコンパイラなどを自由にアップグレードできるようにするか? 特定のベンダーが提供できるものに制約されるのはよくあることですか。ubuntu 8.04 が産業用制御ソフトウェアの開発に適した OS の選択であるかどうかについて、意見を述べる準備ができている人はいますか?

私は Linux の専門家ではありませんが、これまでの調査と実験の結果、Linux のアプローチをやめて DOS を使用するべきだという結論に達しました。私たちの会社は Linux の知識がなく、非常に小規模であり、個人的なキャリア上の理由から、DOS のような冗長な技術を学ぶことに興味がありません。

これは正確にははい/いいえタイプの質問ではないことは承知していますが、どんな回答でも感謝して受け取ります.

4

3 に答える 3

3

GCC 4.2 には C++11 のサポートはありませんが、C++03 のサポートは優れているはずであり、それを非常に簡単に処理できる Boost のバージョンを見つけることができるはずです。

最終的に、Linux には、DOS では見られない多くの利点があります。今日DOSをサポートします。

于 2012-06-22T13:36:31.080 に答える
1

Linux ベースのシステムでは、下位互換性は Unix の世界では非常に深刻な問題であるため、OS とツールチェーンの固定バージョンに固執する理由はほとんどありません。特定の固定システムをターゲットにするのが良い場合もありますが、率直に言って、これらはかなりまれであり、ターゲットのマシン/プラットフォームでテストが行​​われている限り、最新のシステムで開発を行うことができます。

基本的には、開発のためにたとえば Ubuntu 12.04 LTS (長期サポート) にアップグレードして、それを使い続けることができます。ターゲット プラットフォーム/マシンで何らかの非互換性の問題が発生する可能性はほとんどありません。

于 2012-06-22T13:43:52.987 に答える
0

ライブラリなどは、Linux ディストリビューション、Linux ディストリビューションの新しいバージョン、およびその他の *nix OS の間で変更される傾向があります。

以前、Windows と RHEL の両方で実行する必要のある C++ アプリケーションに取り組んだことがあります。私はチームの「Linux ガイ」だったので、Windows でのビルドと作業 (cygwin を使用) に使用していたすべてのオープンソース Linux ライブラリを調整し、作業中の開発者によって行われた最新の変更を取得する必要がありました。 Linux で動作する Windows。

開発の途中で、RHEL の新しいバージョンにアップグレードしました。楽しい経験ではありませんでした。ライブラリのバージョンが変更され、いくつかは他の「同等の」ライブラリを優先して削除されました。gcc のバージョンを変更することによって引き起こされたすべての問題を解決するのにも少し時間がかかりました (確かに、新しい gcc のバージョンは少し寛容で公開されていませんでした)いずれにせよ、私たちのコードにはおそらく正しくないものがあります)。

大規模なデモの数日前に、経営陣から、アプリを Solaris でも実行する必要があることが通知されました。これは簡単な作業ではありませんでした。Solaris は Linux ではありません。彼らは、ある時点で IRIX で実行することをほのめかしました。それが起こらなかったことをうれしく思います。

Linux ディストリビューション、gcc などの特定のバージョンを選択し、開発中はそれを使い続けることをお勧めします。そのようなもののアップグレードは、ソフトウェアのメンテナンス中に後で発生する可能性があります。RHEL は、有償で長期サポートを提供します。新しくリリースされた Ubuntu 12.04 LTS も検討してください。

于 2012-06-22T13:50:36.457 に答える