- Community Home
- >
- HPE Community, Japan
- >
- HP-UX
- >
- HP-UX General
- >
- CのプログラムをILP32で動作させる方法
HP-UX General
1758055
メンバー
2907
オンライン
108867
解決策
フォーラム
カテゴリ
Company
Local Language
戻る
フォーラム
ディスカッションボード
フォーラム
- Data Protection and Retention
- Entry Storage Systems
- Legacy
- Midrange and Enterprise Storage
- Storage Networking
- HPE Nimble Storage
ディスカッションボード
ディスカッションボード
ディスカッションボード
フォーラム
ディスカッションボード
戻る
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
- BladeSystem Infrastructure and Application Solutions
- Appliance Servers
- Alpha Servers
- BackOffice Products
- Internet Products
- HPE 9000 and HPE e3000 Servers
- Networking
- Netservers
- Secure OS Software for Linux
- Server Management (Insight Manager 7)
- Windows Server 2003
- Operating System - Tru64 Unix
- ProLiant Deployment and Provisioning
- Linux-Based Community / Regional
- Microsoft System Center Integration
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
ブログ
情報
コミュニティ言語
言語
フォーラム
ブログ
トピックオプション
- RSS フィードを購読する
- トピックを新着としてマーク
- トピックを既読としてマーク
- このトピックを現在のユーザーにフロートします
- ブックマーク
- 購読
- 印刷用ページ
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ハイライト
- 印刷
- 不適切なコンテンツを報告
02-23-2010 08:34 AM
02-23-2010 08:34 AM
CのプログラムをILP32で動作させる方法
現在、データモデルがILP32で動作するC言語のプログラムのシステムを新ハードへの移植を検討しており、
リソースはそのまま移植し、リコンパイルのみを実施して移植可能かどうかを検討しております。
■移植元システム
・ハード:C8000 CPU:PA-RISC、OS:HP-UX11i
※現在使用しているコンパイルオプション
cc +z -g +DAportable -Ae +M1 +w1 +ESconstlit +u1 -mt
■移植先システム
・ハード:rx2660相当 CPU Itanium、OS HP-UX 11v3
※コンパイルオプションは今後検討し、決定
STKツール等で影響調査はしておりますが、
移植先システムではハード(CPU)・OS変更により、単純にコンパイルすると、データモデルがLP64になることがわかりました。
※参考URL
<>
データモデルがLP64になることで、下記の差異があることがわかりました。
・long型のサイズが4バイトから8バイトに変更
・ポインタのサイズが4バイトから8バイトに変更
long型・ポインタのメンバを持つ構造体・変数のサイズが変更/ポインタをキャストしている箇所が多数あることから、
移植するにあたり、ソース改修が発生することを懸念しております。
「HP-UX リファレンス セクション 1 : ユーザーコマンド (A~M)」を参照したところ、
HP-UX11v3のCコンパイラには「+DD」オプションがあるようなのですが、
当オプションを使えばILP32データモデルで動作させることができるかを検証する環境がないので質問させていただきました。
同様の事象を解消するノウハウをご教授していただいたいです。
リソースはそのまま移植し、リコンパイルのみを実施して移植可能かどうかを検討しております。
■移植元システム
・ハード:C8000 CPU:PA-RISC、OS:HP-UX11i
※現在使用しているコンパイルオプション
cc +z -g +DAportable -Ae +M1 +w1 +ESconstlit +u1 -mt
■移植先システム
・ハード:rx2660相当 CPU Itanium、OS HP-UX 11v3
※コンパイルオプションは今後検討し、決定
STKツール等で影響調査はしておりますが、
移植先システムではハード(CPU)・OS変更により、単純にコンパイルすると、データモデルがLP64になることがわかりました。
※参考URL
<>
データモデルがLP64になることで、下記の差異があることがわかりました。
・long型のサイズが4バイトから8バイトに変更
・ポインタのサイズが4バイトから8バイトに変更
long型・ポインタのメンバを持つ構造体・変数のサイズが変更/ポインタをキャストしている箇所が多数あることから、
移植するにあたり、ソース改修が発生することを懸念しております。
「HP-UX リファレンス セクション 1 : ユーザーコマンド (A~M)」を参照したところ、
HP-UX11v3のCコンパイラには「+DD」オプションがあるようなのですが、
当オプションを使えばILP32データモデルで動作させることができるかを検証する環境がないので質問させていただきました。
同様の事象を解消するノウハウをご教授していただいたいです。
1件の返信1
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ハイライト
- 印刷
- 不適切なコンテンツを報告
05-22-2010 01:41 AM
05-22-2010 01:41 AM
CのプログラムをILP32で動作させる方法
+DD32で可能であることを確認できました。
※尚、デフォルト(+DD32を指定せずとも)でもILP32で動作するようです。
※尚、デフォルト(+DD32を指定せずとも)でもILP32で動作するようです。
上記の意見は、Hewlett Packard Enterpriseではなく、著者の個人的な意見です。 このサイトを使用することで、利用規約と参加規約に同意したことになります 。
© Copyright 2024 Hewlett Packard Enterprise Development LP