문제

2009-10-29 7 views
5

는 MinGW와 MSYS문제

FreeType에서 소스의 깨끗한 사본에

내 시도와 freetype2 컴파일 문제가 발생한 것 같습니다, 그리고 순수한는 MinGW와 MSYS는 제공 :

[email protected] ~/documents/code 
$ cd freetype-2.3.11 

[email protected] ~/documents/code/freetype-2.3.11 
$ ./configure 

FreeType build system -- automatic system detection 

The following settings are used: 

    platform     unix 
    compiler     cc 
    configuration directory  ./builds/unix 
    configuration rules   ./builds/unix/unix.mk 

If this does not correspond to your system or settings please remove the file 
`config.mk' from this directory then read the INSTALL file for help. 

Otherwise, simply type `c:/code/mingw/bin/make' again to build the library, 
or `c:/code/mingw/bin/make refdoc' to build the API reference (the latter needs 
python). 

Generating modules list in ./objs/ftmodule.h... 
* module: truetype (Windows/Mac font files with extension *.ttf or *.ttc) 
* module: type1  (Postscript font files with extension *.pfa or *.pfb) 
* module: cff  (OpenType fonts with extension *.otf) 
* module: cid  (Postscript CID-keyed fonts, no known extension) 
* module: pfr  (PFR/TrueDoc font files with extension *.pfr) 
* module: type42 (Type 42 font files with no known extension) 
* module: winfnt (Windows bitmap fonts with extension *.fnt or *.fon) 
* module: pcf  (pcf bitmap fonts) 
* module: bdf  (bdf bitmap fonts) 
* module: sfnt  (helper module for TrueType & OpenType formats) 
* module: autofit (automatic hinting module) 
* module: pshinter (Postscript hinter module) 
* module: raster (monochrome bitmap renderer) 
* module: smooth (anti-aliased bitmap renderer) 
* module: smooth (anti-aliased bitmap renderer for LCDs) 
* module: smooth (anti-aliased bitmap renderer for vertical LCDs) 
* module: psaux  (Postscript Type 1 & Type 2 helper module) 
* module: psnames (Postscript & Unicode Glyph name handling) 
done. 
cd builds/unix; ./configure 
checking build system type... i686-pc-mingw32 
checking host system type... i686-pc-mingw32 
checking for gcc... gcc 
checking for C compiler default output file name... a.exe 
checking whether the C compiler works... yes 
checking whether we are cross compiling... no 
checking for suffix of executables... .exe 
checking for suffix of object files... o 
checking whether we are using the GNU C compiler... yes 
checking whether gcc accepts -g... yes 
checking for gcc option to accept ISO C89... none needed 
checking how to run the C preprocessor... gcc -E 
checking for rm... rm -f 
checking for rmdir... rmdir 
checking for a BSD-compatible install... /bin/install -c 
checking for grep that handles long lines and -e... /c/code/mingw/bin/grep 
checking for egrep... /c/code/mingw/bin/grep -E 
checking for ANSI C header files... yes 
checking for sys/types.h... yes 
checking for sys/stat.h... yes 
checking for stdlib.h... yes 
checking for string.h... yes 
checking for memory.h... yes 
checking for strings.h... yes 
checking for inttypes.h... yes 
checking for stdint.h... yes 
checking for unistd.h... yes 
checking fcntl.h usability... yes 
checking fcntl.h presence... yes 
checking for fcntl.h... yes 
checking for unistd.h... (cached) yes 
checking for an ANSI C-conforming const... yes 
checking size of int... 4 
checking size of long... 4 
checking cpp computation of bit length in ftconfig.in works... yes 
checking for stdlib.h... (cached) yes 
checking for unistd.h... (cached) yes 
checking for getpagesize... yes 
checking for working mmap... no 
checking for memcpy... yes 
checking for memmove... yes 
checking for gzsetparams in -lz... yes 
checking zlib.h usability... yes 
checking zlib.h presence... yes 
checking for zlib.h... yes 
checking whether CFLAGS includes -isysroot option... no 
checking for a sed that does not truncate output... /c/code/mingw/bin/sed 
checking for fgrep... /c/code/mingw/bin/grep -F 
checking for ld used by gcc... /c/code/mingw/bin/ld 
checking if the linker (/c/code/mingw/bin/ld) is GNU ld... yes 
checking for BSD- or MS-compatible name lister (nm)... /c/code/mingw/bin/nm 
checking the name lister (/c/code/mingw/bin/nm) interface... BSD nm 
checking whether ln -s works... yes 
checking the maximum length of command line arguments... 8192 
checking whether the shell understands some XSI constructs... yes 
checking whether the shell understands "+="... yes 
checking for /c/code/mingw/bin/ld option to reload object files... -r 
checking for objdump... objdump 
checking how to recognize dependent libraries... file_magic ^x86 archive import| 
^x86 DLL 
checking for ar... ar 
checking for strip... strip 
checking for ranlib... ranlib 
checking command to parse /c/code/mingw/bin/nm output from gcc object... ok 
checking for dlfcn.h... no 
checking for as... as 
checking for dlltool... dlltool 
checking for objdump... (cached) objdump 
checking for objdir... .libs 
checking if gcc supports -fno-rtti -fno-exceptions... c:\code\mingw\bin\sed.exe: 
-e expression #2, char 1: unknown command: `C' 
no 
checking for gcc option to produce PIC... -DDLL_EXPORT -DPIC 
checking if gcc PIC flag -DDLL_EXPORT -DPIC works... c:\code\mingw\bin\sed.exe: 
-e expression #2, char 1: unknown command: `C' 
yes 
checking if gcc static flag -static works... yes 
checking if gcc supports -c -o file.o... c:\code\mingw\bin\sed.exe: -e expressio 
n #2, char 1: unknown command: `C' 
yes 
checking if gcc supports -c -o file.o... (cached) yes 
checking whether the gcc linker (/c/code/mingw/bin/ld) supports shared libraries 
... yes 
checking whether -lc should be explicitly linked in... yes 
checking dynamic linker characteristics... Win32 ld.exe 
checking how to hardcode library paths into programs... immediate 
checking whether stripping libraries is possible... yes 
checking if libtool supports shared libraries... yes 
checking whether to build shared libraries... yes 
checking whether to build static libraries... yes 
c:\code\mingw\bin\sed.exe: -e expression #1, char 1: unknown command: `C' 
configure: creating ./config.status 
c:\code\mingw\bin\sed.exe: -e expression #1, char 1: unknown command: `C' 
config.status: creating unix-cc.mk 
c:\code\mingw\bin\sed.exe: -e expression #1, char 1: unknown command: `C' 
config.status: creating unix-def.mk 
config.status: creating freetype-config 
c:\code\mingw\bin\sed.exe: -e expression #1, char 1: unknown command: `C' 
config.status: creating freetype2.pc 
c:\code\mingw\bin\sed.exe: -e expression #1, char 1: unknown command: `C' 
config.status: creating ftconfig.h 
config.status: executing libtool commands 
c:\code\mingw\bin\sed.exe: -e expression #1, char 1: unknown command: `C' 
c:\code\mingw\bin\sed.exe: -e expression #1, char 1: unknown command: `C' 
mv: cannot stat `libtoolT': No such file or directory 
cp: cannot stat `libtoolT': No such file or directory 
chmod: cannot access `libtool': No such file or directory 
c:\code\mingw\bin\sed.exe: -e expression #1, char 1: unknown command: `C' 
make: Nothing to be done for `unix'. 

[email protected] ~/documents/code/freetype-2.3.11 
$ make 
./builds/unix/libtool --mode=compile gcc -pedantic -ansi -Ic:/Users/Andrew/docu 
ments/code/freetype-2.3.11/objs -I./builds/unix -Ic:/Users/Andrew/documents/code 
/freetype-2.3.11/include -c -Wall -g -O2 -DFT_CONFIG_OPTION_SYSTEM_ZLIB -DFT_CON 
FIG_CONFIG_H="<ftconfig.h>" -DFT2_BUILD_LIBRARY -DFT_CONFIG_MODULES_H="<ftmodule 
.h>" -o c:/Users/Andrew/documents/code/freetype-2.3.11/objs/ftsystem.lo c:/User 
s/Andrew/documents/code/freetype-2.3.11/src/base/ftsystem.c 
/bin/sh: ./builds/unix/libtool: No such file or directory 
make: *** [c:/Users/Andrew/documents/code/freetype-2.3.11/objs/ftsystem.lo] Erro 
r 127 

[email protected] ~/documents/code/freetype-2.3.11 
$ 

두 가지 문제는 'C'를 인식하지 못하는 것처럼 보이고 libtool이 발견되지 않습니다.

답변

5

해결책은 C : \ mingw \ bin \ sed.exe를 삭제하여 MSYS sed가 대신 사용되도록하는 것입니다. 당신의 msys 환경에서

1

path/to/msys/installation/bin/bin에 장착되고 MinGW은 일반적으로 /mingw에 장착된다. /bin이 모든 후 포함되는대로

문제는 /bin에서하지 중 하나 /mingw/bin에서 오는 sed.exe로 인해 (또는 GnuWin32bin 또는 Gitbin 등 당신이 그 설치 한 경우 ...)이며, msys 환경 경로에 있습니다.

이 솔루션은 (위에서 언급 한 바와 같이 아마도 나머지) 그래서 /binmsys 환경의 PATH/mingw/bin 앞에 오는 인수 MSYS으로 msys 환경을 시작하는 것입니다, 따라서 sed.exe/bin에서 사용할 수. 윈도우 경로가 /path/to/msys/installation/이 포함되어 가정 명령 프롬프트에서

msys을 시작

$> msys.bat MSYS 

대신

$> msys.bat 

를 사용합니다.

모든 것이 순서대로되어 있는지 확인하려면 을 확인하려면 아래 echo $PATH 아래에서 msys 아래를 검사하십시오.