English Amiga Board

English Amiga Board (https://eab.abime.net/index.php)
-   support.OtherUAE (https://eab.abime.net/forumdisplay.php?f=54)
-   -   Compiling P-UAE on Mac OS X (https://eab.abime.net/showthread.php?t=50826)

sirgamble 09 June 2010 10:37

I just grabbed the latest GIT and compiled it.
my steps were something like this:
1) ./bootstrap.sh
2) ./configure --prefix=/opt/local --with-sdl --with-sdl-sound --with-sdl-gl --with-sdl-gfx --host=i586 --target=i586 CFLAGS="-m32" LDFLAGS="-m32"
3) make
4) During the make process it kept giving me lGL issues, so I removed -lGL from the makefile and added -framework OpenGL in its place. This fixed the linking and got me a binary.

Only issue now is I get a green screen that keeps resetting and saying:

PAL mode V=50Hz H=15600Hz (227x312)
* configuration check trigger
memory init end


I'll have a fiddle and see if I can get it working. Any tips?

Edit: That or some JIT stuff...
JIT_APPLE: can't handle access!
JIT: instruction byte -1773771600 is 66
JIT: instruction byte -1773771600 is 0f
JIT: instruction byte -1773771600 is 74
JIT: instruction byte -1773771600 is 02
JIT: instruction byte -1773771600 is 83
JIT: instruction byte -1773771600 is e1
JIT: instruction byte -1773771600 is 0f
JIT: instruction byte -1773771600 is d3
JIT: instruction byte -1773771600 is e0
JIT: instruction byte -1773771600 is 66


I've had issues because I don't think the JIT's 64-bit? Snow Leopard defaults to 64-bit so I've been changing this in the compile options (-m32, i386, i586... etc.) Not too sure how to fix that one. I'm on a MacBook Pro (core 2 duo.)

sirgamble 14 June 2010 03:19

No big changes, but -lgl and -lglu don't seem to work with OS X... best to change the makefile to replace them with -framework OpenGL in my opinion.

Hewitson 14 June 2010 12:58

Quote:

Originally Posted by sirgamble (Post 676259)
I've had issues because I don't think the JIT's 64-bit? Snow Leopard defaults to 64-bit so I've been changing this in the compile options (-m32, i386, i586... etc.) Not too sure how to fix that one. I'm on a MacBook Pro (core 2 duo.)

I believe there is an option to disable jit support in the configure script.

gilgamesh 14 June 2010 13:21

see bronx_.sh and bronx_nojit.sh for example

sirgamble 29 June 2010 00:12

Yep, based on that here's my "sydney.sh"

./bootstrap.sh
./configure --prefix=/opt/local --with-sdl --with-sdl-sound --with-sdl-gl --with-sdl-gfx --with-sdl-sound --enable-cd32 --enable-scsi-device --disable-jit --host=i586 --target=i586 CFLAGS="-m32" LDFLAGS="-m32"
make

This compiles, but I get a bus error when trying to run UAE... I'll fiddle further.

aperez 19 August 2010 19:45

When compiling puaex_2010_04_30.tar.gz on Snow Leopard 10.6.4 with:

./configure --prefix=/opt/local --with-sdl --with-sdl-sound --with-sdl-gl --with-sdl-gfx --with-sdl-sound --enable-cd32 --enable-scsi-device --disable-jit --host=i586 --target=i586 CFLAGS="-m32" LDFLAGS="-m32"

compilation fails during cfgfile.c with the following error:

cfgfile.c: In function ‘default_prefs’:
cfgfile.c:3167: error: ‘DEFAULT_SOUND_MAXB’ undeclared (first use in this function)
cfgfile.c:3167: error: (Each undeclared identifier is reported only once
cfgfile.c:3167: error: for each function it appears in.)
cfgfile.c: In function ‘bip_a3000’:
cfgfile.c:3568: warning: implicit declaration of function ‘built_in_chipset_prefs’
cfgfile.c: At top level:
cfgfile.c:3932: warning: no previous prototype for ‘built_in_prefs’
cfgfile.c:3983: warning: no previous prototype for ‘built_in_chipset_prefs’
make[3]: *** [cfgfile.o] Error 1

GnoStiC 20 August 2010 07:12

puaex_2010_04_30.tar.gz is quite old.

for puae 2.3.0 beta series; http://github.com/GnoStiC/PUAE

Quote:

Originally Posted by aperez (Post 693863)
When compiling puaex_2010_04_30.tar.gz on Snow Leopard 10.6.4 with:


aperez 20 August 2010 07:29

Thanks Gnostic!

I had actually run across the github site first, but then couldn't get it to compile so I googled puae OS X and found this thread on EAB.

GnoStiC 20 August 2010 07:38

please report any problems you have compiling the git version so that i can fix them :)

Quote:

