2011-11-03 50 views
5

Tôi đang cố gắng cài đặt gói Haskell SDL-0.6.2 trên Windows 7 với ghc 6.12.1 (Nền tảng Haskell). Tôi kết thúc nhận được đầu ra sau đây từ cabal:Haskell: Không thể cài đặt SDL-0.6.2 trên windows

C:\Users\Martin\dev\Rasenschach_0>cabal install SDL 
Resolving dependencies... 
[1 of 1] Compiling Main    (C:\Users\FAMILI~1\AppData\Local\Temp\SDL-0 
.6.25076\SDL-0.6.2\Setup.lhs, C:\Users\FAMILI~1\AppData\Local\Temp\SDL-0.6.25076 
\SDL-0.6.2\dist\setup\Main.o) 

C:\Users\FAMILI~1\AppData\Local\Temp\SDL-0.6.25076\SDL-0.6.2\Setup.lhs:2:2: 
    Warning: In the use of `defaultUserHooks' 
      (imported from Distribution.Simple): 
      Deprecated: "Use simpleUserHooks or autoconfUserHooks, unless you n 
eed Cabal-1.2 
      compatibility in which case you must stick with defaultUserHooks" 
Linking C:\Users\FAMILI~1\AppData\Local\Temp\SDL-0.6.25076\SDL-0.6.2\dist\setup\ 
setup.exe ... 
Warning: defaultUserHooks in Setup script is deprecated. 
Configuring SDL-0.6.2... 
configure: WARNING: unrecognized options: --with-hc 
checking for sdl-config... /usr/bin/sdl-config 
configure: creating ./config.status 
config.status: creating config.mk 
config.status: creating SDL.buildinfo 
config.status: creating includes/HsSDLConfig.h 
configure: WARNING: unrecognized options: --with-hc 
Preprocessing library SDL-0.6.2... 
dist\build\Graphics\UI\SDL\General_hsc_make.o:General_hsc_make.c:(.text+0x0): mu 
ltiple definition of `main' 
/MinGW/lib/libmingw32.a(main.o):main.c:(.text+0x0): first defined here 
/MinGW/lib/libSDLmain.a(SDL_win32_main.o): In function `console_main': 
/Users/hercules/trunk/SDL-1.2/./src/main/win32/SDL_win32_main.c:315: undefined r 
eference to `SDL_main' 
collect2: ld returned 1 exit status 
linking dist\build\Graphics\UI\SDL\General_hsc_make.o failed 
command was: C:\Program Files\Haskell Platform\2010.1.0.0\mingw\bin\gcc.exe -lSD 
L -L/MinGW/lib -lmingw32 -lSDLmain -lSDL -mwindows -LC:\Program Files\Haskell Pl 
atform\2010.1.0.0\base-4.2.0.0 -lwsock32 -luser32 -lshell32 -LC:\Program Files\H 
askell Platform\2010.1.0.0\integer-gmp-0.2.0.0 -LC:\Program Files\Haskell Platfo 
rm\2010.1.0.0\ghc-prim-0.2.0.0 -LC:\Program Files\Haskell Platform\2010.1.0.0 -L 
C:\Program Files\Haskell Platform\2010.1.0.0/gcc-lib -lm -lwsock32 -LC:\Program 
Files\Haskell Platform\2010.1.0.0 dist\build\Graphics\UI\SDL\General_hsc_make.o 
-o dist\build\Graphics\UI\SDL\General_hsc_make.exe 
cabal: Error: some packages failed to install: 
SDL-0.6.2 failed during the building phase. The exception was: 
ExitFailure 1 

libSDL dường như được cài đặt đúng trên máy tính của tôi, ít nhất tôi có thể nhận được một chương trình mẫu C chạy sử dụng MinGW và gcc.

Có ai gặp phải vấn đề tương tự không? Tôi tìm thấy một liên kết here nhưng giải pháp được đề xuất (thay đổi nhỏ đối với hsc2hs) dường như không áp dụng cho tôi. Bất kỳ trợ giúp sẽ được đánh giá cao!

EDIT: Vì vậy, tôi cuối cùng đã có nó để chạy, mặc dù tôi không biết chính xác như thế nào ... Hình tôi phải chạy "cabal install" bên trong một bash và fiddle xung quanh với sdl-config (loại bỏ "-lmingw32 -lSDLmain -lSDL.dll -mwindows "từ thẻ" --lib "). Nhưng tôi nghi ngờ rằng tôi có thể sao chép kết quả của tôi khi cố gắng một lần thứ hai ...

+0

Có hướng dẫn trong file Win32 trong phân phối nguồn của gói SDL đó đã giúp tôi biên dịch và chạy nó trên Win7/mingw. –

+0

@fs: Cảm ơn, tôi không thấy điều đó! Tôi sẽ thử! – martingw

+0

@fs: Tôi đã thử (thay đổi dòng thư viện bổ sung trong Cabal-Files), nhưng tôi vẫn gặp lỗi tương tự. – martingw

Trả lời

3

Các hướng dẫn ở đây là mục đích để làm việc tốt: http://www.animal-machine.com/blog/2010/04/a-haskell-adventure-in-windows/

+0

Cảm ơn, tôi đã thử gần đây và thực sự quản lý để cài đặt SDL lõi và sau đó thất bại với ttf và hình ảnh ... Tôi sẽ thử các hướng dẫn trên liên kết của bạn, xem nếu điều này hoạt động! – martingw

+0

có vẻ như liên kết đã chết, đây là phiên bản đã lưu trữ: http://archive.today/ZFbyA – sukhmel

Các vấn đề liên quan