忍者ブログ

なんだか

知らないほうが幸せかもしれない

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

rl78-elf-gccコンパイラ作成手順

基本的にunix系の環境で構築するのを推奨,windows系ならcygwin、msysで
unix系でwindowsで動作可能なコンパイラを作ることもできます。
ただし、その環境を作る作業のほうが難易度高です。

GUIではコンソールの環境で作業します

まずは、binutilsの作成からです。

$ mkdir binutils
作業フォルダの作成
$ cd binutils
そこに移動
$ wget http://www.ring.gr.jp/archives/GNU/binutils/binutils-2.23.1.tar.bz2
本家もしくはミラーサイトよりbinutilsのなるべく最新のものをダウンロード
$ tar xjf binutils-2.23.1.tar.bz2
圧縮ファイルの解凍
$ mkdir build
ビルドフォルダの作成
$ cd build
フォルダに移動
$ ../binutils-2.23.1/configure --prefix=/usr/local -enable-64-bit-bfd --enable-checking=release --target=rl78-elf
configureの実行
$ make -j4
makeの実行(4は4コアの場合)
$ su
スーパーユーザーモードに
# make install
インストール先は/usr/local
# exit
スーパーユーザーモード解除
$ cd ..
$ cd ..
これでbinutilsの作成は終わり

次にgccの作成(最初はライブラリがないため、2回作業が必要)
注 gmp,mpfr,mpcがインストールされていること
$ mkdir gcc
作業フォルダの作成
$ cd gcc
そこに移動
$ wget http://www.ring.gr.jp/archives/lang/egcs/releases/gcc-4.7.2/gcc-4.7.2.tar.bz2
本家もしくはミラーサイトよりなるべく最新のものをダウンロード
$ mkdir build
ビルドフォルダの作成
$ cd build
フォルダに移動
$ tar xjf gcc-4.7.2.tar.bz2
圧縮ファイルの解凍
$ mkdir build
ビルドフォルダの作成
$ cd build
フォルダに移動
$ .../gcc-4.7.2/configure --prefix=/usr/local --enable-checking=release --enable-languages=c --target=rl78-elf
configureの実行
$ make all-gcc all-target-libgcc -j4
Cコンパイラのみを作成
$ su
スーパーユーザーモードに
# make install-gcc install-target-libgcc -j4
インストール先は/usr/local
# exit
スーパーユーザーモード解除
$ cd ..
$ cd ..
初回のgccの作成はここまで
次にnewlibの作成
$ mkdir newlib
作業フォルダの作成
$ cd newlib
そこに移動
ダウンロードと圧縮ファイルの解凍は略
$ mkdir build
$ cd build
$ ../newlib-1.20.0/configure --prefix=/usr/local –target=rl78-elf
configureの実行
$ make -j4
Cコンパイラのみを作成
$ su
スーパーユーザーモードに
# make install -j4
インストール先は/usr/local
# exit
スーパーユーザーモード解除
$ cd ..
$ cd ..
Cコンパイラのみはここまで
最終段階のgccの作成
$ cd gcc
$ rm build -fr
一度、初回作成のフォルダを削除
$ mkdir build
$ cd build
$ .../gcc-4.7.2/configure --prefix=/usr/local --enable-checking=release --enable-languages=c,c++ --target=rl78-elf --with-newlib
configureの実行(c++、newlibを追加)
$ make -j4
$ su
# make install -j4
# exit
$ cd ..
$ cd ..
これでコンパイラの作成は終了
$ rl78-elf-gcc -v
組み込み spec を使用しています。
COLLECT_GCC=rl78-elf-gcc
COLLECT_LTO_WRAPPER=/usr/local/rl78/libexec/gcc/rl78-elf/4.7.2/lto-wrapper
ターゲット: rl78-elf
configure 設定: ../gcc-4.7.2/configure --prefix=/usr/local --enable-checking=release --enable-languages=c,c++ --target=rl78-elf --with-newlib
スレッドモデル: single
gcc バージョン 4.7.2 (GCC)

と表示されれば終わり


拍手[1回]

PR

コメント

お名前
タイトル
文字色
メールアドレス
URL
コメント
パスワード Vodafone絵文字 i-mode絵文字 Ezweb絵文字

カレンダー

03 2024/04 05
S M T W T F S
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30

フリーエリア

最新CM

最新記事

(07/27)
(03/27)
(03/26)
(03/23)
(03/22)
(03/19)
(03/18)
(03/18)
(03/15)
(03/14)
(03/13)
(03/12)
(03/11)
(03/11)
(03/08)
(03/08)
(03/06)
(03/05)
(03/02)
(03/01)
(02/28)
(02/27)
(02/24)
(02/23)
(02/22)

プロフィール

HN:
kenrou
性別:
非公開

バーコード

ブログ内検索

最古記事

(12/15)
(12/16)
(12/17)
(12/18)
(12/19)
(12/20)
(12/21)
(12/22)
(12/23)
(12/24)
(12/25)
(12/26)
(12/27)
(12/28)
(12/29)
(12/30)
(12/31)
(01/01)
(01/02)
(01/21)
(01/22)
(01/23)
(01/24)
(01/24)
(01/28)

P R

忍者アナライズ

コガネモチ

忍者カウンター

カレンダー

03 2024/04 05
S M T W T F S
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30