2017-10-23 47 views
0

古いPro * CプログラムをHPからAIXに移行しようとしましたが、設定を変更した後にバイナリ・ファイルを作成できますが、実行に失敗します。間違ったライブラリ(lib32/libclntsh.a)が使われているようです。ここで AIX 7(64ビット)でPro * Cをコンパイルする

は、私は、バイナリ

/PATHA/bin/oraxlc -O3 -q64 -DSS_64BIT_SERVER -I.  -c MYPROG.c "MYPROG.c", line 2051.25: 1506-342 (W) "/*" detected in comment. 
/PATHA/bin/oraxlc -o GLMJLUSB GLMJLUSB.o -L/PATHA/lib/ -lclntsh -lld -lm `cat /PATHA/lib/sysliblist` -lm -lc_r -lpthreads +DD64 
/PATHB/bin/.orig/xlc: 1501-228 (W) input file +DD64 not found 

がされていることを確認したときに、私はここで64

export OBJECT_MODE=64 

にオブジェクトモードを設定することにより、プログラムをビルドし、完全な画像エラー

0509-036 Cannot load program PROGNAME because of the following errors: 
0509-150 Dependent module SOMEPATH/lib32/libclntsh.a(shr.o) could not be loaded. 
0509-103 The module has an invalid magic number. 

されています問題ライブラリを使用しないように指定する方法はありますか?代わりに64ビット版を使用しますか?

Pro * CとAIXについてはよくわかりませんので、何か助けてください。ありがとう。

答えて

0

(実際にはまだ答えはありませんが、多くの編集が必要です)。

メイクファイルはありますか?ない場合は、1を作成します。

.SUFFIXES: .pc 

PROC  = ${ORACLE_HOME}/bin/proc 
PROCFLAGS = code=ansi lines=yes 

.pc.c: 
     ${PROC} ${PROCFLAGS} $< 

が正常* .cファイルにあなたの* .PCファイルをプリコンパイルすることができるまで、それを改善してください。

注:先史時代ではなくGNU!makeをお持ちの方が簡単です!make

関連する問題