カレンダー
カテゴリ
以前の記事
お気に入りブログ
最新のトラックバック
その他のジャンル
ファン
記事ランキング
ブログジャンル
画像一覧
|
2005年 02月 08日
考えてみたら、「パソコン」関係の投稿はこれが始めて。 実際、SEなんて物を職業にしている割には投稿するネタなんてないんですよ・・・。 ところが、今やっている仕事で一つネタになりそうなものがあった。 ひょっとしたら同じように悩んでいる人も居るかもしれない。 今、HP-UX 11i と Oracle 10g という組み合わせでシステムを作っている。 で、環境面なんかはよくわかってないんだけど、どうも64bitでこいつらは出来上がっているらしい。 通常、C言語なんかは32bitということを意識して作っている。 だけど、今回は64bitだ。ここにマジックがある。 ソースを作ってコンパイルして、リンクを実行したところ、こんなエラーが出た 『~ : Mismatched ABI. 64-bit PA shared library found in 32-bit link.』 どうも、ABI(アプリケーション バイナリ インタフェース)が32bitと64bitであわねーよ! って言っているらしい。 といわれてもこっちのライブラリはデフォルト32bitだ。どうやって64bitにすればいいんだ・・・。 と悩みつつ、HPのサイトを調べると・・・、あった。 64bitでコンパイルするには、コンパイルオプションに「+DA2.0W」をつければよいらしい。 で、コンパイルは解決した。 次にまた問題が発生した。今度はリンクだ。 LMを作るときにも同じように文句をいってくる。 コンパイル時には「+DA2.0W」をつければ64bitになる。 では、リンク時にはどうすればいいんだ?? 答えは、リンクオプションに「+DA2.0W」をつける。 なんと単純な・・・。 しかも、この情報、HPのサイトにない! コンパイル方法あるんだからリンクも載せてよねぇ~、HPさん。
by trapezium_orion
| 2005-02-08 16:19
| 以前の記事
|
ファン申請 |
||