Originally Posted by aperez (Post 693969)
Thanks Gnostic!

I had actually run across the github site first, but then couldn't get it to compile so I googled puae OS X and found this thread on EAB.


aperez 20 August 2010 20:43

I am unable to compile the most current git branch, as of this writing. Compilation output is available at the following location

http://pastebin.org/626364

goldenegg 21 August 2010 06:05

2 Attachment(s)
I would love to get PUAE running on my Macbook Pro, but compiling always fails for me.

Code:

sys-001:GnoStiC-PUAE-8f059ce user$ ./configure --prefix=/opt/local --with-sdl --with-sdl-sound --with-sdl-gl --with-sdl-gfx --with-sdl-sound --enable-cd32 --enable-scsi-device --disable-jit CFLAGS="-m32" LDFLAGS="-m32" > configure.txt
configure: WARNING: SCSI support is not enabled or cannot be built. Disabling CD32 emulation

sys-001:GnoStiC-PUAE-8f059ce user$ make > make.txt
genlinetoscr.c: In function ‘main’:
genlinetoscr.c:465: warning: comparison between signed and unsigned
gencpu.c: In function ‘gen_nextiword’:
gencpu.c:305: warning: too many arguments for format
gencpu.c: In function ‘gen_nextibyte’:
gencpu.c:345: warning: too many arguments for format
gencpu.c: In function ‘genamode_fixup’:
gencpu.c:859: warning: too many arguments for format
gencpu.c:855: warning: enumeration value ‘Dreg’ not handled in switch
gencpu.c:855: warning: enumeration value ‘Areg’ not handled in switch
gencpu.c:855: warning: enumeration value ‘Aind’ not handled in switch
gencpu.c:855: warning: enumeration value ‘Ad16’ not handled in switch
gencpu.c:855: warning: enumeration value ‘Ad8r’ not handled in switch
gencpu.c:855: warning: enumeration value ‘absw’ not handled in switch
gencpu.c:855: warning: enumeration value ‘absl’ not handled in switch
gencpu.c:855: warning: enumeration value ‘PC16’ not handled in switch
gencpu.c:855: warning: enumeration value ‘PC8r’ not handled in switch
gencpu.c:855: warning: enumeration value ‘imm’ not handled in switch
gencpu.c:855: warning: enumeration value ‘imm0’ not handled in switch
gencpu.c:855: warning: enumeration value ‘imm1’ not handled in switch
gencpu.c:855: warning: enumeration value ‘imm2’ not handled in switch
gencpu.c:855: warning: enumeration value ‘immi’ not handled in switch
gencpu.c:855: warning: enumeration value ‘am_unknown’ not handled in switch
gencpu.c:855: warning: enumeration value ‘am_illg’ not handled in switch
gencpu.c: In function ‘genflags_normal’:
gencpu.c:1272: warning: enumeration value ‘flag_z’ not handled in switch
gencpu.c: In function ‘gen_opcode’:
gencpu.c:2150: warning: format ‘%04X’ expects type ‘unsigned int’, but argument 2 has type ‘long unsigned int’
gencpu.c:2171: warning: format ‘%04X’ expects type ‘unsigned int’, but argument 2 has type ‘long unsigned int’
gencpu.c: In function ‘generate_one_opcode’:
gencpu.c:3643: warning: format ‘%04x’ expects type ‘unsigned int’, but argument 4 has type ‘long int’
gencpu.c:3643: warning: format ‘%d’ expects type ‘int’, but argument 6 has type ‘long int’
gencpu.c:3746: warning: format ‘%04x’ expects type ‘unsigned int’, but argument 4 has type ‘long int’
gencpu.c:3746: warning: format ‘%d’ expects type ‘int’, but argument 6 has type ‘long int’
readcpu.c: In function ‘build_insn’:
readcpu.c:735: warning: empty body in an if-statement
missing.c: In function ‘xmalloc’:
missing.c:33: warning: format ‘%d’ expects type ‘int’, but argument 2 has type ‘size_t’
missing.c: In function ‘xcalloc’:
missing.c:43: warning: format ‘%d’ expects type ‘int’, but argument 2 has type ‘size_t’
In file included from support.c:13:
../../src/include/options.h:485: warning: ‘struct zfile’ declared inside parameter list
../../src/include/options.h:485: warning: its scope is only this definition or declaration, which is probably not what you want
support.c:241: warning: no previous prototype for ‘machdep_save_options’
support.c: In function ‘machdep_save_options’:
support.c:242: warning: implicit declaration of function ‘cfgfile_write’
support.c: At top level:
support.c:246: warning: no previous prototype for ‘machdep_parse_option’
support.c: In function ‘machdep_parse_option’:
support.c:247: warning: passing argument 4 of ‘cfgfile_yesno’ from incompatible pointer type
support.c: At top level:
support.c:251: warning: no previous prototype for ‘machdep_default_options’
In file included from sdlgfx.c:59:
../../src/include/options.h:485: warning: ‘struct zfile’ declared inside parameter list
../../src/include/options.h:485: warning: its scope is only this definition or declaration, which is probably not what you want
sdlgfx.c: In function ‘graphics_subinit’:
sdlgfx.c:1204: warning: implicit declaration of function ‘inputdevice_release_all_keys’
sdlgfx.c: At top level:
sdlgfx.c:1582: warning: no previous prototype for ‘mousehack_allowed’
sdlgfx.c:2035: warning: initialization from incompatible pointer type
sdlgfx.c:2036: warning: initialization from incompatible pointer type
sdlgfx.c:2038: warning: initialization from incompatible pointer type
sdlgfx.c:2039: warning: initialization from incompatible pointer type
sdlgfx.c:2040: warning: initialization from incompatible pointer type
sdlgfx.c:2041: warning: initialization from incompatible pointer type
sdlgfx.c:2042: warning: initialization from incompatible pointer type
sdlgfx.c:2043: warning: initialization from incompatible pointer type
sdlgfx.c:2136: warning: initialization from incompatible pointer type
sdlgfx.c:2137: warning: initialization from incompatible pointer type
sdlgfx.c:2139: warning: initialization from incompatible pointer type
sdlgfx.c:2140: warning: initialization from incompatible pointer type
sdlgfx.c:2141: warning: initialization from incompatible pointer type
sdlgfx.c:2142: warning: initialization from incompatible pointer type
sdlgfx.c:2143: warning: initialization from incompatible pointer type
sdlgfx.c:2144: warning: initialization from incompatible pointer type
sdlgfx.c: In function ‘input_get_default_mouse’:
sdlgfx.c:2169: warning: implicit declaration of function ‘setid’
sdlgfx.c: At top level:
sdlgfx.c:2194: warning: no previous prototype for ‘gfx_default_options’
sdlgfx.c:2208: warning: no previous prototype for ‘gfx_save_options’
sdlgfx.c: In function ‘gfx_save_options’:
sdlgfx.c:2209: warning: implicit declaration of function ‘cfgfile_write’
sdlgfx.c: At top level:
sdlgfx.c:2216: warning: no previous prototype for ‘gfx_parse_option’
sdlgfx.c: In function ‘gfx_parse_option’:
sdlgfx.c:2217: warning: passing argument 4 of ‘cfgfile_yesno’ from incompatible pointer type
sdlgfx.c:2219: warning: passing argument 4 of ‘cfgfile_yesno’ from incompatible pointer type
In file included from sdlkeys.c:16:
../../src/include/options.h:485: warning: ‘struct zfile’ declared inside parameter list
../../src/include/options.h:485: warning: its scope is only this definition or declaration, which is probably not what you want
In file included from rawkeys.c:12:
../../src/include/options.h:485: warning: ‘struct zfile’ declared inside parameter list
../../src/include/options.h:485: warning: its scope is only this definition or declaration, which is probably not what you want
In file included from sound.c:14:
../../src/include/options.h:485: warning: ‘struct zfile’ declared inside parameter list
../../src/include/options.h:485: warning: its scope is only this definition or declaration, which is probably not what you want
sound.c: In function ‘finish_sound_buffer’:
sound.c:73: warning: implicit declaration of function ‘driveclick_mix’
sound.c: In function ‘open_sound’:
sound.c:147: warning: implicit declaration of function ‘driveclick_init’
sound.c: In function ‘init_sound’:
sound.c:227: warning: implicit declaration of function ‘driveclick_reset’
sound.c: At top level:
sound.c:266: warning: no previous prototype for ‘audio_default_options’
sound.c:270: warning: no previous prototype for ‘audio_save_options’
sound.c:274: warning: no previous prototype for ‘audio_parse_option’
In file included from joystick.c:14:
../../src/include/options.h:485: warning: ‘struct zfile’ declared inside parameter list
../../src/include/options.h:485: warning: its scope is only this definition or declaration, which is probably not what you want
joystick.c:169: warning: initialization from incompatible pointer type
joystick.c:170: warning: initialization from incompatible pointer type
joystick.c:172: warning: initialization from incompatible pointer type
joystick.c:173: warning: initialization from incompatible pointer type
joystick.c:174: warning: initialization from incompatible pointer type
joystick.c:175: warning: initialization from incompatible pointer type
joystick.c:176: warning: initialization from incompatible pointer type
joystick.c:177: warning: initialization from incompatible pointer type
joystick.c: In function ‘input_get_default_joystick’:
joystick.c:192: warning: comparison between signed and unsigned
joystick.c:205: warning: implicit declaration of function ‘setid’
joystick.c:209: warning: implicit declaration of function ‘setid_af’
In file included from cocoaui.m:16:
../../src/include/options.h:485: warning: ‘struct zfile’ declared inside parameter list
../../src/include/options.h:485: warning: its scope is only this definition or declaration, which is probably not what you want
cocoaui.m:63: warning: protocol ‘NSMenuItem’ is deprecated
cocoaui.m:281: warning: protocol ‘NSMenuItem’ is deprecated
cocoaui.m: In function ‘-[PuaeGui displayOpenPanelForInsertIntoDriveNumber:]’:
cocoaui.m:438: warning: initialization makes pointer from integer without a cast
In file included from main.m:19:
../../src/include/options.h:485: warning: ‘struct zfile’ declared inside parameter list
../../src/include/options.h:485: warning: its scope is only this definition or declaration, which is probably not what you want
In file included from ../../src/od-generic/memory.c:12,
                from memory.c:9:
