Fehler bei der Compilierung von SDL2 unter cygwin mit mingw

Einstiegsfragen, Mathematik, Physik, künstliche Intelligenz, Engine Design
Antworten
Blackster
Beiträge: 3
Registriert: 11.01.2014, 15:59

Fehler bei der Compilierung von SDL2 unter cygwin mit mingw

Beitrag von Blackster »

Hallo,

Ich habe im Moment folgendes Problem : Ich versuche derzeit SDL2 aus den Sourcen zu compilieren. Ich verwende dafür cygwin im Verbund mit mingw.
Ich verwende folgendes Sourcepaket :

http://www.libsdl.org/release/SDL2-2.0.1.zip

./configure funktioniert unter cygwin noch :

Code: Alles auswählen

[i]checking build system type... i686-pc-cygwin
checking host system type... i686-pc-cygwin
checking how to print strings... printf
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.exe
checking for suffix of executables... .exe
checking whether we are cross compiling... no
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 for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking for ld used by gcc... c:/mingw/mingw32/bin/ld.exe
checking if the linker (c:/mingw/mingw32/bin/ld.exe) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /cygdrive/c/MinGW/bin/nm -B
checking the name lister (/cygdrive/c/MinGW/bin/nm -B) 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 how to convert i686-pc-cygwin file names to i686-pc-cygwin format... func_convert_file_noop
checking how to convert i686-pc-cygwin file names to toolchain format... func_convert_file_noop
checking for c:/mingw/mingw32/bin/ld.exe option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... dlltool
checking how to associate runtime and link libraries... func_cygming_dll_for_implib
checking for ar... ar
checking for archiver @FILE support... @
checking for strip... strip
checking for ranlib... ranlib
checking for gawk... gawk
checking command to parse /cygdrive/c/MinGW/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for mt... no
checking if : is a manifest tool... no
checking how to run the C preprocessor... gcc -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 for dlfcn.h... no
checking for as... as
checking for dlltool... (cached) dlltool
checking for objdump... (cached) objdump
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -DDLL_EXPORT -DPIC
checking if gcc PIC flag -DDLL_EXPORT -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (c:/mingw/mingw32/bin/ld.exe) supports shared libraries... yes
checking whether -lc should be explicitly linked in... yes
checking dynamic linker characteristics... cygwin warning:
  MS-DOS style path detected: c:/mingw/bin/../lib/gcc//.\x0D
  Preferred POSIX equivalent is: /cygdrive/c/mingw/lib/gcc/.\x0D
  CYGWIN environment variable option "nodosfilewarning" turns off this warning.
  Consult the user's guide for more details about POSIX paths:
    http://cygwin.com/cygwin-ug-net/using.html#using-pathnames
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
checking for gcc... (cached) gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ISO C89... (cached) none needed
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking how to run the C++ preprocessor... g++ -E
checking for ld used by g++... c:/mingw/mingw32/bin/ld.exe
checking if the linker (c:/mingw/mingw32/bin/ld.exe) is GNU ld... yes
checking whether the g++ linker (c:/mingw/mingw32/bin/ld.exe) supports shared libraries... yes
checking for g++ option to produce PIC... -DDLL_EXPORT -DPIC
checking if g++ PIC flag -DDLL_EXPORT -DPIC works... yes
checking if g++ static flag -static works... yes
checking if g++ supports -c -o file.o... yes
checking if g++ supports -c -o file.o... (cached) yes
checking whether the g++ linker (c:/mingw/mingw32/bin/ld.exe) supports shared libraries... yes
checking dynamic linker characteristics... Win32 ld.exe
checking how to hardcode library paths into programs... immediate
checking for a BSD-compatible install... /usr/bin/install -c
checking whether make sets $(MAKE)... yes
checking for windres... windres
checking for GCC -mno-cygwin option... no
checking for an ANSI C-conforming const... yes
checking for inline... inline
checking for working volatile... yes
checking for GCC -MMD -MT option... yes
checking for ANSI C header files... (cached) yes
checking for sys/types.h... (cached) yes
checking stdio.h usability... yes
checking stdio.h presence... yes
checking for stdio.h... yes
checking for stdlib.h... (cached) yes
checking stddef.h usability... yes
checking stddef.h presence... yes
checking for stddef.h... yes
checking stdarg.h usability... yes
checking stdarg.h presence... yes
checking for stdarg.h... yes
checking malloc.h usability... yes
checking malloc.h presence... yes
checking for malloc.h... yes
checking for memory.h... (cached) yes
checking for string.h... (cached) yes
checking for strings.h... (cached) yes
checking for inttypes.h... (cached) yes
checking for stdint.h... (cached) yes
checking ctype.h usability... yes
checking ctype.h presence... yes
checking for ctype.h... yes
checking math.h usability... yes
checking math.h presence... yes
checking for math.h... yes
checking iconv.h usability... yes
checking iconv.h presence... yes
checking for iconv.h... yes
checking signal.h usability... yes
checking signal.h presence... yes
checking for signal.h... yes
checking for size_t... yes
checking for M_PI in math.h... yes
checking for working memcmp... yes
checking for working strtod... yes
checking for mprotect... yes
checking for malloc... yes
checking for calloc... yes
checking for realloc... yes
checking for free... yes
checking for getenv... yes
checking for setenv... no
checking for putenv... yes
checking for unsetenv... no
checking for qsort... yes
checking for abs... yes
checking for bcopy... no
checking for memset... yes
checking for memcpy... yes
checking for memmove... yes
checking for strlen... yes
checking for strlcpy... no
checking for strlcat... no
checking for strdup... yes
checking for _strrev... yes
checking for _strupr... yes
checking for _strlwr... yes
checking for strchr... yes
checking for strrchr... yes
checking for strstr... yes
checking for itoa... yes
checking for _ltoa... yes
checking for _uitoa... no
checking for _ultoa... yes
checking for strtol... yes
checking for strtoul... yes
checking for _i64toa... yes
checking for _ui64toa... yes
checking for strtoll... yes
checking for strtoull... yes
checking for atoi... yes
checking for atof... yes
checking for strcmp... yes
checking for strncmp... yes
checking for _stricmp... yes
checking for strcasecmp... no
checking for _strnicmp... yes
checking for strncasecmp... no
checking for sscanf... yes
checking for snprintf... yes
checking for vsnprintf... yes
checking for fseeko... no
checking for fseeko64... yes
checking for sigaction... no
checking for setjmp... no
checking for nanosleep... no
checking for sysconf... no
checking for sysctlbyname... no
checking for pow in -lm... yes
checking for atan... yes
checking for atan2... yes
checking for ceil... yes
checking for copysign... yes
checking for cos... yes
checking for cosf... yes
checking for fabs... yes
checking for floor... yes
checking for log... yes
checking for pow... yes
checking for scalbn... yes
checking for sin... yes
checking for sinf... yes
checking for sqrt... yes
checking for iconv_open in -liconv... no
checking for iconv... no
checking for struct sigaction.sa_sigaction... no
checking for GCC builtin atomic operations... yes
checking for GCC -mmmx option... yes
checking for GCC -m3dnow option... yes
checking for GCC -msse option... yes
checking for Altivec with GCC altivec.h and -maltivec option... no
checking for Altivec with GCC -maltivec option... no
checking for Altivec with GCC altivec.h and -faltivec option... no
checking for Altivec with GCC -faltivec option... no
checking Windows compiler... yes
checking Windows CE... no
checking for GCC -mpreferred-stack-boundary option... yes
checking d3d9.h usability... yes
checking d3d9.h presence... yes
checking for d3d9.h... yes
checking ddraw.h usability... no
checking ddraw.h presence... no
checking for ddraw.h... no
checking dsound.h usability... no
checking dsound.h presence... no
checking for dsound.h... no
checking dinput.h usability... no
checking dinput.h presence... no
checking for dinput.h... no
checking xaudio2.h usability... no
checking xaudio2.h presence... no
checking for xaudio2.h... no
checking for main in -lmingw32... yes
checking for GCC -Wall option... yes
checking for necessary GCC -Wno-multichar option... no
configure: creating ./config.status
config.status: creating Makefile
config.status: creating sdl2-config
config.status: creating SDL2.spec
config.status: creating sdl2.pc
config.status: creating include/SDL_config.h
config.status: include/SDL_config.h is unchanged
config.status: executing libtool commands[/i]
dann folgt natürlich "make" - und genau dort knallt es dann :

