看板 GameDesign 關於我們 聯絡資訊
2020-01-05 10:30=>15:30 花了5個小時造出了64bit執行檔, 至少可以看到第一個畫面,然後: gdb: unknown target exception 0xe24c4a03 at 0x7ffd5e21a388 Program received signal ?, Unknown signal. (gdb) bt #0 0x00007ffd5e21a388 in RaiseException () from C:\WINDOWS\System32\KernelBase.dll #1 0x00000000041803b8 in ?? () #2 0x0000000004180378 in ?? () #3 0x00000000005be350 in lj_lib_load () https://github.com/dinodeck/dinodeck O:\rpg\dinodeck\src>make PLATFORM_DD=WINDOWS 自建的 OpenAL 壞了,用系統的: C:\msys64\mingw64\bin>copy libopenal-1.dll o:\rpg\ #0 0x00000000000960ee in ?? () #1 0x0000000000fd21cf in alc_initconfig () at O:\rpg\dinodeck\lib\openal-soft\Alc\ALc.c:883 #2 0x0000000000fe00e2 in alcall_once (once=once@entry=0x1041100 <alc_config_once>, callback=callback@entry=0xfd21b0 <alc_initconfig>) at O:\rpg\dinodeck\lib\openal-soft\common\threads.c:479 #3 0x0000000000fd3c02 in alcOpenDevice (deviceName=0x0) at O:\rpg\dinodeck\lib\openal-soft\Alc\ALc.c:3312 #4 0x00000000004456d6 in DDAudio::DDAudio() () #5 0x0000000001590000 in ?? () #6 0x0000000000000001 in ?? () #7 0x000000000057edc6 in operator new(unsigned long long) () #8 0x0000000000000068 in ?? () #9 0x0000000001596218 in ?? () #10 0x0000000001596620 in ?? () #11 0x0000000001596e10 in ?? () #12 0x000000000097fc60 in ?? () #13 0x000000000044ab7c in Dinodeck::Dinodeck(std::string const&) () LDFLAGS+=../lib/openal-soft/build/libOpenAL32.a LDFLAGS+=../lib/openal-soft/build/libaltonegen.dll.a LDFLAGS+=../lib/openal-soft/build/libcommon.a LDFLAGS+=../lib/openal-soft/build/libopenal-info.dll.a LDFLAGS+=../lib/openal-soft/build/libtest-common.a LIB 要在執行檔的目錄: O:\rpg\dinodeck\lib\freetype\objs\.libs 01/05/2020 08:15 AM 3,022,633 libfreetype-6.dll O:\rpg\dinodeck\lib\ftgl\src>copy ftgl.dll o:\rpg\ O:\rpg\dinodeck\lib\openal-soft\build>copy altonegen.exe o:\rpg\ 系統的 SDL 不能用,其他函式庫也有相同的情形: c:/mingw/bin/../lib/gcc/x86_64-w64-mingw32/4.8.2/../../../../ x86_64-w64-mingw32/lib/../lib/libmingw32.a(lib64_libmingw32_a-crt0_c.o): crt0_c.c:(.text.startup+0x25): undefined reference to `WinMain' ../lib/sdl-1.2.15/build/.libs/libSDL.a(SDL_video.o): In function `SDL_SetVideoMode': O:\rpg\dinodeck\lib\sdl-1.2.15/./src/video/SDL_video.c:594: undefined reference to `sysevents_mouse_pressed' libluajit-5.1.a(ljamalg.o):(.text+0x479d): undefined reference to `__imp___acrt_iob_func' libluajit-5.1.a(ljamalg.o):(.text+0x33382): undefined reference to `__imp___p__fmode' libluajit-5.1.a(ljamalg.o):(.text+0x3e596): undefined reference to `__imp___acrt_iob_func' libluajit-5.1.a(ljamalg.o):(.text+0x3eb78): undefined reference to `__imp__difftime64' 用作者 github 的 SDL, configure.ac/configure 要改才支持 mingw64 https://github.com/dinodeck/sdl-1.2.15.git O:\rpg\dinodeck\lib\sdl-1.2.15> sh configure --enable-video --enable-directx --enable-events -ldxguid -lwinmm undefined reference to `IID_IDirectInputDevice2A' undefined reference to `GUID_SysKeyboard' x86_64-pc-msys64 checking whether we are cross compiling... no $have_win32_gcc configure: error: *** Unsupported host: Please add to configure.in O:\rpg\dinodeck\lib\sdl-1.2.15> findstr mingw build-scripts\config.sub mingw32) os=-mingw32 mingw32ce) os=-mingw32ce os=-mingw32 | -mingw32* | -linux-gnu* | -linux-newlib* | checking build system type... Invalid configuration `x86_64-pc-msys': system `msys' not recognized configure: error: /bin/sh ./build-scripts/config.sub x86_64-pc-msys failed https://discourse.libsdl.org/t/sdl-gcc-and-windows/8042/2 cmake -G "MinGW Makefiles" -D CMAKE_MAKE_PROGRAM="C:\MinGW\bin\mingw32-make.exe" .. O:\rpg\dinodeck\lib\openal-soft\build> ..\..\physfs\cmake-2.8.3-win32-x86\cmake-2.8.3-win32-x86\bin\cmake -G "MinGW Makefiles" -D CMAKE_MAKE_PROGRAM="C:\MinGW\bin\mingw32-make.exe" .. O:\rpg\dinodeck\lib\ftgl\src\lib>copy libftgl.a ..\libftgl_static.a O:\rpg\dinodeck\lib\ftgl\src\lib>copy ftgl.dll .. findstr GLuint C:\Mingw\x86_64-w64-mingw32\include\GL\gl.h typedef unsigned int GLuint; pacman -S mingw-w64-x86_64-freeglut cmake 用 physfs 目錄的 .zip 解開的執行檔 O:\rpg\dinodeck\lib\physfs\build2> ..\cmake-2.8.3-win32-x86\cmake-2.8.3-win32-x86\bin\cmake -G "MinGW Makefiles" -D CMAKE_MAKE_PROGRAM="C:\MinGW\bin\mingw32-make.exe" ..\..\PhysFS luajit 要用 set MSYSTEM=MINGW64 https://github.com/openai/retro/issues/30 set MSYSTEM=MINGW64 O:\rpg\dinodeck\lib\LuaJIT\src>make libluajit.a AR libluajit.a lj_vm.s:6: Error: unknown pseudo-op: `.hidden' lj_vm.s:7: Warning: .type pseudo-op used outside of .def/.endef: ignored. https://hustlei.github.io/2018/11/msys2-for-win.html -- https://youtu.be/MMWBPklrRB4 小雞逼逼(崩潰版)
https://youtu.be/KlZL1hqGxDg 《江南夜色》
https://youtu.be/WIW16vMdrZU 《告白氣球》
-- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.161.218.59 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/GameDesign/M.1578847765.A.DDB.html