[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[plamo:26693] Re: PGP Compile error on Plamo 4.2/4.0x



こじま@initramfs + busybox がうまく行かないなぁ,,です.

# モジュールドライバのロードとかはできるのだが,実際の root partition
# をマウントして switch_root で切り替えようとすると seg.fault してカー
# ネルパニックするなぁ..

From: Hideyoshi ARAKIDA <h.arakida@nao.ac.jp>
Subject: [plamo:26691] PGP Compile error on Plamo 4.2/4.0x
Date: Thu, 05 Jan 2006 20:51:23 +0900 (JST)

ぱっと見ですが,

> pgpsrc658unix.tar.gz のコンパイル手順は以下の通りです.
> 
> # tar zxvf pgpsrc658unix.tar.gz
> # cd pgpsrc
> # su
> $ ./build.sh LINUX FREE
> ...
> g++ -g -O2 -g  main.o args.o pgp.o getopt.o fileio.o config.o doencode.o dodecode.o lists.o keyview.o keygen.o keyadd.o keyremove.o keyedit.o keyexport.o keymaint.o keysign.o keyrevoke.o more.o groups.o match.o misc.o pgpAcquireEntropy.o pgpLanguage.o ../shared/pgpDiskWiper.o ../shared/pgpClientErrors.o -o pgp -L/usr/local/lib -L../../../libs/pfl -L../../../libs/pgpcdk/unix -L/lib/linux -lPGPui -lPGPsdkNetwork -lPGPsdk -lpfl -lpthread  -lm -lnsl 
> /usr/lib/gcc/i586-pc-linux/3.4.3/../../../../i586-pc-linux/bin/ld: cannot find -lPGPui
> collect2: ld はステータス 1 で終了しました
> make: *** [pgp] エラー 1
> 
> build.sh の後の LINUX FREE をつけない場合でも同じ箇所でエラーと
> なり,plamo 4.2/4.0x/3.3 で同様な結果となりました.

これは libPGPui.a といったライブラリが見つけれられない,というエラーで
すね.ソースコードは見てないけど,libPGPui.a とかが既にできているなら,
その場所へのパスを -L で指定してやればいいと思うし,何らかの理由で作成
されていないなら,そっちの方の原因を調べる必要がありそう.

> pgp50i-unix-src.tar.gz は [plamo:20178] にあるパッチを
> pgp50i.patch として pgp50i-unix-src.tar.gz と同じディレクトリに
> 置き,以下のようにしました.
> 
> # tar zxvf pgp50i-unix-src.tar.gz
> # cd pgp50i/src
> # ./configure --prefix=/usr
> # patch -p0 < ../../pgp50i.patch
> # make 
> ...
> make[2]: Entering directory `/work1/src/pgp/pgp50i/src/apps/common'
> gcc -O -DUNIX=1  -Wall -W -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -DHAVE_CONFIG_H -DPGPTRUSTMODEL=0 -DDEBUG=1 -DUNFINISHED_CODE_ALLOWED=0 -DPGPSYSDIR=\"/usr/lib/pgp\"   -I../../. -I../.././include -I../include -I. -I./../include     -c -o pgpFullLicense.o pgpFullLicense.c
> " 文字での終端を欠いています
> pgpFullLicense.c:75: error: プログラムとして逸脱した文字 '\'
> pgpFullLicense.c:75: error: `n3' がここでは定義されていません (関数の中ではない)
> pgpFullLicense.c:75: error: 構文解析エラー が "AND" の前にあります

これは gcc の新しいバージョンでチェックが厳しくなった,複数行のメッセー
ジのの問題でしょうね.

> 試しに 4.2/4.0x 環境で [plamo:20178] のパッチを当てずに make すると,
> 
> gcc -O -DUNIX=1  -Wall -W -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -DHAVE_CONFIG_H -DPGPTRUSTMODEL=0 -DDEBUG=1 -DUNFINISHED_CODE_ALLOWED=0    -I../../../. -I../../.././include -I../include -I.      -c -o pgpRndPool.o pgpRndPool.c
> pgpRndPool.c: In function `pgpRandPoolAddEntropy':
> pgpRndPool.c:339: error: can't find a register in class `AREG' while reloading `asm'
> make[3]: *** [pgpRndPool.o] エラー 1
> make[3]: Leaving directory `/work1/src/pgp/pgp50i/src/lib/pgp/random'
> make[2]: *** [all] エラー 1
> make[2]: Leaving directory `/work1/src/pgp/pgp50i/src/lib/pgp'
> make[1]: *** [all] エラー 1
> make[1]: Leaving directory `/work1/src/pgp/pgp50i/src/lib'
> make: *** [all] エラー 1
> 
> となりました.

これも,多分,古い gcc ならコンパイルできていた書き方が,新しい gcc で
厳しくなったチェックに引っかかってるような気がする.

多分,試されている PGP のソースコードが新しい gcc に対応していないよう
なので,新しいソースコードを探すか,小山さんも紹介されている GnuPG を試
してみる方が簡単な気はしますね.

-------
こじま

Follow-Ups
[plamo:26701] Re: PGP Compile error on Plamo 4.2/4.0x, Hideyoshi ARAKIDA
References
[plamo:26691] PGP Compile error on Plamo 4.2/4.0x, Hideyoshi ARAKIDA

[検索ページ] [メール一覧]
Plamo ML 公開システム