[pgsql-jp: 39040] Re: WIN32 でのlibpq 生成でエラー

Hiroshi Saito z-saito @ guitar.ocn.ne.jp
2007年 12月 29日 (土) 14:26:55 JST


さいとうです。

VC6はSP6でも入っていないようで、まえに、VC2003ようのSDKが配布されて
いたのでそれが使えたと記憶しています。しかし、いまは配布されていないよう
ですね。そこで、以下のようにして作ることが出来るので、お試しくださいませ。

1. Windows\system32からshfolder.dllを適当な作業位置に持ってきて

2. shfolder.defを作る。

-- shfolder.def  --
LIBRARY "shfolder.dll"
EXPORTS
 SHGetFolderPathA
 SHGetFolderPathW

3. shfolder.libを作る
lib /def:shfolder.def /MACHINE:X86 /out:shfolder.lib

これが使えるようになるかと思います。

From: "陶山 泰" <postgrml @ suyama.net>


> こんにちは。陶山@九州支部です。
>
> Windows でlibpq.dllを生成しようとして
> postgresql-8.1.9.tar.gz を解凍して
> \postgresql-8.1.9\src>nmake /f win32.mak
> を実行したら次のようなメッセージで停止しました。
>    「入力ファイル "shfolder.lib" を開けません」
>  #shfolder.lib というファイルは確かにパソコンの中に存在していません。
>
>  [pgsql-jp:7745]〜[pgsql-jp:7747] に似ていますが異なるようです。
>
> どのように解決したらよいのでしょう
> お教えいただけますでしょうか.
>
> 以下コンソール出力メッセージです。
> ただし、無関係と思われる部分は省略し、また半角カタカナを全角カタカナ
> に置換してあります。
> −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
>  ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
>      いろいろあって(警告やエラーはありません)
>  ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
>        cl.exe /nologo /W3 /GX /O2 /MD /I "..\..\include" /I. /D "FRONTEND" /D N
> DEBUG /D "WIN32" /D "_WINDOWS" /Fp".\Release\libpq.pch" /YX /Fo".\Release\\" /Fd
> ".\Release\\" /FD /c  /D "HAVE_VSNPRINTF" /D "HAVE_STRDUP" "fe-connect.c"
> fe-connect.c
> fe-connect.c(3208) : warning C4013: 関数 'SHGetFolderPath' は定義されていません
> 。int 型の値を返す外部関数と見なします。
>  ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
>      いっぱい出力が続き(警告やエラーはありません)
>  ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
>        rc.exe /l 0x409 /fo".\Release\libpq.res" libpq.rc
>        link.exe @C:\DOCUME~1\suyama\LOCALS~1\Temp\nml03380.
> LINK : fatal error LNK1181: 入力ファイル "shfolder.lib" を開けません
> NMAKE : fatal error U1077: 'link.exe' : リターン コード '0x49d'
> Stop.
> NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio\VC98\bin\N
> MAKE.EXE"' : リターン コード '0x2'
> Stop.
> −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
> バージョン等
> WindowsXP SP2
> Visual Studio 6.0 Enterprise Edition
>   (libpqのためだけに今日インストールしました)
> PostgreSQL ソース 8.1.9
> 




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