Well, after some break I'm back to this topic. Following the information given by
rakslice I have installed again MinGW32 with gcc 5.3.0-3 and downloaded that fork from GitHub.
Now I'm trying to perform the same steps from
the manual. I have success w/ building SDL 1.2.15 (autogen, configure, make and make install went ok). Currently I don't need GUI so I use steps from "Building SheepShaver in Windows" paragraph. I have success w/ make links and autogen. Then I open configure file in /src/Windows folder. As I recall from my earlier takes with building of original sources, I should remove this piece of code:
Code: Select all
if [ "x$WANT_GTK" = "xyes" ]; then
AM_PATH_GTK_2_0(1.3.15, ,
AC_MSG_WARN([Could not find GTK+ 2.0, disabling user interface.])
WANT_GTK=no
)
fi
It's on the lines from 4001 to 4006 (not on 3991-3998). So I remove and save.
If I don't do that I'm getting the error on the next step:
Code: Select all
./configure: line 4002: syntax error near unexpected token `1.3.15,'
./configure: line 4002: ` AM_PATH_GTK_2_0(1.3.15, ,'
Now I calling this command:
Code: Select all
CC='gcc-3 -mwin32' CXX='g++-3 -mwin32' ./configure --with-gtk=no
I receive the compiler error:
Admin@Cybertek /c/macemu-windows_build_script/SheepShaver/src/Windows
$ CC='gcc-3 -mwin32' CXX='g++-3 -mwin32' ./configure --with-gtk=no
checking build system type... i686-pc-mingw32
checking host system type... i686-pc-mingw32
checking target system type... i686-pc-mingw32
checking for gcc... gcc-3 -mwin32
checking whether the C compiler works... no
configure: error: in `/c/macemu-windows_build_script/SheepShaver/src/Windows':
configure: error: C compiler cannot create executables
See `config.log' for more details
Ok, we are on gcc 5.3.0, not on 3, so I modify the call:
Code: Select all
CC='gcc -mwin32' CXX='g++ -mwin32' ./configure --with-gtk=no
Wow, it successfully reaches the end with this message:
SheepShaver configuration summary:
Enable JIT compiler .............. : yes
GTK user interface ............... : no
Enable VOSF ...................... : yes
Configuration done. Now type "make".
Now goes the most exciting part.
I call make:
Admin@Cybertek /c/macemu-windows_build_script/SheepShaver/src/Windows
$ make
g++ -mwin32 -I../kpx_cpu/include -I../kpx_cpu/src -DUSE_JIT -I../include -I. -I../slirp -DHAVE_CONFIG_H -O2 -I/usr/local/include/SDL -D_GNU_SOURCE=1 -Dmain=SDL_main -c main_windows.cpp -o obj/main_windows.o
In file included from main_windows.cpp:46:0:
util_windows.h:66:5: error: 'constexpr' does not name a type
constexpr null_delete() noexcept = default;
^
util_windows.h:66:5: note: C++11 'constexpr' only available with -std=c++11 or -std=gnu++11
util_windows.h:67:59: error: expected initializer before 'noexcept'
template <class U> null_delete(const null_delete<U>&) noexcept { }
^
util_windows.h:68:26: error: expected ';' at end of member declaration
void operator ()(T*) const noexcept { }
^
... etc. - many similar errors as the upper one
make: *** [obj/main_windows.o] Error 1
I feel like I need to add
-std=c++11 option to compiler params and re-configure. So, I execute
Code: Select all
CC='gcc -mwin32 -std=c++11' CXX='g++ -mwin32 -std=c++11' ./configure --with-gtk=no
The config succeeds. Then goes the make again
Admin@Cybertek /c/macemu-windows_build_script/SheepShaver/src/Windows
$ make
g++ -mwin32 -std=c++11 -I../kpx_cpu/include -I../kpx_cpu/src -DUSE_JIT -I../include -I. -I../slirp -DHAVE_CONFIG_H -O2 -I/usr/local/include/SDL -D_GNU_SOURCE=1 -Dmain=SDL_main -c main_windows.cpp -o obj/main_windows.o
In file included from main_windows.cpp:50:0:
../include/debug.h: In function 'void vwinbug(const char*, va_list)':
../include/debug.h:41:18: error: '_strtime' was not declared in this scope
_strtime( hours );
^
../include/debug.h:42:17: error: '_strdate' was not declared in this scope
_strdate( date );
^
../include/debug.h: In function 'void vwwinbug(const wchar_t*, va_list)':
../include/debug.h:56:19: error: '_wstrtime' was not declared in this scope
_wstrtime( hours );
^
../include/debug.h:57:18: error: '_wstrdate' was not declared in this scope
_wstrdate( date );
^
main_windows.cpp: In function 'int SDL_main(int, char**)':
main_windows.cpp:215:37: error: 'putenv' was not declared in this scope
putenv("SDL_VIDEODRIVER=windib");
^
make: *** [obj/main_windows.o] Error 1
WTF!?
What's wrong with this thing?..
rakslice
Could you please navigate me through the step-by-step guidance for the whole compilation of your code? I feel like I'm stuck with those errors. Never thought that it would be so complicated.