../../src/include/options.h:485: warning: ‘struct zfile’ declared inside parameter list
../../src/include/options.h:485: warning: its scope is only this definition or declaration, which is probably not what you want
/usr/bin/ranlib: archive member: libosdep.a(memory.o) cputype (7) does not match previous archive members cputype (16777223) (all members must match)
ranlib: archive member: libosdep.a(memory.o) cputype (7) does not match previous archive members cputype (16777223) (all members must match)
ranlib: for architecture: i386 file: libosdep.a(memory.o) has no symbols
ranlib: warning for library: libosdep.a for architecture: i386 the table of contents is empty (no object file members in the library define global symbols)
make[3]: *** [libosdep.a] Error 1
make[2]: *** [all-recursive] Error 1
make[1]: *** [all] Error 2
make: *** [all-recursive] Error 1

Any help would be GREATLY appreciated! If someone has a precompiled binary, that would be great too ;)

GnoStiC 23 August 2010 07:30

i get;
"Unable to connect to database" error.

Quote:

Originally Posted by aperez (Post 694103)
I am unable to compile the most current git branch, as of this writing. Compilation output is available at the following location

http://pastebin.org/626364


GnoStiC 23 August 2010 07:33

Quote:

Originally Posted by goldenegg (Post 694215)
I would love to get PUAE running on my Macbook Pro, but compiling always fails for me.

