「あなくつ」のおもちゃばこ

Blog

FreePascalでクロスコンパイル (その後)

はい、またやってました、クロスコンパイル。ってかこれ今やるべきことじゃないんだけど、FreePascalのメーリングリストで同じように悩みを持っている人がいて、それ見たらなんかやってた(笑)。

過去の戦歴

今回は64bitのLinuxがターゲット。過去の失敗経験をもとにCygwinBinutilsのコンパイルからやってみたら、なんとかうまく行ったので手順を書き記しておく。

binutilsをつくる

  1. Cygwin入っていなければインストールする。インストール方法はネット上にいっぱいあるのでググッてね。
  2. Binutilsのコンパイルに必要と思われるCygwinのパッケージは、「make」「gcc」「cpp」「libiconv」かな。他にもあるような気もするけれど、覚えていないのでエラーになったら適宜追加する感じで。
  3. Cygwinのコンソール立ち上げて、コンパイルで使うディレクトリへ移動
    mkdir -p /usr/local/src/
    cd /usr/local/src/
    
  4. Binutilsのソースを拝借してきて、展開、移動
    wget ftp://ftp.gnu.org/gnu/binutils/binutils-2.20.1.tar.gz
    tar xvzf binutils-2.20.1.tar.gz
    cd binutils-2.20.1
    
  5. x86_64-linuxをターゲットにしてconfigureする
    ./configure --target=x86_64-linux
    
  6. お決まりのコマンドを実行する。ま、これが大体エラーになるから大変なんだけどね。
    make clean
    make all
    make install
    
  7. うまくコンパイルできれば「[Cygwin Dir]\usr\local\bin」においしそうなファイルが!

エラーが起こるとすればconfigureとmakeなので、エラー内容をよく見て必要なパッケージやライブラリを入れていけばいずれはコンパイルできるようになると思われる。

Free Pascalコンパイラを64bit用にコンパイル

コンパイラをコンパイルするんです。(じゃぁそのコンパイラは何でコンパイルされたんでしょう。コンパイラ?じゃぁそのコンパイラは...なんてね)

  1. 「[Cygwin Dir]\usr\local\bin」に生成された下記のファイルを「[Lazarus Dir]\fpc\[FPC Ver]\bin\i386-win32」へコピー
    • x86_64-linux-ar.exe
    • x86_64-linux-as.exe
    • x86_64-linux-ld.exe
    • x86_64-linux-objdump.exe
    • x86_64-linux-strip.exe
  2. 「[Lazarus Dir]\fpc\[FPC Ver]\bin\i386-win32」にパスを通す
  3. FPCのリポジトリからソースコードをダウンロードして適当に展開
  4. コンソールを起動し、展開したフォルダに入る
  5. コンパイルしてインストール
    make clean
    make OS_TARGET=linux CPU_TARGET=x86_64 all
    make OS_TARGET=linux CPU_TARGET=x86_64 \
    	INSTALL_PREFIX=[Lazarus Dir]\fpc\[FPC Ver] install
    
  6. 64bitコンパイラがうまく作成できれば、LazarusのコンパイラオプションからOSとCPUを64bit Linuxにしてコンパイルできるはず

これでWindowsで作成したHello Worldが64bit CentOSで動くようになった! 今回のステップを踏めば別のプラットフォーム向けもできそうだね。

あ、ちなみにLCL(Lazarus Component Library)のクロスコンパイルは試してません。とりあえず今のところ使ってないから、なくていっかな。過去の経験より手をつけるとはまるので。

タグ : 64bit,Binutils,Cygwin,FreePascal,Linux

2010/11/04 06:20:21 | Trackbacks (0) | Comments (0) | Technology

FreePascalでクロスコンパイル (再来)

いやぁ結局Linuxはダメだったんだけどね。書いておかないと忘れちゃうので。

FreePascalでクロスコンパイル (再来)」の続きを読む

タグ : 32bit,64bit,FreePascal,Lazarus,Linux,クロスコンパイル

2010/07/26 05:45:52 | Trackbacks (0) | Comments (0) | Technology

テレビが映った頃には...

後半30分。ま、結果的にはそのあとたっぷり見たわけですが。

先日グラボが調子悪くて会社で余っていたヤツに変えたわけですが、そのときにATIのMPEG2デコーダも一緒にアンインストールしてしまったようです。で、いざチューナー立ち上げるとデコーダーが見つかりませんと言われる始末。

