問題タブ [gnu-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.
linux - ツールチェーンのバイナリが見つかりません
mini2440 ARM ボード用の最新バージョンの u-boot ブートローダーをビルドしようとして、codesourcery からツールチェーン パッケージをダウンロードし、次のパスに展開しました: /usr/local/arm-2008q3/
現在のセッションの次の値もエクスポートしました。
make を実行すると、次の出力が得られますが、その理由がわかりません。
私はすべてを再確認し、バイナリは実際に上記のフォルダーに存在しますが... どこが間違っているのか説明してください。
configure - コンパイル時に #foo プリプロセッサ ディレクティブを含める (GNU ツール)
私は現在、このような問題に遭遇しました。実際には、依存関係で必要とされる特定のツールキット パッケージのバージョン X (現在はテスト段階で)。#define
ベースシステムのヘッダーファイルに追加を追加するだけで修正でき、プロジェクトを再び正常にコンパイルできました。
しかし、システムへの root アクセス権がなかったらどうなるでしょうか? #define new_macro "i am from the future"
コンパイル時にa を追加することもできconfigure
ますか?
問題を読んだとき、環境変数で動作する可能性があると思いましたDEFS
が、どうやらこれは C プリプロセッサ ディレクティブに使用するためのものではありません。
それで、これはまったく達成できますか?
c - ARM Cortex M3 の GNU-C ツールチェーン setup.c の問題
ARM M3 ベースの MCU、CC2538 を使用しています。Code Composer Studio v6 を IDE として使用しています。GNU v4.7.4 (Linaro) をコンパイラとして選択すると、「選択したデバイスは現在、プロジェクトの初期化の詳細を GNU ツールチェーンに提供していません」という警告メッセージが表示されます。setup.c
後で追加される(?)ためだと思います。
コンパイラには次のフラグがあります
およびリンカー フラグ:-mthumb -g -gstrict-dwarf -Wall -Wl,-Map,"cc2328em_test.map"
TI http://www.ti.com/lit/zip/swra443が提供するソース ファイルを使用します。
main.c、setup.c、setup_gcc.c、cc2538_512.cmd を空のプロジェクトに追加してコンパイルします。コンパイル出力は次のとおりです。
ここに最初のエラー " ./startup_gcc.o:(.flashcca+0x0): multiple definition of `__cca' "があります
ソースコードに誤りはありませんか?間違ったツールチェーンを使用していませんか (TI の APP センターから GCC ロゴ付きの「ARM GCC」として GNU ツールチェーンをダウンロードしました。または、構成が不足していますか?
TI が提供するソース ファイルは次のとおりです。
main.c
setup.c
startup_gcc.c
cc2538_512_gcc.cmd
これは、左側のメニューに構成と関連ファイルを表示する印刷画面です。
c - CentOS/redhat で tcprstat をコンパイルできません。GNU Toolkit/bzr に関するアドバイスが必要
コードをダウンロードしました ("bzr branch lp:tcprstat" でコードを取得 - 合計 1.5 MB) が、コンパイルできません。tcprstat ディレクトリに表示されるファイルは次のとおりです。私は従来の ./configure、make、sudo make install に精通しており、かなり IT に精通しています。
問題の解決(Mehmet の入力に従います)。
このページhttp://xcb.freedesktop.org/dist/から、次のファイルを取得しました。
libpthread-stubs-0.3.tar.gz (2009 年 10 月 14 日 02:16 267K)
プログラムはまだ同じエラーでコンパイルに失敗しましたが、さらにグーグル (「centos pthread がありません」) でこのページ https://www.centos.org/forums/viewtopic.php?t=3517が表示 され、賢明なアドバイスが含まれていました 。
(私はsudoでやった)
ほら。
50 ボーナス ポイントを集めてくれた Mehmet に感謝 (そしておめでとう :-) )。
ps Mehmet、Linux での静的/動的リンクに関する適切なガイドはありますか?
【問題の完全な説明】
私はこれについて怠惰ではありませんでした (私たちが話しているように本をダウンロードしています)、automake、autoconf、make、aclocal、bootstrap の多くのバリエーションを試しましたが、困惑しています。はい、私は README を読みましたが、作成者は誰もが GNU ツールチェーンを知っていると考えているようです。これまでで最も成功した取り組みの詳細を、投稿の最後に記載しました。
誰かがこのプログラムをコンパイルする方法を教えてくれたら、とてもありがたいです。
========= ファイルの初期リスト =============
============= ベスト エフォート ===============
./ブートストラップを実行
==== ./bootstrap 実行後の新しいファイルリスト
次に、./configure を実行します - 正常に動作しているように見えました - エラーはありません。
次に、make を実行しようとすると失敗します。エラーが表示されます。
c - アライメントによるツールチェーンの違い (なぜこれが機能したのか)
私のツールチェーン (ARM 用の GNU ツール) で動作しない ATMEL ライブラリがあり、その理由はわかっていますが、古い YAGARTO で動作する理由はわかりません。また、KEIL と IAR でも同様だと思います。
int (4 バイト) へのアライメントされていないアクセスをサポートしていない ARMV5 プロセッサ (AT91SAM9) で作業しています。
次のように定義されたグローバル バッファがあります。
バッファはいくつかのデータを取得し、その後データはフラッシュに書き込まれますが、データは一度に 4 バイトずつフラッシュする必要があるため、一度に 4 バイトのデータを取得するために pAlignedSource と呼ばれる int ポインタがあります。
ただし、pPAgeBuffer は char 配列であるため、必ずしも 4 バイトにアラインされているとは限りません。また、pAlignedSource はアラインされたアドレスを指していません。このコードが他のツールチェーンでは常に機能しているが、私のツールチェーンでは機能していない可能性はありますか? 両方のコンパイラが同じコードフラグを取得することを除いて、コンパイラに適切な CPU を既に定義しています。
私の問題は、データがバッファからフラッシュにコピーされるときです
データのスクランブルバージョンで終了します:/、ただし、バッファを次のように定義することでこれを修正しました
そしてそれはうまくいきましたが、私はまだこれについて非常に興味があります. 他のツールチェーンで機能したのはなぜですか?
c - 組み込み, AVR/8051 コンパイラを使用して PIC コントローラをコンパイルすることはできませんか?
別のマイクロコントローラ ファミリ IDE/コンパイラで別のマイクロコントローラをコンパイルするにはどうすればよいですか。
たとえば、8051 keil uVision IDE があります。PIC または AVR コントローラーのコードをコンパイルする必要があります。IDEの内部設定を変更することで可能ですか? または、コントローラー固有のヘッダー ファイルなどを追加することによってですか?
ここで必要な実際の答えは、
keil または AVR Studio または PIC などのデバイス リストで特定の「マイクロコントローラ」を選択した後、IDE/コンパイラはコードに何を追加しますか?