Code: Alles auswählen

[i]$ make
/bin/sh build-scripts/updaterev.sh
/bin/sh ./libtool --mode=compile gcc -g -O3 -DUSING_GENERATED_CONFIG_H -Iinclude -I/cygdrive/c/Users/Blackster/Desktop/SDL2/SDL2-2.0.1/SDL2-2.0.1/include  -I/usr/include/mingw -mmmx -m3dnow -msse -mpreferred-stack-boundary=2 -Wall -MMD -MT build/SDL.lo -c /cygdrive/c/Users/Blackster/Desktop/SDL2/SDL2-2.0.1/SDL2-2.0.1/src/SDL.c -o build/SDL.lo
libtool: compile:  gcc -g -O3 -DUSING_GENERATED_CONFIG_H -Iinclude -I/cygdrive/c/Users/Blackster/Desktop/SDL2/SDL2-2.0.1/SDL2-2.0.1/include -I/usr/include/mingw -mmmx -m3dnow -msse -mpreferred-stack-boundary=2 -Wall -MMD -MT build/SDL.lo -c /cygdrive/c/Users/Blackster/Desktop/SDL2/SDL2-2.0.1/SDL2-2.0.1/src/SDL.c  -DDLL_EXPORT -DPIC -o build/.libs/SDL.o
gcc.exe: error: /cygdrive/c/Users/Blackster/Desktop/SDL2/SDL2-2.0.1/SDL2-2.0.1/src/SDL.c: No such file or directory
gcc.exe: fatal error: no input files
compilation terminated.
Makefile:228: recipe for target 'build/SDL.lo' failed
make: *** [build/SDL.lo] Error 1[/i]
/cygdrive/c/Users/Blackster/Desktop/SDL2/SDL2-2.0.1/SDL2-2.0.1/src/SDL.c existiert definitiv :
cat /cygdrive/c/Users/Blackster/Desktop/SDL2/SDL2-2.0.1/SDL2-2.0.1/src/SDL.c listet die Datei.

Ich vermute der gcc von mingw kommt mit den /cygrive/-Pfaden nicht zurecht?!
Kann man dem das vielleicht irgendwie beibringen?

Ist jemandem dieser Bug bekannt?
Muss ich eventuell MinGW's msys statt cygwin verwenden?

Die Path-Variable unter Windows lautet : PATH=C:\MinGW\msys\1.0\bin;C:\MinGW\bin;C:\cygwin\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\
Antworten