[pgsql-jp: 31034] Re: Cygwinでのinitdb時エラー

吉村 陽子 yoshimura @ b-b-net.com
2003年 9月 11日 (木) 11:20:30 JST


吉村です。

高原様、谷田様、ご回答ありがとうございました。
ご助言いただいた方法を試した結果は、以下の通りでした。

> ipc-daemon サービスを落として、/tmpにある
> MultiFileMsg,MultiFileSem,MultiFileShm,cygipc_0
> 等を削除(or バックアップ)してから ipc-daemon サービスを
> 再起動してみては如何でしょうか。
>
> また、/tmpや/usr/local/pgsql/share等のディレクトリの
> パーミッションがpostgresユーザの読み書きを許可している
> かどうかをWin2000側とCygwin側で確認してみてはどうでしょうか。

postgresユーザが各ディレクトリの読み書きを許可されている事を
WindowsとCygwinの両方で確認し
net stop ipc-daemon
を実行後、/tmp内のファイルを全て末尾に.bkupをつけた名前のファイ
ルにコピーし、その後コピー元のファイルを全て削除して
net start ipc-daemon
としてサービスを開始した後にinitdbを走らせてみましたが、同じエラ
ー(Signal 11)が発生して終了しました。

> 1.5系列とcygipc1.xxは互換性がありません。cygipc2.0を使ってください。

これを試そうとしてみたのですが、/usr/src/cygipc-2.00に解凍する
までは当然ながら問題がなかったのですが、makeを実行するとエラーが
大量に発生しました。
poptがインストールされていなかった為らしく、popt(1.6.4)をインス
トールして再度makeを実行したのですが、またエラーが...。

=============================================================
postgres @ yoshimura /usr/src/cygipc-2.00
$ make --debug
GNU Make 3.80
Copyright (C) 2002  Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
Reading makefiles...
Updating goal targets....
 File `default' does not exist.
   File `all' does not exist.
     File `ipc-daemon.exe' does not exist.
    Must remake target `ipc-daemon.exe'.
gcc -e _mainCRTStartup -mwindows  \
ipc-daemon.o -L. -lcygipc -L/usr/lib -static -lpopt -o ipc-daemon.exe
/usr/lib/gcc-lib/i686-pc-cygwin/3.2/../../../../i686-pc-cygwin/bin/ld:
cannot fi
nd -lpopt
collect2: ld returned 1 exit status
make: *** [ipc-daemon.exe] Error 1
=============================================================

このエラーの原因についてはまだ調べ中です。

素直に旧バージョンのcygwin+cygipcでインストールし直した方が良い
かと思うのですが、旧バージョンのcygwinがどうやったら入手できるの
かが分かりません。
ご存知の方がいらっしゃいましたら、ご助言頂けないでしょうか。

よろしくお願い致します。






pgsql-jp メーリングリストの案内