Skip to main content

arm-elf-gcc-4.3.3 install

1) mpfr / gmp のインストール
http://www.gnu.org/software/gmp
http://www.mpfr.org/
Fortran で使用するらしいが、インストールには必要.

mac port でインストール

2) gcc-4.3.3 インストール
http://sigma-project.net/archives/2009/04/newlibgcc.html
http://www.mouiyada.jp/node/99

ftp://sources.redhat.com/pub/newlib/index.html

gccでnewlibのコンパイルに必要な部分のコンパイル・インストール

cd ../gcc-4.3.0
export PATH=/usr/local/gcc-arm-elf/bin:$PATH
ln -s ../newlib-1.16.0/newlib .
ln -s ../newlib-1.16.0/libgloss .

※gcc-4.3.0/gcc/config/arm/t-arm-elfの以下のコメントアウト(#~)をはずす
MULTILIB_OPTIONS += mhard-float/msoft-float
MULTILIB_DIRNAMES += fpu soft
MULTILIB_EXCEPTIONS += *mthumb/*mhard-float*
MULTILIB_OPTIONS += mno-thumb-interwork/mthumb-interwork
MULTILIB_DIRNAMES += normal interwork

mkdir build
cd build
../configure --prefix=/usr/local/gcc-arm-elf --target=arm-elf --enable-interwork --enable-multilib --with-float=soft --enable-languages=c,c++ --with-newlib --with-gmp=/opt/local --with-mpfr=/opt/local
make
sudo make install


make error http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37625


Undefined symbols:
"_iconv_close", referenced from:
__cpp_destroy_iconv in libcpp.a(charset.o)
__cpp_destroy_iconv in libcpp.a(charset.o)
__cpp_convert_input in libcpp.a(charset.o)
__nl_free_domain_conv in libintl.a(loadmsgcat.o)
"_iconv", referenced from:
_convert_using_iconv in libcpp.a(charset.o)
_convert_using_iconv in libcpp.a(charset.o)
_convert_using_iconv in libcpp.a(charset.o)
_convert_using_iconv in libcpp.a(charset.o)
__nl_find_msg in libintl.a(dcigettext.o)
"_iconv_open", referenced from:
_init_iconv_desc in libcpp.a(charset.o)
__nl_init_domain_conv in libintl.a(loadmsgcat.o)
__nl_init_domain_conv in libintl.a(loadmsgcat.o)
ld: symbol(s) not found

Googleing a bit showed that the problem comes from the system iconv.h
under /usr/include, which conflicts with Fink's under /sw/.

A solution is to replace /usr/include/iconv.h by a symlink to
/sw/include/iconv.h.



newlibのコンパイル・インストール

cd ../../newlib-1.17.0
./configure --prefix=/usr/local/cross/arm --target=arm-elf --enable-interwork --enable-multilib --with-float=soft
make
sudo make install

Comments

Popular posts from this blog

filter bub..b..le...

ちょっと古いトピックです。 同僚の検索エンジンについてのレクチャーで、普通のエンジンはもう Google で十分だから「Google 八分」になってるサイトのみを探してくるエンジンを作ってくれと言ってヒンシュクをかったのが数年前。(そしてかの同僚は転職していきましたー勿論私のせいではないです) 脳科学者の池谷ユウジさんが著書の中で、人間の脳には「自由意志」ではなく「自由否定」がある。と言っていましたが、現在 facebook や Google がやっているような「情報の選択」はそもそも判断する要素が既にフィルタリングされてしまう、という点で悪な気がします。 そもそも、意図せずに入ってくる情報などのノイズに触発されることはとても多いです。そういう意味でもフィルタリングされた情報のみがインプットされることは生き物として可能性を閉じてしまう糞詰まりなのではと感じてしまいます。トポロジ的に土管なんで詰まったら辛いです。かつて糞詰まりの大英帝国が胡椒のためにムガールを滅ぼしたように閉じているが故にあまり脇道に逸れられないっぽい危うさというか。 などと考えましたが、流れてきた落ち葉に載せて小川に流しました。

USB-RSAQ3

USB-RSAQ3 USB-RSAQ3は、I-O DATAが販売するUSB・シリアル(RS-232C)変換アダプタ。 USB-RSAQ3をIntel Macで使う USB-RSAQ3は、公式ドライバがIntel版Mac OS Xに対応していない(2007年4月現在)。USB-RSAQ3に搭載されているUSB・シリアルブリッジはProlificのPL-2303で、Prolific自体がMac OS X Universal Binary版のドライバを提供しているため、これを使ってUSB-RSAQ3をIntel Macで利用できるようにする。 まず、Prolificのドライバダウンロードページから、PL-2303のMac OS X用ドライバをダウンロードしてインストールする。結果、/System/Library/Extensions に ProlificUsbSerial.kext が置かれる。 http://www.prolific.com.tw/support/files/%5CIO%20Cable%5CPL-2303%5CDrivers%20-%20Generic%5CMacOS%5CMacOS%2010.x%5Cmd_PL2303_MacOSX10.6_dmg_v1.4.0.zip 再起動後、ProlificUsbSerial.kext(実体はディレクトリ)の中の Contents/Info.plist のidProductの値を、以下のように書き換える。 <key>IOKitPersonalities</key> <dict> <key>067B_2303</key> <dict> ... <key>idProduct</key> <integer>43682</integer> <key>idVendor</key> <integer>1659</integer> </dict> </dict> ちなみに変更後の値は、USB-RSAQ3を接続した際にシステムプロファイラの [USB] - [USB-Serial Controller] から...