Code:


ranlib: archive member: libosdep.a(memory.o) cputype (7) does not match previous archive members cputype (16777223) (all members must match)

make[3]: *** [libosdep.a] Error 1
make[2]: *** [all-recursive] Error 1
make[1]: *** [all] Error 2
make: *** [all-recursive] Error 1

Any help would be GREATLY appreciated! If someone has a precompiled binary, that would be great too ;)

i don't know why that happens. precompiled binaries are in the zone.

goldenegg 23 August 2010 08:39

Quote:

Originally Posted by GnoStiC (Post 694639)
i don't know why that happens. precompiled binaries are in the zone.

Sorry, I'm new around this board. Where is 'the zone'?

TCD 23 August 2010 08:42

Have a look at the upper right for a 'The Zone!' link and read here : http://eab.abime.net/faq.php?faq=vb_...ezone_faq_item how to get access.

xaind 23 August 2010 10:35

Just uploaded a new build from commit 8f059ce... (the old build was about to drop off the end.)

goldenegg 23 August 2010 13:38

Quote:

Originally Posted by xaind (Post 694658)
Just uploaded a new build from commit 8f059ce... (the old build was about to drop off the end.)

Much appreciated!!!!

Sune Salminen 26 August 2010 16:56

+1

Thanks!

Wicked_Digger 09 September 2010 15:24

Some hints for Mac developers.
If you have a problem with build PUAE on x64 Snow Leopard + new versions of XCode
1. gcc make x64 builds by default, for build PUAE you must specify 32 bit building:
./configure --target=i586 CFLAGS="-m32" LDFLAGS="-m32" CPPFLAGS="-m32"

CFLAGS - for compiling C sources
LDFLAGS - for linking
CPPFLAGS - hack for building Objective C sources with 32 bit arch (in fact we must use OBJCFLAGS but this way don't work for now :( )

2. For building with Cocoa (if you have SDL framework installed) you must NOT use "--host=i586" key for configure, if you use it configuration process try to found libsdl... and X libs but not Cocoa.

lallafa 28 September 2010 20:05

1 Attachment(s)
Compiling on Mac OS X didn't work for me out of box with current Git head.

However with this small patch applied everything worked fine...

Code:

> cd /path/to/PUA
> patch -p1 < puae-mac-compile-fix.patch.txt
> ./build_macos_cocoa.sh

Main reason for failure is that Mac OS X does not support SCSI emulation via libscg out of the box. (This lib is an optional install e.g. with cdrtools from MacPorts and no system lib).


All times are GMT +2. The time now is 04:55.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.

Page generated in 0.07515 seconds with 11 queries