有識者の方々のお知恵を拝借させて頂きたく、宜しくお願いいたします。
HP-UX上のプログラムがANSI/Cで作成されています。
それをSolaris、RHELに移行する互換コンパイラはあるのでしょうか。
もしくは移行するための代替策があれば、実際に行ったことのある方の知見をお教え頂ければ幸いです。
HP-UX上でSolaris、RHEL移行用にコンパイルをするという手立てがあるなら、そうした手もありかと思っています。
尚、当方では、Solaris、RHEL→HP-UXはHPを探し、日立やIBMでは移行サービスがあること、非互換検出ツールがあることは知り得ています。
No.3ベストアンサー
- 回答日時:
> HP-UX上のプログラムがANSI/Cで作成されています。
> それをSolaris、RHELに移行する互換コンパイラはあるのでしょうか。
本当にANSI/Cで書かれているソースコードなら多くのCコンパイラで再構築すれば使えると思いますよ。
SolarisやRHELならPOSIXまでならANSI/C以外でも互換性あるでしょうし。
HP固有のライブラリ関数使ってたりすれば、その部分で移植作業が必要な場合も考えられますが。
今時ANSI/Cに対応してないCコンパイラなんてほぼないですよ。
ANSI/Cは最も標準的なC言語の規格で、非常に多く(最近のコンパイラでは対応してないコンパイラを知らない)のCコンパイラで利用できますよ。
※昔(ANSI規格以前)は標準的なK&R以外にも色々な方言がありました。WhiteSmithの様にK&Rと互換とした場合の権利的な心配からわざわざ標準とされるK&Rと関数名変えたりしてるCコンパイラすらありましたから。
ANSI C89/ISO C90は1989年・1990年に規格が発行された古い仕様なので、標準では改訂されたISO C99へ対応しているコンパイラもあります。(例えばGCCは標準ではC99。オプションを指定すればC89で使うことができます)
gccでコンパイル行うことが出来そうだということが分かりました。
実際に試してみて、修正箇所は出てくるとは思いますが、完璧な互換性は無いとも思っておりますので、そこは修正していくしかないと考えます。
御丁寧なご回答をして頂き、ありがとうございました。
No.2
- 回答日時:
ANSI C準拠のソースがあるならターゲットのコンピュータ上で再コンパイルするのが最も楽かなと思います。
HP-UX上でバイナリまで作らないといけないとなると、gccを使ってクロスコンパイルする、というような事になりそうに思います。
SolarisもしくはRHEL上にソースを持っていき、コンパイルを試みる手が楽そうですね。gccあたりでそれが出来そうであることが分かりましたので、大変参考になりました。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- XML ホームページ作成ーこういうのを作りたいんです 6 2022/05/23 18:37
- サーバー 初心者「HP制作の依頼」でお客さんのサーバーに移す流れについて! 3 2022/09/08 19:38
- その他(OS) RHELを使っています。これまで/var/logディレクトリなどを拡張してきた経験はあります。しかし 2 2023/05/12 18:09
- au(KDDI) 明日Docomoからauに乗り換え予定なのですが気をつけた方がいい事とかありますか? 明日からauに 5 2023/03/17 23:09
- X(旧Twitter) Twitterアカウント継続使用について 1 2022/05/14 09:14
- 写真・ビデオ 壊れたパソコンのデータ移行について 3 2023/06/04 18:06
- その他(プログラミング・Web制作) PythonのプログラムのDirに関する質問です 3 2022/12/04 17:01
- Android(アンドロイド) Androidの最下段のアイコンが移動できません。 AQUOS sense6 を買いました。ドコモで 1 2022/09/20 09:22
- 血液・筋骨格の病気 血液検査の推移が気になっています。この推移は異常ですか? 4 2022/12/20 06:14
- 一眼レフカメラ 連泊登山に持っていくカメラ・レンズのご意見・エピソードなど募集 1 2022/08/09 00:30
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ソフトの開発言語を調べる方法
-
C++でデスクトップGUIアプリ開...
-
unsigned long long 型のフォー...
-
2つのマシンでコンパイルしたld...
-
for文内での変数定義
-
Σの計算について
-
C言語でのコンパイラの作成方法
-
HP-UXのプログラムをSolaris、R...
-
COBOL計算式の中間ワーク桁数に...
-
CとC++の変数宣言について
-
C言語 入出力ファイルの読み書...
-
Visual Studio でmakefileを使...
-
C言語はC言語でできている?
-
中国語(簡体字)をソースコード...
-
DOSの文字の色を変える方法。
-
リリースモードとデバッグモー...
-
COBOLの論理演算子について
-
python エラー
-
エクセルのエラーメッセージ「4...
-
<math.h>があるのにsqrtが・...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
unsigned long long 型のフォー...
-
ソフトの開発言語を調べる方法
-
C++でデスクトップGUIアプリ開...
-
組み込みソフト。ROM領域にデータ
-
cc と gcc の違い
-
C++Builder → Visual C++ 移植...
-
printfなど、標準関数のソース...
-
COBOLのALPHABET...
-
COBOLの論理演算子について質問...
-
cobolで実行環境って何ですか?
-
Visual Studio でmakefileを使...
-
パーサとコンパイラの違いって?
-
昔のgraph.hというファイル
-
未使用引数の注意文出力を回避...
-
C言語でのコンパイラの作成方法
-
C言語はC言語でできている?
-
COBOL計算式の中間ワーク桁数に...
-
リリースモードとデバッグモー...
-
『Bin』ディレクトリは何の略語?
-
POWERCOBOLのSQL...
おすすめ情報