問題タブ [codesourcery]

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.

0 投票する
1 に答える
1521 参照

qt - Qt Arm リモート デバッグ

私はLPC1768に取り組んでいます。qt Creator で arm-none-eabi-gdb を使用して test_ram.elf ファイルをデバッグしたいと考えています。http://www.yagarto.de/download/yagarto/LPC1768Test.zipからテストするコードをダウンロードしました

残念ながら、リモート デバッグを処理できませんでした。j-link gdbserver を使用してデバッグしたい。

私は試してみました Debug->Start Debugging->Attach to Remote debug server And

上記の設定を行った後、次の警告が表示されました。

タイプ 'unknown-unknown-unknown-unknown-unknown' のバイナリをデバッグするための優先デバッガ エンジンは利用できません。デバッガー エンジン 'Gdb エンジン' がフォールバックとして使用されます。詳細: CDB デバッグ エンジンは、unknown-unknown-unknown-unknown-unknown ABI をサポートしていません。

前もって感謝します

0 投票する
1 に答える
669 参照

assembly - CodeSourcery CS3 割り込みハンドラのオーバーライド

一部の CS3 割り込みハンドラを私のものに置き換えようとしています。"ISRs for stellaris_blizzard" ファイルの下

そして私のハンドラー

SysTick 割り込みはうまく機能します。ただし、ポート M で GPIO 割り込みが発生すると、デフォルトで「__cs3_isr_interrupt」が呼び出されます。GPIO 割り込みハンドラを置き換えるにはどうすればよいですか?

0 投票する
2 に答える
4778 参照

arm - Sourcery G++ (ARM 用クロスコンパイラ) のインストール失敗

次のリンクから Ubuntu 10.04 LTS に ARM 用の Sourcery G++ クロスコンパイラをインストールしようとしました -> http://www.codesourcery.com/sgpp/lite/arm/portal/release644 java.awt エラーが発生しました。インストールのコンソール モードを使用している間、プログラムが要求するすべての詳細を提供しました (インストールのデフォルトの場所を変更しました)。

インストールの途中で、次のエラーが発生しました。

ファイル リンクを作成できません

内部プログラムの実行中にエラーが発生しました。「/home//cross_compiler」からツールチェーンを削除してください。EXITCODE=-1

理由はわかりません。root ユーザーとしてこのプロセスをやり直しましたが、それでも同じエラーが発生します。これを 64 ビット マシンにインストールしようとしています。

0 投票する
2 に答える
5820 参照

gcc - とにかく、プリプロセッサで定義されたマクロのリストを表示しますか?

使用しているコンパイラの呼び出しによって定義されたすべてのマクロを確認したいと思います。これを行う方法はありますか?マニュアルで使用できると書いてありますcpp -dM が、うまくいきません。おそらく私は何か間違ったことをしていますか?

私が走るとき:

プリプロセッサからの出力がまったくありません。gccのオプションとして追加しよう-dMとしても、違いはわかりません。

0 投票する
6 に答える
28417 参照

c++ - RaspBerryPiのクロスコンパイル

RaspBerry Piを使用して、コンピューターから、C++で記述された単純なhelloWorldをクロスコンパイルしようとしています。Linux用のCodeSourceryツールチェーンを使用してコンパイルしています。

TFTPを使用してhelloWorldバイナリをraspBerryにコピーし、chmodを使用して実行権限を付与すると、次のエラーが表示されます。

「違法な指示」

バイナリ上に「ファイル」を作成すると、次のようになります。「ラズベリー:ELF 32ビットLSB実行可能ファイル、ARM、バージョン1(SYSV)、静的リンク、ストリップ」

これは、リンク時に「-static-static-libstdc++」を使用したためです。

静的リンクを使用しない場合、エラーは「セグメンテーション違反」です。

コード:

プログラムを正しい方法でコンパイルして実行するにはどうすればよいですか?ありがとう。

0 投票する
1 に答える
3079 参照

c++ - GCC arm-none-eabi (Codesourcery) および C++ 例外

Raisonance の Ride7/Codesourcery (別名 Sourcery CodeBench Lite) を、ベアメタル HMI プラットフォームを開発する STM32F4 ボードと共に使用しています。