っていうか、MPEG2デコーダーはATI以外にも入っていたと思うんだけどなぁと思いつつ、K-LiteやGPL Mpeg2 Decoderなどをいれてみたものの症状が変わらず。仕方が無いのでATIのインストールパッケージをDLしてきてデコーダーいれたつもりが登録されず。再起動したりいろいろ試した結果以下の手順でデコーダーを登録できた。

  • AMDのダウンロードページへアクセス
  • Radeon HD系、チップは適当に、自分のOSを選択
  • 「Additional Downloads Package」セクションの「Avivo Video Converter」をダウンロード
  • インストーラー実行。この時パッケージが一時的に展開されるディレクトリを聞かれるので、その入力値を覚えておく。
  • インストーラーが立ち上がったらキャンセルで終了
  • [一時ファイル展開先]\Packages\Apps\AVIVO\AVIVO.msiを実行(64bitの場合はPackages\Apps\AVIVO64\AVIVO64.msi)
  • 多分DLLの登録でエラーがでた旨のダイアログが表示されるが無視してインストール終了
  • コマンドプロンプトを管理者権限で起動
  • 「regsvr32.exe "C:\Program Files\Common Files\ATI Technologies\Multimedia\ati*.dll」を実行(*は該当ディレクトリ内のすべてのDLLに対して行うということ)
  • これでATI MPEG VideoDecoderが登録されているんじゃないかと

あとでよく考えたら、TVTestが64bitだから64bitのフィルタしか読めなかったんじゃないかと。過去にインストールしたMPEG2デコーダーはたぶん32bit。グラボ入れ替える前は、たまたまATIのデコーダーだけ64bitのモノが入っていて、それが使えていたようだ。もしかするとK-Liteの64bit版とかを入れておけば動いたかもしれない。

こういう面倒なことが多いから64bit版はまだおすすめできないんだよね。技術者レベルじゃないと、まずこんなことはわからないだろうからね。

タグ : 64bit,ATI,MPEG2,PT2,TVTest,デコーダー

2010/06/30 02:24:54 | Trackbacks (0) | Comments (0) | Pastime

PRODIGY 7.1XT 64bit正式対応ドライバ

デバイスマネージャパソコンのオーディオボードにはPRODIGY 7.1XTという製品を使っているのですが、これの64bit版Windowsに正式対応したドライバが出ていました。

PCを組み立てる当時、64bitに対応していてそれなりの価格でマトモなサウンドカードがこれくらいしかなかったのでBetaドライバでも使用していたのですが、2年越しでやっとこさ正式に対応してくれたみたいです。

Betaドライバの時はマスタボリュームがWindowsのMMEとバッティングしていることや、このサウンドボードのひとつのウリであるASIOが使えないなどいくつかの問題があったのですが、今回のドライバで一通り修正されているようです。

このサウンドカードはかなりオススメなのですが、価格.comでは掲載がなくなっていますね。もう販売していないのかな。性能対コストのパフォーマンスは非常に良い製品と思います。

タグ : 64bit,ASIO,PRODIGY,ドライバ

2010/02/21 21:20:18 | Trackbacks (0) | Comments (0) | Technology

64bit は難しい

Vista 64bit版を使っているのですが、64bitというのはなかなかくせ者ですね・・・。

  1. ドライバの関係でVistaにしてから昔使っていたUSBラジオチューナーが使えなくなる。
  2. チューナー放置。ネットラジオに乗り換え。
  3. ラヂオつくばが開局。仕事の関係もあるので聞きたくなる。
  4. ドライバを何とかしてみようかと考える。
  5. 本を読んでみた。ネットを散策してみた。
  6. 挫折。
  7. User Mode Driverなるものがあることを知る。
  8. ネットを散策してみる。お、これならいけそうかも!
  9. WDK(Windows Driver Kit)をダウンロード。
  10. 「64bitでは動きません」
  11. そうですか、すいませんでした。
    1. タグ : 64bit,umdf,vista,wdk,ラヂオつくば

      2008/11/03 18:15:36 | Trackbacks (0) | Comments (0) | Technology

  • Top
  • Software
  • Blog
  • Laboratory
  • Profile
Search
Feeds of Blog
Archives

Copyright © 2004-2024 Ana-Kutsu All Rights Reserved.