問題タブ [newlib]
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.
linker - LDFLAGSをnewlibMakefilesに追加します
syscalls.cファイルに_sbrk()関数を実装しようとしています。このために、newlibをプロジェクトオブジェクトファイルにリンクする必要があります。newlibsルートフォルダで私は簡単なことをしました
それは私にたくさんのMakefilesを作成しました。しかし、LDFLAGSを変更するために編集したMakefileがわかりません。これを行わないと、リンカが関連オブジェクトを見つけられないため、「未定義の参照」エラーが発生します。読んでくれてありがとう(そしてうまくいけば私を助けてくれて:)クリス
c - さまざまな libc 実装での wprintf() の "%s" のさまざまな動作
そのうち気づいた
Linux では標準の glibc で動作しますが、同じことが newlib では同じようには動作しません。newlib は "%s" にワイド文字列を期待しているように見えるので、代わりに次のように動作します:
正しい動作はどれですか? これは newlib のバグですか? また、printf文字列フォーマット指定子で幅の広い文字列ではなく、「狭い」文字列が必要であることを明示的に指定する方法はありますか?
gcc - __libc_init_arrayを理解する
http://newlib.sourcearchive.com/documentation/1.18.0/init_8c-source.htmlから__libc_init_arrayのソースコードを表示しました。
しかし、私はこの関数が何をするのかよくわかりません。
私はこれらのシンボルが
リンカスクリプトで定義されています。
リンカスクリプトの一部は次のようになります。
次に、ELF-v1.1、gcc 4.7.2、ld、およびcodesourcery(codesourcery g ++ liteを使用しています)のドキュメントでキー「init_array」を使用して検索したところ、何も得られませんでした。
これらの記号の仕様はどこにありますか?
gcc - Newlib の代替?
私は IA-32 タイプのプロセッサを扱う組み込みソフトウェア エンジニアです。コンパイラ ツール チェーンを探しています。無料が望ましいです。
以前は Mentor Graphics CodeBench Lite を使用していましたが、現在は使用できません。
他の GCC ディストリビューションも調べましたが、glibc のベアメタル実装はありません。newlib 以外はありませんが、GPL と LGPL のライセンスの問題により使用できません。私たちは OEM であり、顧客 (および私たち) は独自のコードを持っています。
どんな提案でも大歓迎です。
c - シミュレーターでのランタイム関数呼び出しでの ARM ハード フォールト
ベアメタル(OSなし)ARM Cortex M3のサードパーティソースからいくつかのプロジェクトをビルドして実行しようとしています。
newlib で arm-none-eabi-gcc(success) でビルドします。
TI Code Composer Studio のシミュレーターで実行します。
問題:
実行すると、ランタイム ライブラリ関数の最初の呼び出しでハード フォールト (対応する ISR に入る) に失敗します。
今まで、memmove または memcpy の呼び出しで失敗していました。逆アセンブリをトレースすると、命令で正確に失敗することがわかります
BLXメムセット
質問: 障害の原因とそのデバッグ方法 ???
visual-c++ - Visual C++ Express を使用して newlib から数学関数をコンパイルする
NEWLIB から数学関数を使用する組み込みシステム用に設計されたコードを抽出しています。そのコードを Visual C++ Express Edition でコンパイルしたいと考えています。ただし、NEWLIB 内のコードの一部は GCC のみでコンパイルされるように設計されているようです。
質問: GCC 以外のコンパイラでコンパイルできるように NEWLIB を修正することはできますか? どのように?
ここで私は理不尽なことを聞いていますか?
たとえば、次の記号は Visual Compiler では認識されません。
注: LCC でコンパイルできれば満足です。これは簡単でしょうか?
c - newlib printf 関数のバグ
printf データをuart
デバイスに送信しようとしています。write_r() 関数を適切に記述しました。
私が抱えている問題は、
- 私が言ったら
printf(" My name is sam \n I am fine ");
- そして次に私が言うとき
printf(" I am back ");
1 つ目の問題: 「私の名前はサムです」しか表示されず、カーソルが次の行に移動してそこで停止します。
2 番目の問題: 「I am back」がまったく印刷されません。
を削除してみましたが\n
、まだ2番目printf
は印刷されません。に問題はありませんuart
。
\
その後、ポインタが失われたように見えます。
マイコード
c++ - STM32 C++ 演算子の新規 (CoIDE)
私は ARM プログラミングの初心者で、CoIDE を使用しています。C++ で 8 チャネルから PWM を読み取るアプリケーションを作成しようとしています。
私の問題は operator new
; の使用です。私が書く場合:
それは正常に動作しますが、私が書くと:
プログラムは次の場所に移動します。
最初の行の後。
my.st.com hereで 1 つのトピックを見つけ、「リンク」および「コンパイル」セクションの「その他のコントロール」に「--specs=nano.specs」を追加しようとしましたが、何も変わりません。