このシステムでは C++ 例外を使用しますが、スローした例外はすべて、stderr に書き込まれた「再帰的に呼び出された終了」エラーで終了します。

問題を再現するコード: (main.cpp)

解決策として Raisonance やその他の情報源を既に試しましたが、実用的なヘルプは得られませんでした。

潜在的な問題/解決策 1:

他のフォーラムで質問したところ、巻き戻しテーブルを初期化するためにスタートアップ アセンブリ ファイルで静的構造を呼び出す必要があるとのことですが (少なくとも、それについて話していると思います)、これを行う方法がわかりません。

潜在的な問題/解決策 2

また、binutils/gas のバグも発見しました。これが問題の原因である可能性があります ( http://sourceware.org/bugzilla/show_bug.cgi?id=13449 )。このパッチを使用して独自のバージョンのツールチェーンを構築しようとしてきましたが、それは独自のプロジェクトになりつつあり、まだ成功していません。

質問

C++ 例外を利用するには、コードで何かを行う必要がありますか? それともツールチェーンのバグである可能性がありますか? 前者の場合、詳しく教えてください。

0 投票する
1 に答える
1749 参照

mips - Sourcery Codebench を Windows で実行する

マシンでクロス コンパイラ ( Sourcery Codebench ) とシミュレータ ( OVP ) をセットアップするのに問題があります。誰かがこれを行う方法を教えてもらえますか?

C を MIPS にクロス コンパイルしてから、Windows 7 x86-64 ビット マシンでシミュレートしたいと考えています。私はこの種のことについて多くの経験がなく、どのバージョンをダウンロードするかを理解することさえ困難です

Sourcery を Windows で動作させる方法について、他に 1 つまたは 2 つの質問を見たことがありますが、必要な情報がありませんでした。

0 投票する
2 に答える
3778 参照

codesourcery - codesourcery ARM ツールチェーンは 64 ビット Windows で使用できますか?

現在、32 ビット Windows 用の 32 ビット codesourcery ARM ツールチェーンを使用しています。正常に動作していますが、64 ビット コードソースの ARM ツールチェーンが利用可能かどうかを知りたいですか?

0 投票する
1 に答える
481 参照

embedded-linux - CodeSourcery と Pandaboard を使用したクロス コンパイルの問題

私は Pandaboard 開発に不慣れです。CodeSourcery クロス コンパイラを使用して、アプリケーション コードをクロス コンパイルしています。私のアプリケーションは単純な「hello world」アプリです。これをクロスコンパイルに使用しています:

を生成できapp.outます。しかし、この app.out をパンダ ボードにコピーして実行しようとすると、次の例外が発生しました。

どうすればこれを解決できますか?

0 投票する
1 に答える
2931 参照

android - 動的ライブラリを使用した C コードのクロスコンパイル中にエラーが発生しました

私は2つのファイルを持っています:

lib.c

およびmain.c

そして、次のコマンドを使用して実行可能ファイルを構築しようとしました:

エクスポート LD_LIBRARY_PATH=pwd

gcc -c -fpic lib.c

gcc -shared -lc -o lib.so lib.o

gcc main.c -ldl

そして、それはかなりうまく機能します。次に、次のコマンドを使用して、プログラムを Android (Nexus One、ARM-v7-0a アーキテクチャ) にエクスポートしようとしました。

エクスポート LD_LIBRARY_PATH=pwd

arm-none-linux-gnueabi-gcc -c -fpic lib.c

arm-none-linux-gnueabi-gcc -shared -lc -o lib.so lib.o

arm-none-linux-gnueabi-gcc main.c -ldl -o メイン

adb push main /system/app

スマートフォンの正しいフォルダーで ./main を実行した結果は次のとおりです。

./メイン: 見つかりません

私のファイルがそこにあるとしても!

クロスコンパイル プロセス中に何か不足していますか? 何か助けはありますか?CodeSourcery のクロスコンパイラを使用していますが、.so ライブラリのない静的プログラムではうまく機能します。ありがとう

編集:Igorが以下に述べているように、それはリンカの問題でした。このコマンドはそれを修正します:

arm-none-linux-gnueabi-gcc -o test main.c -Wl,--dynamic-linker=/system/bin/linker -ldl

私の場合、 /system/lib/ には .so ファイルがあまりないため、他のライブラリが必要です。