|
Joined: Jan 2007
Posts: 213
Senior Member
|
Senior Member
Joined: Jan 2007
Posts: 213 |
With the release of GCC 7.2 for OSX PPC things are going a bit better than before, using this Makefile configuration:
NOWERROR = 1
OVERRIDE_CC = /opt/local/bin/gcc-mp-7
OVERRIDE_CXX = /opt/local/bin/g++-mp-7
PYTHON_EXECUTABLE = python2
The compile of MAME version 0.189 goes to a very good point but stucks on the following three parts:
Compiling 3rdparty/bx/src/crtnone.cpp...
../../../../../3rdparty/bx/src/crtnone.cpp: In function 'void* strcpy(char*, const char*)':
../../../../../3rdparty/bx/src/crtnone.cpp:50:18: warning: declaration of 'void* strcpy(char*, const char*)' conflicts with built-in declaration 'char* strcpy(char*, const char*)' [-Wbuiltin-declaration-mismatch]
extern "C" void* strcpy(char* _dst, const char* _src)
^~~~~~
../../../../../3rdparty/bx/src/crtnone.cpp: In function 'void* strncpy(char*, const char*, size_t)':
../../../../../3rdparty/bx/src/crtnone.cpp:56:18: warning: declaration of 'void* strncpy(char*, const char*, size_t)' conflicts with built-in declaration 'char* strncpy(char*, const char*, long unsigned int)' [-Wbuiltin-declaration-mismatch]
extern "C" void* strncpy(char* _dst, const char* _src, size_t _num)
^~~~~~~
../../../../../3rdparty/bx/src/crtnone.cpp: In function 'const char* strchr(const char*, int)':
../../../../../3rdparty/bx/src/crtnone.cpp:68:24: warning: declaration of 'const char* strchr(const char*, int)' conflicts with built-in declaration 'char* strchr(const char*, int)' [-Wbuiltin-declaration-mismatch]
extern "C" const char* strchr(const char* _str, int _ch)
^~~~~~
../../../../../3rdparty/bx/src/crtnone.cpp: In function 'const char* strstr(const char*, const char*)':
../../../../../3rdparty/bx/src/crtnone.cpp:83:24: warning: declaration of 'const char* strstr(const char*, const char*)' conflicts with built-in declaration 'char* strstr(const char*, const char*)' [-Wbuiltin-declaration-mismatch]
extern "C" const char* strstr(const char* _str, const char* _find)
^~~~~~
../../../../../3rdparty/bx/src/crtnone.cpp: In function 'int isprint(int)':
../../../../../3rdparty/bx/src/crtnone.cpp:94:16: error: redefinition of 'int isprint(int)'
extern "C" int isprint(int _ch)
^~~~~~~
In file included from /usr/include/_wctype.h:63:0,
from /usr/include/wchar.h:114,
from ../../../../../3rdparty/bx/include/bx/string.h:11,
from ../../../../../3rdparty/bx/include/bx/error.h:9,
from ../../../../../3rdparty/bx/include/bx/readerwriter.h:10,
from ../../../../../3rdparty/bx/src/crtnone.cpp:8:
/usr/include/ctype.h:272:1: note: 'int isprint(int)' previously defined here
isprint(int _c)
^~~~~~~
../../../../../3rdparty/bx/src/crtnone.cpp: In function 'int toupper(int)':
../../../../../3rdparty/bx/src/crtnone.cpp:99:16: error: redefinition of 'int toupper(int)'
extern "C" int toupper (int _ch)
^~~~~~~
In file included from /usr/include/_wctype.h:63:0,
from /usr/include/wchar.h:114,
from ../../../../../3rdparty/bx/include/bx/string.h:11,
from ../../../../../3rdparty/bx/include/bx/error.h:9,
from ../../../../../3rdparty/bx/include/bx/readerwriter.h:10,
from ../../../../../3rdparty/bx/src/crtnone.cpp:8:
/usr/include/ctype.h:315:1: note: 'int toupper(int)' previously defined here
toupper(int _c)
^~~~~~~
../../../../../3rdparty/bx/src/crtnone.cpp: In function 'float powf(float)':
../../../../../3rdparty/bx/src/crtnone.cpp:161:18: warning: declaration of 'float powf(float)' conflicts with built-in declaration 'float powf(float, float)' [-Wbuiltin-declaration-mismatch]
extern "C" float powf(float _x)
^~~~
../../../../../3rdparty/bx/src/crtnone.cpp:167:19: warning: declaration of 'double pow(double)' conflicts with built-in declaration 'double pow(double, double)' [-Wbuiltin-declaration-mismatch]
extern "C" double pow(double _x)
^~~
make[2]: *** [../../../../osx_clang/obj/x32/Release/3rdparty/bx/src/crtnone.o] Error 1
make[1]: *** [bx] Error 2
make[1]: *** Waiting for unfinished jobs....
make: *** [macosx_x86] Error 2
Compiling src/osd/modules/font/font_osx.cpp...
In file included from /System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/DriverServices.h:32:0,
from /System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/CarbonCore.h:125,
from /System/Library/Frameworks/CoreServices.framework/Frameworks/AE.framework/Headers/AE.h:20,
from /System/Library/Frameworks/CoreServices.framework/Headers/CoreServices.h:21,
from /System/Library/Frameworks/ApplicationServices.framework/Headers/ApplicationServices.h:20,
from ../../../../../src/osd/modules/font/font_osx.cpp:16:
/System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/MachineExceptions.h:115:4: error: 'vector' does not name a type; did you mean '__vector'?
vector unsigned int v;
^~~~~~
__vector
make[2]: *** [../../../../osx_clang/obj/x32/Release/osd_sdl/src/osd/modules/font/font_osx.o] Error 1
make[1]: *** [osd_sdl] Error 2
make: *** [macosx_x86] Error 2
Compiling src/osd/modules/lib/osdlib_macosx.cpp...
In file included from /System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/DriverServices.h:32:0,
from /System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/CarbonCore.h:125,
from /System/Library/Frameworks/CoreServices.framework/Frameworks/AE.framework/Headers/AE.h:20,
from /System/Library/Frameworks/CoreServices.framework/Headers/CoreServices.h:21,
from /System/Library/Frameworks/Carbon.framework/Headers/Carbon.h:20,
from ../../../../../src/osd/modules/lib/osdlib_macosx.cpp:25:
/System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/MachineExceptions.h:115:4: error: 'vector' does not name a type; did you mean '__vector'?
vector unsigned int v;
^~~~~~
__vector
make[2]: *** [../../../../osx_clang/obj/x32/Release/ocore_sdl/src/osd/modules/lib/osdlib_macosx.o] Error 1
make[1]: *** [ocore_sdl] Error 2
make[1]: *** Waiting for unfinished jobs....
Do you have any suggestions on how to fix the errors above?
|
|
|
|
Joined: Jan 2007
Posts: 213
Senior Member
|
Senior Member
Joined: Jan 2007
Posts: 213 |
Well, thanks to the help of Mr. Karadzic the "crtnone.cpp" issue is solved" but the other compiler errors are still here (SDLmame version 0.191) so the build stucks on the following parts: src/osd/modules/lib/osdlib_macosx.cpp src/osd/modules/font/font_osx.cpp src/osd/modules/sound/coreaudio_sound.cpp src/osd/sdl/sdlmain.cpp all of them exits with the same error list: In file included from /System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/DriverServices.h:32:0,
from /System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/CarbonCore.h:125,
from /System/Library/Frameworks/CoreServices.framework/Frameworks/AE.framework/Headers/AE.h:20,
from /System/Library/Frameworks/CoreServices.framework/Headers/CoreServices.h:21,
from /System/Library/Frameworks/ApplicationServices.framework/Headers/ApplicationServices.h:20,
[...]
/System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/MachineExceptions.h:115:4: error: 'vector' does not name a type; did you mean 'vec_or'?
vector unsigned int v;
^~~~~~
vec_or
looks like a single fix can rule them all but I don't know how to: anyone can help here? I am using GCC 7.2 on OSX 10.5.8 and SDL 2.0.3 Thanks in advance...
|
|
|
|
Joined: Jan 2007
Posts: 213
Senior Member
|
Senior Member
Joined: Jan 2007
Posts: 213 |
Well, the errors above are still there in 0.192 release, the "crtnone" of bx package was simply corrected in the following way: In the main mame source directory edit the file: 3rdparty/bx/include/bx/platform.hand force the BX build to use the glib libraries declaring at line 33 #define BX_CRT_GLIBC 1then edit the other file 3rdparty/bx/src/thread.cppand at line 204 replace the pthread_setname_np(_name)with (void)_nameAt this point i was stuck again with the error above until I discovered this post in MacPorts forum where an identical error was stopping a port to build on OSX 10.5 PPC: MacPorts WxWidgets errorso it looks like it is simply a missing argument (-faltivec or -maltivec) to prevent SDLMAME to compile on my beloved PowerMac but where it should be placed? I have done some experiments with Genie but if set as defautl for ppc it breaks the whole compile (using GCC 7.2), I also tried to modify the generated .make files for the above parts only but with no luck, can someone point me in the right direction?
|
|
|
1 members (Vas Crabb),
20
guests, and
0
robots. |
Key:
Admin,
Global Mod,
Mod
|
|
Forums9
Topics9,086
Posts119,088
Members5,014
|
Most Online890 Jan 17th, 2020
|
|
These forums are sponsored by Superior Solitaire, an ad-free card game collection for macOS and iOS. Download it today!
|
|
|
|