Namazu-win32-users-ja(旧)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
「-mno-cygwin」なnamazuコンパイルが効かないのですが・・・
- From: z1655@Naturescape <z1655@xxxxxxxxxxxxxxxxx>
- Date: Wed, 05 Mar 2003 01:17:06 +0900
- X-ml-name: namazu-win32-users-ja
- X-mail-count: 01751
常々参考にさせて頂いております。
namazuをカスタマイズする必要が生じ、はじめてnamazuのコンパイルにチャレンジしている者です。
Cygwinでの-mno-cygwin指定コンパイルでhello.exeができ正しく実行されるところまでは確認できているのですが、
namazuのwin32 nativeなバイナリを構築する途上で、ダウンロードした無修正ソースのコンパイルに手間取っております。
Cygwin等の環境・Cygwin版gccでのコンパイル結果・MinGW版gccでのコンパイル結果を付記しておきます。
不足情報がございましたらご指摘下さい。
ご教授の程よろしくお願い致します。
0.実現したいこと
■win32 nativeなバイナリの構築
■できない場合、cygwin関連dllを使うバイナリでもよいが、その実行環境の構築
1.Cygwin等の環境(on win98SE)
(1)CygwinのVersion
1.3.17-1(Cygwin SetupのSelect Packagesで表示されるcygwinのCurrentの内容)
(2)perlのVersion
$ perl -v
This is perl, v5.6.1 built for MSWin32-x86-multi-thread
(with 1 registered patch, see perl -V for more detail)
(3)namazuのVersion
C:\>namazu -v
namazu of Namazu 2.0.12
(4)gccのVersion
$ gcc -v
Reading specs from /usr/lib/gcc-lib/i686-pc-cygwin/3.2/specs
Configured with: /netrel/src/gcc-3.2-3/configure --enable-languages=c,c++,f77,ja
va --enable-libgcj --enable-threads=posix --with-system-zlib --enable-nls --with
out-included-gettext --enable-interpreter --disable-sjlj-exceptions --disable-ve
rsion-specific-runtime-libs --enable-shared --build=i686-pc-linux --host=i686-pc
-cygwin --target=i686-pc-cygwin --enable-haifa --prefix=/usr --exec-prefix=/usr
--sysconfdir=/etc --libdir=/usr/lib --includedir=/nonexistent/include --libexecd
ir=/usr/sbin
Thread model: posix
gcc version 3.2 20020927 (prerelease)
2.Cygwinでの-mno-cygwin指定コンパイル
$ gcc -c -mno-cygwin hello.c
$ gcc -o hello -mno-cygwin hello.o
【確認内容】
$ cygcheck c:\\cygwin\\home\\itachi\\hello\\hello.exe
c:\cygwin\home\itachi\hello\hello.exe
C:\WINDOWS\SYSTEM\msvcrt.dll
C:\WINDOWS\SYSTEM\KERNEL32.dll
3.Cygwin版gccでのコンパイル
$ CC="gcc -mno-cygwin" ./configure --prefix=/namazu
$ make
$ make install
【現象】
・namazu.exeはできるがnamazu.cgi.exeができない。
・-mno-cygwinが効かない。
【確認内容】
・使用dllの確認
$ cygcheck c:\\namazu\\bin\\namazu.exe
c:\namazu\bin\namazu.exe
c:\namazu\bin\cygwin1.dll
C:\WINDOWS\SYSTEM\KERNEL32.dll
c:\namazu\bin\cygintl-2.dll
c:\namazu\bin\cygiconv-2.dll
・namazu.exeの実行(dllをcygwin\bin\から当該ディレクトリにコピー)
C:\> namazu "Namazu を初めて使う"
README.TXT通りの結果が表示される
4.MinGW版gccでのコンパイル
$ CFLAGS=-O2 LIBS=-lintl ./configure --host=i386-mingw32 --prefix=/namazu
$ make
$ make install
【現象】
・namazu.exe、namazu.cgi.exeともにできる。
・namazu.cgi.exeで環境変数要求がでる。
【確認内容】
・使用dllの確認
$ cygcheck c:\\namazu\\bin\\namazu.exe
c:\namazu\bin\namazu.exe
c:\namazu\bin\cygwin1.dll
C:\WINDOWS\SYSTEM\KERNEL32.dll
c:\namazu\bin\cygintl-2.dll
c:\namazu\bin\cygiconv-2.dll
・namazu.exeの実行(dllをcygwin\bin\から当該ディレクトリにコピー)
C:\> namazu "Namazu を初めて使う"
README.TXT通りの結果が表示される
・namazu.cgi.exeの実行(dllをcygwin\bin\から当該ディレクトリにコピー)
C:\>c:\namazu\libexec\namazu.cgi.exe
namazu of Namazu 2.0.12
Copyright (C) 1997-1999 Satoru Takabayashi All rights reserved.
Copyright (C) 2000,2001 Namazu Project All rights reserved.
This is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty
of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
namazu: environment variable QUERY_STRING and SCRIPT_NAME are required
---