問題タブ [toolchain]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
embedded - ARM Cortex M3 初心者に必要なアドバイス
正式なトレーニング (CPU 側) で、まもなく ARM Cortex M3 の時流に乗り出します。
今、私は以前にArduinoとAVRを少しやっていて、エレクトロニクスの基礎をいくつか持っていますが、私は主にソフトウェア開発者です. ここにあるほとんどのトピックと、利用可能なツールに関する他のトピックをかなり読みましたが、それらは本当に役に立ちました。私が必要としているのは、これらすべての回答要素を結び付けるものです。
十分に一般的で、少なくともさまざまなハードウェア/ソフトウェアの組み合わせ (ステッパー、CAN-Bus、SPI など) を試すことができるスターター キットを用意したいと考えています。私は次のリストを見ています (さらに項目を追加してください!):
- Cortex M3 チップ
- 評価ボード
- ツールチェーン
- JTAG ツール
チップについては、ハイエンドモデルの1つがすべてを少し試すことができるようにしたいと思います. NXP LPC1768 は良い選択のように思えますが、考慮すべき STM と Stellaris もあります。
現在、ボードの興味深い候補は Keil MCP1760、STM3210E-EVAL ですが、1 つのボードでさまざまなツールチェーンを試してみたいので、ベンダー ロックインが心配です。mBed は非常に魅力的ですが、オンライン コンパイラであるため、方程式から外れています (通常のコンパイラも使用できる場合を除きます)。
ツールチェーンについては、IAR の Rowley Associates に「思い入れ」があります。オープンソースよりも使いやすさ/完成度の高さを好み、できれば複数のターゲットで使用できるツールを好みます。
JTAG ユニットは本当に必要ですか? それが「標準的な業界ツール」であると思われる場合、少なくとも経験を積みたいと思います。ベンダー ロックインの別の原因のようです。使い慣れた外付けのものを使用するのと、評価ボードに含まれているものだけを使用するのとではどちらがよいでしょうか?
基本的に、前述のカテゴリの勝利の組み合わせを選択するのに助けが必要です. それは可能ですか、それとも私は素朴で、最終的にそれぞれを購入することになるため、コストの節約を検討する必要がありますか?
ありがとうございました。
結果: 私が注文したもの:
最後に、Joseph Yiu の「The Definitive Guide to the ARM Cortex-M3 (Embedded Technology)」を購入し、CortexM3 プラットフォームのトレーニング (近日公開予定) を見つけ、多数のセンサーが組み込まれた STMicro キット STM3210C-Eval を購入しました。特定のソフトウェア環境に固定されたベンダーではありません。また、オンボード JTAG を搭載した STm32vl-Discovery ボード (digikey から 13$cdn!) も入手しました。私は今、Keil の uVision IDE の評価版 (32K) で遊んでいますが、本当に感動したと言えます! ディスカバリーのファームウェアを再構築し、ロードし直し、デバッガーを使用して 1 日で実行することができました。
みんな、ありがとう!
iphone - ツールチェーンの質問: ヘッダー/ライブラリを追加して、コンパイラがどこにあるかを知るにはどうすればよいですか?
このスクリプトを使用してツールチェーンを作成しました: http://gist.github.com/403608 (動作するように多かれ少なかれ変更されています)
すべてがインストールされ、それを使用してコンパイルしようとすると、./configure で C コンパイラが実行可能ファイルを作成できないというエラーが表示されます。私のコンパイラは、すべてのヘッダーとライブラリを探す場所を知らないだけだと思っています... /usr/ にないため、/var/sdk/usr/ にあります
/var/sdk/usr/ も常に参照するようにコンパイラに指示する方法はありますか?
visual-c++ - MSVC デバッグ コードとリリース コードの混合
質問の動機: 64 ビット コードと 32 ビット コードを生成するには、2 つの個別のフル プログラム コンパイルが必要です。ビジュアル スタジオを使用する場合 (以下で詳しく説明します)、リリース ビルドとデバッグ ビルドには互換性がないため、さらに 2 つのフル プログラム コンパイルが必要になるようです (合計で 4 つになります)。2 つの完全なプログラム コンパイルに固執したいのですが、混乱しています。
デバッグ時に気になるのは、クラッシュの原因となったコードのグローバル状態、スタック フレーム、および行番号/ファイルです。また、査読済みの非常に安定したオープンソース ライブラリからのデバッグ情報も気にしません。したがって、これらのライブラリのデバッグ情報は必要なく、このライブラリのリリース ビルドで十分です。
証拠: VS では、アプリケーションのデバッグ バージョンをコンパイルし、それを Google Protocol Buffers のリリース バージョンとリンクすると、リリース タイプとデバッグ タイプが混在する副作用により、生成されたコードが失敗することがわかっています。
これが Visual Studio を使用することの副作用であるかどうかを知りたいのですが、特定のコンパイラ スイッチのセットがそうなっています。
次に、オープンソース プロジェクトのビルド スクリプト/プロセスを調べると、デバッグ モードで生成されたコードとリリースで生成されたコード (たとえばmumble ) を混在させても問題ないようです。これは、 release と ReleaseWithDebugInfo の違いと関係があると思います (cmake から借用した用語ですが、これは Visual Studio 内で明らかに表現可能です)。ReleaseWithDebugInfo は、バイナリの最適化されたバージョンであり、デバッグ情報も生成されるため、リリースに適しています。
質問 :
- どのスイッチがコードを非互換にするかについて、誰かが説明するか、参照を提供してください。
- Visual Studio でコンパイルする ReleaseWithDebugInfo スタイルは、デバッグとリリースの両方のユースケースに十分ですか (上記で説明したように、私の基準によると)? --つまり、コンパイラがデバッグモードで生成するものは何でもやり過ぎですか、それとも冗長ですか?
- ReleaseWithDebugInfo モード (私のアプリケーション用) で、リリース モード (デバッグ情報なし) で外部依存関係をコンパイルし、未定義の動作を持たないようにすることはできますか?
c++ - Eclipse cdt mingw32 の組み込みツールチェーンを変更するにはどうすればよいですか?
cdt/mingw を使用して Windows でコンパイルしています。私は警告なしでコンパイルするのが好きです。次の警告が表示されます。
次のページは、ld のコマンド ラインにそのオプションを追加するだけで対処できることを示唆しています。
4.8 ld および WIN32 (cygwin/mingw)
したがって、問題は、組み込みツールチェーンのデフォルトのコマンド ライン スイッチをどのように変更するかということです。
また、gcc の警告レベルを設定したいと思います。
android - Android-NDKビルドシステム(hello-gl2のビルド)
このパッケージを使用して、ArchlinuxにAndroid-NDKをダウンロードしてインストールしました。
このページhello-jni
のガイドに従ってサンプルを作成(および実行)しても問題はありませんが、同じことを実行しようとすると、いくつかのエラーが発生します。一部のヘッダーファイルが見つからないようです。hello-gl2
GLES2/gl2.h
ただし、にGLES2/gl2ext.h
存在し$(NDK)/platforms/android-4/arch-arm/usr/include/
、そのよう$(NDK)/build/core/setup-toolchain.mk
なインクルードパスを設定する必要があるようです。
誰かが同じ問題に遭遇しましたか?このサンプルをコンパイルするにはどうすればよいですか?
そして、Android-NDKアプリケーションを簡単に構築するための他のオプションはありますか?このビルドシステムは私には非常に複雑に思えます。アプリケーションのビルドにはcmakeを使用したいと思います。
visual-c++ - Microsoft Visual C++ 用の NetBeans のツールチェーン
MS VC++ コンパイラ用の netbeans ツールチェーンを書いた人はいますか? このバグレポートに従ってください。
これはバージョン 6.7 以降で可能になるはずだと読みました。
皆さんに感謝します。
iphone - iPhoneツールチェーンの問題
http://www.saurik.com/id/4の指示に基づいて、UbuntuでiPhoneツールチェーンを構築しました。私が次のような単純なものをコンパイルしようとすると:
それは私にこれを与えます:
これは、iPhoneSDKとhttp://code.google.com/p/iphone-dev/wiki/Buildingのcrt1.oの両方で発生します。-save -tempsを使用して、cc1コマンドが出力を生成しないことがわかりました。何故ですか?スペックファイルに何か問題がありますか?
c - MIPS用にクロスコンパイルする方法は?
Dreamboxに似たDVBレシーバー(セットトップボックス)があり、MIPSCPUが搭載されています
問題は、単純な「 HelloWorld」アプリケーションをCでコンパイルする方法です。ツールチェーン、SDKはどこで入手できますか?
gcc - 他の Linux ディストリビューション用に Fedora で Cross Compiler Toolchain をビルドする方法は?
my Linux: Fedora 14 x64 my gcc: 4.5.1 my Glibc: 2.12.90
target Linux: 「Ubuntu 8.04.4 LTS」 hardy target kernel: 2.6.24-29-server x64 target gcc: 4.2.4 target Glibc: 2.7
gcc/g++ と fortran が必要です。
私がグーグルで検索したところ、見つかったほとんどのドキュメントはどういうわけか時代遅れであり、他の Linux ではなく ARM をターゲットにしています。
ステップバイステップのドキュメントは大歓迎です。
ありがとう。
compilation - クロス ツールチェーンを使用して Linux でソフトウェアをビルドする
Motorola は、セット トップ ボックス VIP1710 用のソフトウェアを構築するためのクロス コンパイル ツールチェーンを提供しています。それを抽出する/usr/local/kreatel
必要があり、そこにビルドツールのツリーがあります: