Some issues with building Sheep on OS X 10.6

About SheepShaver, a PPC Mac emulator for Windows, MacOS X, and Linux that can run System 7.5.3 to MacOS 9.0.4.

Moderators: Cat_7, Ronald P. Regensburg, ClockWise

Post Reply
neozeed
Apple Corer
Posts: 293
Joined: Sun Aug 25, 2013 3:25 am
Location: Hong Kong

Some issues with building Sheep on OS X 10.6

Post by neozeed »

Code: Select all

/usr/bin/g++-4.2 -o SheepShaver -pagezero_size 0x3000 -Wl,-seg1addr,0x78048000 obj/main.o obj/main_unix.o obj/prefs.o obj/prefs_items.o obj/prefs_unix.o obj/sys_unix.o obj/rom_patches.o obj/rsrc_patches.o obj/emul_op.o obj/name_registry.o obj/macos_util.o obj/timer.o obj/timer_unix.o obj/xpram.o obj/xpram_unix.o obj/adb.o obj/sony.o obj/disk.o obj/cdrom.o obj/scsi.o obj/gfxaccel.o obj/video.o obj/video_blit.o obj/audio.o obj/ether.o obj/thunks.o obj/serial.o obj/extfs.o obj/disk_sparsebundle.o obj/tinyxml2.o obj/about_window_unix.o obj/user_strings.o obj/user_strings_unix.o obj/vm_alloc.o obj/sigsegv.o obj/rpc_unix.o obj/sshpty.o obj/strlcpy.o obj/video_sdl.o obj/extfs_macosx.o obj/prefs_macosx.o obj/VMSettingsController.o obj/serial_unix.o obj/ether_unix.o obj/scsi_dummy.o obj/audio_sdl.o obj/prefs_editor_dummy.o obj/sys_darwin.o obj/clip_macosx.o obj/utils_macosx.o obj/jit-cache.o obj/basic-dyngen.o obj/ppc-dyngen.o obj/ppc-jit.o obj/ieeefp.o obj/mathlib.o obj/ppc-cpu.o obj/ppc-decode.o obj/ppc-execute.o obj/ppc-translate.o obj/utils-cpuinfo.o obj/sheepshaver_glue.o obj/ppc-dis.o obj/bootp.o obj/ip_output.o obj/tcp_input.o obj/cksum.o obj/mbuf.o obj/tcp_output.o obj/debug.o obj/misc.o obj/tcp_subr.o obj/if.o obj/sbuf.o obj/tcp_timer.o obj/ip_icmp.o obj/slirp.o obj/tftp.o obj/ip_input.o obj/socket.o obj/udp.o -lpthread -lm  -L/usr/local/lib -lSDLmain -framework SDL -framework,Cocoa -framework Carbon -framework IOKit -framework CoreFoundation -framework CoreAudio -framework AudioUnit -framework AudioToolbox -framework AppKit 
Undefined symbols:
  ".objc_class_name_DiskType", referenced from:
      literal-pointer@__OBJC@__cls_refs@DiskType in VMSettingsController.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make: *** [SheepShaver] Error 1
While trying to compile the latest git build. If I substitute in an older VMSettingsController.mm I can build ok.

For what it's worth:

Code: Select all

VMwareSL:Unix $ hostinfo
Mach kernel version:
	 Darwin Kernel Version 10.0.0: Mon Oct 12 04:06:05 AST 2009; anappirtrvh:xnu-1456.1.26/BUILD/obj/RELEASE_I386
Kernel configured for a single processor only.
1 processor is physically available.
1 processor is logically available.
Processor type: i486 (Intel 80486)
Processor active: 0
Primary memory available: 4.00 gigabytes
Default processor set: 48 tasks, 190 threads, 1 processors
Load average: 0.78, Mach factor: 0.66
VMwareSL:Unix$ uname -a
Darwin VMwareSL.local 10.0.0 Darwin Kernel Version 10.0.0: Mon Oct 12 04:06:05 AST 2009; anappirtrvh:xnu-1456.1.26/BUILD/obj/RELEASE_I386 i386
GCC 4.0

Code: Select all

VMwareSL:Unix$ gcc-4.0 -v
Using built-in specs.
Target: i686-apple-darwin10
Configured with: /var/tmp/gcc_40/gcc_40-5494~315/src/configure --disable-checking -enable-werror --prefix=/usr --mandir=/share/man --enable-languages=c,objc,c++,obj-c++ --program-transform-name=/^[cg][^.-]*$/s/$/-4.0/ --with-gxx-include-dir=/include/c++/4.0.0 --with-slibdir=/usr/lib --build=i686-apple-darwin10 --with-arch=apple --with-tune=generic --host=i686-apple-darwin10 --target=i686-apple-darwin10
Thread model: posix
gcc version 4.0.1 (Apple Inc. build 5494)
And GCC 4.2

Code: Select all

VMwareSL:Unix$ gcc-4.2 -v
Using built-in specs.
Target: i686-apple-darwin10
Configured with: /var/tmp/gcc/gcc-5666.3~6/src/configure --disable-checking --enable-werror --prefix=/usr --mandir=/usr/share/man --enable-languages=c,objc,c++,obj-c++ --program-transform-name=/^[cg][^.-]*$/s/$/-4.2/ --with-slibdir=/usr/lib --build=i686-apple-darwin10 --with-gxx-include-dir=/usr/include/c++/4.2.1 --host=i686-apple-darwin10 --target=i686-apple-darwin10
Thread model: posix
gcc version 4.2.1 (Apple Inc. build 5666) (dot 3)
In other weird news on this side project, I found that the C++ code can be built with gcc-4.2 using -O3 -sse3, I need to bench it to see if it is any faster though.
don't do today what you can put off until tomorrow.
neozeed
Apple Corer
Posts: 293
Joined: Sun Aug 25, 2013 3:25 am
Location: Hong Kong

Re: Some issues with building Sheep on OS X 10.6

Post by neozeed »

Never mind, turns out DiskType.m wasn't being compiled in, it makes sense now why the object couldn't be found!
don't do today what you can put off until tomorrow.
User avatar
Old-School-BBSer
Apple Corer
Posts: 231
Joined: Sun Mar 01, 2015 8:58 am
Location: Guam

Re: Some issues with building Sheep on OS X 10.6

Post by Old-School-BBSer »

Hello, I am a little curious.

Being as SheepShaver 2.4 (20140201) runs perfectly fine on Mac OS X all the way up to the El Capitan Golden Master, why do you even feel the need to struggle with building SheepShaver yourself using the Github source? Do you have some particular needs, perhaps, which aren't met by the current Mac OS X builds?

I imagine that you are already familiar with this page:

http://www.emaculation.com/forum/viewto ... =20&t=7360

Just wondering.
Bill Kochman
Armageddon BBS
Guam, Mariana Islands, USA
User avatar
Ronald P. Regensburg
Expert User
Posts: 7834
Joined: Thu Feb 09, 2006 10:24 pm
Location: Amsterdam, Netherlands

Re: Some issues with building Sheep on OS X 10.6

Post by Ronald P. Regensburg »

Some wamt to try to add or change features. Then you will need to build yourself. OSX 10.6 is still the latest OSX in which SheepShaver can be build.
User avatar
Old-School-BBSer
Apple Corer
Posts: 231
Joined: Sun Mar 01, 2015 8:58 am
Location: Guam

Re: Some issues with building Sheep on OS X 10.6

Post by Old-School-BBSer »

Thanks for the clarification, Ronald. I assumed that the OP is a tinkerer. :)
Bill Kochman
Armageddon BBS
Guam, Mariana Islands, USA
Post Reply