質問

KeilはARM7開発のGCCと比較してどうですか?私は中規模プロジェクトのハードウェアコンサルタントを選ぶ過程にあり、一部はkeilを使用し、一部はgccを使用しています。いずれかのオプションを使用する場合の注意点を知りたい...

役に立ちましたか?

解決

コーディングと開発の観点からは、両者の間にほとんど違いはありません。あなたが考慮すべきだと思う唯一のものは、これらのコンパイラに固有のものではありません。 メンテナンス

  • を維持できるようになります にアクセスできない場合はソフトウェア Keilコンパイラまたはそれは わずかな費用ですか?
  • また、debughardware / JTAGがサポートされており、一部を入手する必要がある場合の費用はいくらですか?
  • 費用はいくらですか 1つのコンパイラーから移行する必要がある場合 他のコンパイラーに 開発者を後で切り替えますか?

あなたが非常にコストに敏感でない限り、コンパイラは小さな問題になるので、本当の質問は誰が最高の仕事をするかだと思います。

他のヒント

両方のコンパイラを使用するようにコードを構成することが可能であるべきです。 " packed"などの属性マクロ化することができるので、コードは両方の下で満足です。ハードウェアの詳細を下位レベルにプッシュダウンし、コンパイル時ではなく実行時にハードウェアマップを構成します。コードのキールとGCCのバージョンを別々にする必要がある場合は、それらを別々のファイルに入れて、gcc makeまたはKielプロジェクトファイルで使用されるものを構成します。

まだ解決していない問題の1つは、アセンブラコードです。キールはarmasmを使用し、gccはasasを使用します。彼らは非常に異なるソースコード形式を持っているようです。可能であればアセンブラーを避けるもう1つの理由。

GCCを使用する利点は、ARM以外のプラットフォームをターゲットにできることです。これは、はるかに優れた開発ツール(つまり、x86 Linuxでのvalgrind)を備えたプラットフォームでアプリケーションをシミュレートするのに最適です。実際、これはARMをターゲットとしたアプリケーションがとるべきすべてのアプローチです。最初にx86で開発し、次にARMに移植します。

キールを最新の状態に保つためのコストもあります。私が知っている場所がRVDK 2.1(2002?)にとどまっていると、3人の開発者向けに最新のものにアップグレードするコストが法外に高いためです。

gcc&も追加しますpedanticは、コードの警告とエラーを、キールの(明らかに古代の)バージョンよりもはるかに優れたものにします。

キールはより厳密なARMコードを提供する可能性があるため、ターゲットビルドを実行するためにそれを保持します。それ以外の場合はGCCを使用します。

正しいことを覚えていれば、キールはARMが所有しています。 ARMコンパイラは、優れたコードを生成するためにgccよりも優れています。 Keilは、rvctの縮小版、無料版、または任意のバージョンを含めて覚えているようです。それで、私の質問は、gccが出回ってよく使われているときに、商用ソリューションを使用する価値のある、より高速で、よりクリーンで、より良いコードを持っているということですか?あなたがパフォーマンスクランチの状況にあり、ネット上で無料で入手できるすべてのgccベースの情報を商用ツールにやり直してやり直そうとしない限り、私はgccを使います。キールのグーグル検索ボックスの背後にはおそらく豊富な情報がありますが、gccベースのソリューションの知識と情報の量が多いことを考えると、一般的にgccを使用する方がおそらくより良い道です。

コンサルタントが1つのツールを使用してプロジェクトの最初のレッグワークを行い、最後に作業を引き継ぐ場合は、おそらくgccベースのソリューションが必要です(つまり、vxworks gccとは限りません。たとえソースコードgccでも、一般的なgccソリューションです)、間違いなくあなたやあなたが雇う誰かがこのマスを拾い上げて実行する必要があり、gccでは喜んで能力のある人を見つける可能性が高いからです

商用ソリューションの主な利点は、コンパイラまたはライブラリで問題が発生した場合のサポートです。
メインストリームハードウェアを使用している場合(gcc = x86の場合)、オープンソースは問題ありません。コンパイラまたはライブラリの問題のほとんどは、通常コミュニティによってすぐに修正されます。
(おそらくエキゾチックな)組み込みプラットフォームで開発している場合、ツールチェーンに問題があるとすぐにかなり寂しくなることがあります。

Keilプラットフォームを使用しており、そのパフォーマンスと最適化に非常に満足しています。数年前にいくつかの標準ベンチマークを実行しましたが、それらは非常に優れていました。もう1つの考慮事項はサポートです。これまでのところ、Keilは非常に良い応答時間と、いくつかの困難な問題に対する比較的良いフィードバックを持っています。

FYI。プロジェクトでKeil RTOSを使用し、それについて質問がある場合は、ソースコードを購入できます。

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