Building Mini vMac on Ubuntu 11.10 Oneiric Ocelot 64bit

About Mini vMac and all other 68k emulators, including SoftMac, Executor, and MESS.

Moderators: Cat_7, Ronald P. Regensburg

Post Reply
Ohrer
Space Cadet
Posts: 3
Joined: Sun Mar 18, 2012 9:44 pm

Building Mini vMac on Ubuntu 11.10 Oneiric Ocelot 64bit

Post by Ohrer »

I have been trying to build Mini vMac 3.2.3 on Ubuntu 11.10 Oneiric Ocelot 64bit, without luck. I got "warning: Clock skew detected. Your build may be incomplete", and i fixed it. Installed some dependencies (libx11-dev, libasoundd2-dev and libxext-dev) but I keep getting errors. I dont know what else to do ¿could anybody help me with this?. This is the last error I got:

Code: Select all

~/Escritorio/minivmac-3.2.3-lx64$ make
gcc \
		-o "minivmac" -L/usr/X11R6/lib -lXext -lX11 -lasound \
		bld/MYOSGLUE.o bld/GLOBGLUE.o bld/M68KITAB.o bld/MINEM68K.o bld/VIAEMDEV.o bld/IWMEMDEV.o bld/SCCEMDEV.o bld/RTCEMDEV.o bld/ROMEMDEV.o bld/SCSIEMDV.o bld/SONYEMDV.o bld/SCRNEMDV.o bld/KBRDEMDV.o bld/SNDEMDEV.o bld/MOUSEMDV.o bld/PROGMAIN.o 
bld/MYOSGLUE.o: In function `KC2MKCAssignOne':
MYOSGLUE.c:(.text+0xc92): undefined reference to `XKeysymToKeycode'
bld/MYOSGLUE.o: In function `MyMoveMouse':
MYOSGLUE.c:(.text+0xdbd): undefined reference to `XWarpPointer'
MYOSGLUE.c:(.text+0xe01): undefined reference to `XQueryPointer'
bld/MYOSGLUE.o: In function `CheckMouseState':
MYOSGLUE.c:(.text+0xe74): undefined reference to `XQueryPointer'
bld/MYOSGLUE.o: In function `MySound_FilledBlocks':
MYOSGLUE.c:(.text+0xffa): undefined reference to `snd_pcm_state'
MYOSGLUE.c:(.text+0x101d): undefined reference to `snd_pcm_prepare'
MYOSGLUE.c:(.text+0x1028): undefined reference to `snd_strerror'
MYOSGLUE.c:(.text+0x1041): undefined reference to `snd_pcm_start'
MYOSGLUE.c:(.text+0x104c): undefined reference to `snd_strerror'
MYOSGLUE.c:(.text+0x1065): undefined reference to `snd_pcm_resume'
MYOSGLUE.c:(.text+0x1074): undefined reference to `snd_strerror'
MYOSGLUE.c:(.text+0x10a8): undefined reference to `snd_pcm_delay'
MYOSGLUE.c:(.text+0x10b3): undefined reference to `snd_strerror'
MYOSGLUE.c:(.text+0x10cc): undefined reference to `snd_pcm_avail_update'
MYOSGLUE.c:(.text+0x10d8): undefined reference to `snd_strerror'
MYOSGLUE.c:(.text+0x11b2): undefined reference to `snd_pcm_writei'
MYOSGLUE.c:(.text+0x11d0): undefined reference to `snd_strerror'
bld/MYOSGLUE.o: In function `CreateMainWindow':
MYOSGLUE.c:(.text+0x18c4): undefined reference to `XRootWindow'
MYOSGLUE.c:(.text+0x191c): undefined reference to `XGetGeometry'
MYOSGLUE.c:(.text+0x1a46): undefined reference to `XSelectInput'
MYOSGLUE.c:(.text+0x1a5e): undefined reference to `XStoreName'
MYOSGLUE.c:(.text+0x1a76): undefined reference to `XSetIconName'
MYOSGLUE.c:(.text+0x1a7b): undefined reference to `XAllocClassHint'
MYOSGLUE.c:(.text+0x1aa8): undefined reference to `XSetClassHint'
MYOSGLUE.c:(.text+0x1ab0): undefined reference to `XFree'
MYOSGLUE.c:(.text+0x1ab5): undefined reference to `XAllocWMHints'
MYOSGLUE.c:(.text+0x1ae8): undefined reference to `XSetWMHints'
MYOSGLUE.c:(.text+0x1af0): undefined reference to `XFree'
MYOSGLUE.c:(.text+0x1b10): undefined reference to `XSetCommand'
MYOSGLUE.c:(.text+0x1b2d): undefined reference to `XSetWMProtocols'
MYOSGLUE.c:(.text+0x1b69): undefined reference to `XChangeProperty'
MYOSGLUE.c:(.text+0x1b80): undefined reference to `XCreateGC'
MYOSGLUE.c:(.text+0x1bb9): undefined reference to `XSetState'
MYOSGLUE.c:(.text+0x1bc7): undefined reference to `XAllocSizeHints'
MYOSGLUE.c:(.text+0x1c06): undefined reference to `XSetWMNormalHints'
MYOSGLUE.c:(.text+0x1c0e): undefined reference to `XFree'
MYOSGLUE.c:(.text+0x1c46): undefined reference to `XMapRaised'
MYOSGLUE.c:(.text+0x1cef): undefined reference to `XCreateWindow'
MYOSGLUE.c:(.text+0x1d2b): undefined reference to `XCreateSimpleWindow'
bld/MYOSGLUE.o: In function `DisableKeyRepeat':
MYOSGLUE.c:(.text+0x1e28): undefined reference to `XGetKeyboardControl'
MYOSGLUE.c:(.text+0x1e50): undefined reference to `XChangeKeyboardControl'
bld/MYOSGLUE.o: In function `RestoreKeyRepeat':
MYOSGLUE.c:(.text+0x1ea4): undefined reference to `XChangeKeyboardControl'
bld/MYOSGLUE.o: In function `CloseMainWindow':
MYOSGLUE.c:(.text+0x1f73): undefined reference to `XFreeGC'
MYOSGLUE.c:(.text+0x1f96): undefined reference to `XDestroyWindow'
bld/MYOSGLUE.o: In function `UngrabMachine':
MYOSGLUE.c:(.text+0x1fec): undefined reference to `XUngrabKeyboard'
bld/MYOSGLUE.o: In function `HaveChangedScreenBuff':
MYOSGLUE.c:(.text+0x24e0): undefined reference to `XPutImage'
bld/MYOSGLUE.o: In function `HTCEimport_do':
MYOSGLUE.c:(.text+0x2566): undefined reference to `XGetSelectionOwner'
MYOSGLUE.c:(.text+0x25a3): undefined reference to `XDeleteProperty'
MYOSGLUE.c:(.text+0x25cc): undefined reference to `XConvertSelection'
MYOSGLUE.c:(.text+0x25fc): undefined reference to `XCheckTypedWindowEvent'
MYOSGLUE.c:(.text+0x26a9): undefined reference to `XGetWindowProperty'
MYOSGLUE.c:(.text+0x271a): undefined reference to `XFree'
MYOSGLUE.c:(.text+0x2734): undefined reference to `XDeleteProperty'
bld/MYOSGLUE.o: In function `Keyboard_UpdateKeyMap2':
MYOSGLUE.c:(.text+0x29f4): undefined reference to `XRootWindow'
MYOSGLUE.c:(.text+0x2a34): undefined reference to `XGetGeometry'
bld/MYOSGLUE.o: In function `CheckTheCapsLock':
MYOSGLUE.c:(.text+0x2c7d): undefined reference to `XQueryPointer'
bld/MYOSGLUE.o: In function `WaitForTheNextEvent':
MYOSGLUE.c:(.text+0x2cca): undefined reference to `XNextEvent'
MYOSGLUE.c:(.text+0x3064): undefined reference to `XChangeProperty'
MYOSGLUE.c:(.text+0x31d2): undefined reference to `XGetWindowProperty'
MYOSGLUE.c:(.text+0x326f): undefined reference to `XFree'
MYOSGLUE.c:(.text+0x3289): undefined reference to `XDeleteProperty'
MYOSGLUE.c:(.text+0x3323): undefined reference to `XSendEvent'
MYOSGLUE.c:(.text+0x3365): undefined reference to `XRootWindow'
MYOSGLUE.c:(.text+0x33c0): undefined reference to `XGetWindowProperty'
MYOSGLUE.c:(.text+0x3403): undefined reference to `XFree'
MYOSGLUE.c:(.text+0x341e): undefined reference to `XRootWindow'
MYOSGLUE.c:(.text+0x349b): undefined reference to `XSendEvent'
MYOSGLUE.c:(.text+0x34ae): undefined reference to `XRaiseWindow'
MYOSGLUE.c:(.text+0x34c9): undefined reference to `XSetInputFocus'
MYOSGLUE.c:(.text+0x355d): undefined reference to `XGetGeometry'
MYOSGLUE.c:(.text+0x361d): undefined reference to `XSendEvent'
MYOSGLUE.c:(.text+0x3662): undefined reference to `XConvertSelection'
bld/MYOSGLUE.o: In function `HTCEexport':
MYOSGLUE.c:(.text+0x3d6a): undefined reference to `XSetSelectionOwner'
bld/MYOSGLUE.o: In function `MySound_Stop':
MYOSGLUE.c:(.text+0xea1): undefined reference to `snd_pcm_drop'
bld/MYOSGLUE.o: In function `ForceShowCursor':
MYOSGLUE.c:(.text+0x1f58): undefined reference to `XUndefineCursor'
bld/MYOSGLUE.o: In function `main':
MYOSGLUE.c:(.text.startup+0x35f): undefined reference to `snd_pcm_open'
MYOSGLUE.c:(.text.startup+0x36a): undefined reference to `snd_strerror'
MYOSGLUE.c:(.text.startup+0x3a9): undefined reference to `snd_pcm_hw_params_malloc'
MYOSGLUE.c:(.text.startup+0x3b4): undefined reference to `snd_strerror'
MYOSGLUE.c:(.text.startup+0x3f4): undefined reference to `snd_pcm_hw_params_any'
MYOSGLUE.c:(.text.startup+0x3ff): undefined reference to `snd_strerror'
MYOSGLUE.c:(.text.startup+0x425): undefined reference to `snd_pcm_hw_params_set_access'
MYOSGLUE.c:(.text.startup+0x430): undefined reference to `snd_strerror'
MYOSGLUE.c:(.text.startup+0x456): undefined reference to `snd_pcm_hw_params_set_format'
MYOSGLUE.c:(.text.startup+0x461): undefined reference to `snd_strerror'
MYOSGLUE.c:(.text.startup+0x48c): undefined reference to `snd_pcm_hw_params_set_rate_near'
MYOSGLUE.c:(.text.startup+0x497): undefined reference to `snd_strerror'
MYOSGLUE.c:(.text.startup+0x4bd): undefined reference to `snd_pcm_hw_params_set_channels'
MYOSGLUE.c:(.text.startup+0x4c8): undefined reference to `snd_strerror'
MYOSGLUE.c:(.text.startup+0x4ee): undefined reference to `snd_pcm_hw_params_set_buffer_size_near'
MYOSGLUE.c:(.text.startup+0x4f9): undefined reference to `snd_strerror'
MYOSGLUE.c:(.text.startup+0x521): undefined reference to `snd_pcm_hw_params_set_period_size_near'
MYOSGLUE.c:(.text.startup+0x52c): undefined reference to `snd_strerror'
MYOSGLUE.c:(.text.startup+0x54d): undefined reference to `snd_pcm_hw_params'
MYOSGLUE.c:(.text.startup+0x558): undefined reference to `snd_strerror'
MYOSGLUE.c:(.text.startup+0x59f): undefined reference to `snd_pcm_hw_params_free'
MYOSGLUE.c:(.text.startup+0x5b8): undefined reference to `snd_pcm_sw_params_malloc'
MYOSGLUE.c:(.text.startup+0x5c3): undefined reference to `snd_strerror'
MYOSGLUE.c:(.text.startup+0x603): undefined reference to `snd_pcm_sw_params_current'
MYOSGLUE.c:(.text.startup+0x610): undefined reference to `snd_strerror'
MYOSGLUE.c:(.text.startup+0x63f): undefined reference to `snd_pcm_sw_params_set_start_threshold'
MYOSGLUE.c:(.text.startup+0x64a): undefined reference to `snd_strerror'
MYOSGLUE.c:(.text.startup+0x672): undefined reference to `snd_pcm_sw_params_set_avail_min'
MYOSGLUE.c:(.text.startup+0x67d): undefined reference to `snd_strerror'
MYOSGLUE.c:(.text.startup+0x6a0): undefined reference to `snd_pcm_sw_params_set_xfer_align'
MYOSGLUE.c:(.text.startup+0x6ab): undefined reference to `snd_strerror'
MYOSGLUE.c:(.text.startup+0x6c9): undefined reference to `snd_pcm_sw_params'
MYOSGLUE.c:(.text.startup+0x6d4): undefined reference to `snd_strerror'
MYOSGLUE.c:(.text.startup+0x6fe): undefined reference to `snd_pcm_sw_params_free'
MYOSGLUE.c:(.text.startup+0x718): undefined reference to `snd_pcm_nonblock'
MYOSGLUE.c:(.text.startup+0x72c): undefined reference to `snd_pcm_sw_params_free'
MYOSGLUE.c:(.text.startup+0x73e): undefined reference to `snd_pcm_hw_params_free'
MYOSGLUE.c:(.text.startup+0x74f): undefined reference to `snd_pcm_close'
MYOSGLUE.c:(.text.startup+0x766): undefined reference to `XOpenDisplay'
MYOSGLUE.c:(.text.startup+0x794): undefined reference to `XRootWindow'
MYOSGLUE.c:(.text.startup+0x7c0): undefined reference to `XInternAtom'
MYOSGLUE.c:(.text.startup+0x7da): undefined reference to `XInternAtom'
MYOSGLUE.c:(.text.startup+0x7f4): undefined reference to `XInternAtom'
MYOSGLUE.c:(.text.startup+0x80e): undefined reference to `XInternAtom'
MYOSGLUE.c:(.text.startup+0x828): undefined reference to `XInternAtom'
bld/MYOSGLUE.o:MYOSGLUE.c:(.text.startup+0x842): more undefined references to `XInternAtom' follow
bld/MYOSGLUE.o: In function `main':
MYOSGLUE.c:(.text.startup+0x99a): undefined reference to `XParseColor'
MYOSGLUE.c:(.text.startup+0x9ae): undefined reference to `XAllocColor'
MYOSGLUE.c:(.text.startup+0x9c7): undefined reference to `XParseColor'
MYOSGLUE.c:(.text.startup+0x9db): undefined reference to `XAllocColor'
MYOSGLUE.c:(.text.startup+0x9fa): undefined reference to `XCreatePixmap'
MYOSGLUE.c:(.text.startup+0xa2a): undefined reference to `XCreateGC'
MYOSGLUE.c:(.text.startup+0xa59): undefined reference to `XFillRectangle'
MYOSGLUE.c:(.text.startup+0xa68): undefined reference to `XFreeGC'
MYOSGLUE.c:(.text.startup+0xa8f): undefined reference to `XCreatePixmapCursor'
MYOSGLUE.c:(.text.startup+0xaac): undefined reference to `XFreePixmap'
MYOSGLUE.c:(.text.startup+0xb30): undefined reference to `XCreateImage'
MYOSGLUE.c:(.text.startup+0xba3): undefined reference to `XCreateImage'
MYOSGLUE.c:(.text.startup+0xc27): undefined reference to `XCreateImage'
MYOSGLUE.c:(.text.startup+0x15ee): undefined reference to `XKeysymToKeycode'
MYOSGLUE.c:(.text.startup+0x1648): undefined reference to `XEventsQueued'
MYOSGLUE.c:(.text.startup+0x165c): undefined reference to `XFlush'
MYOSGLUE.c:(.text.startup+0x16c4): undefined reference to `XSetInputFocus'
MYOSGLUE.c:(.text.startup+0x16d8): undefined reference to `XRootWindow'
MYOSGLUE.c:(.text.startup+0x16e9): undefined reference to `XSync'
MYOSGLUE.c:(.text.startup+0x171f): undefined reference to `XTranslateCoordinates'
MYOSGLUE.c:(.text.startup+0x18ec): undefined reference to `XQueryKeymap'
MYOSGLUE.c:(.text.startup+0x19ef): undefined reference to `XRaiseWindow'
MYOSGLUE.c:(.text.startup+0x1a09): undefined reference to `XSetInputFocus'
MYOSGLUE.c:(.text.startup+0x1aa1): undefined reference to `XRootWindow'
MYOSGLUE.c:(.text.startup+0x1af4): undefined reference to `XGetGeometry'
MYOSGLUE.c:(.text.startup+0x1b02): undefined reference to `XSync'
MYOSGLUE.c:(.text.startup+0x1b36): undefined reference to `XTranslateCoordinates'
MYOSGLUE.c:(.text.startup+0x1c6b): undefined reference to `XGetSelectionOwner'
MYOSGLUE.c:(.text.startup+0x1ca7): undefined reference to `XSetSelectionOwner'
MYOSGLUE.c:(.text.startup+0x1d8b): undefined reference to `XGrabKeyboard'
MYOSGLUE.c:(.text.startup+0x1ecc): undefined reference to `XDefineCursor'
MYOSGLUE.c:(.text.startup+0x1ee1): undefined reference to `XUndefineCursor'
MYOSGLUE.c:(.text.startup+0x216d): undefined reference to `snd_pcm_close'
MYOSGLUE.c:(.text.startup+0x21e3): undefined reference to `XFreeCursor'
MYOSGLUE.c:(.text.startup+0x222f): undefined reference to `XCloseDisplay'
collect2: ld devolvió el estado de salida 1
make: *** [minivmac] Error 1
Ohrer
Space Cadet
Posts: 3
Joined: Sun Mar 18, 2012 9:44 pm

Re: Building Mini vMac on Ubuntu 11.10 Oneiric Ocelot 64bit

Post by Ohrer »

I think it has something to do with this location: "/usr/X11R6/lib". But I dont know where are those libraries now.
User avatar
gryphel
Nice Guy
Posts: 106
Joined: Sat Nov 17, 2007 6:46 pm

Re: Building Mini vMac on Ubuntu 11.10 Oneiric Ocelot 64bit

Post by gryphel »

An issue I've found in Ubuntu 11.10 is that there is a conventional order for how libraries should be specified in the link command, which I didn't know since I hadn't come a across a linker that cared before. Libaries need to come after program object files.
(A reference)

This is fixed in the 3.3 development branch.
Ohrer
Space Cadet
Posts: 3
Joined: Sun Mar 18, 2012 9:44 pm

Re: Building Mini vMac on Ubuntu 11.10 Oneiric Ocelot 64bit

Post by Ohrer »

Thanks for answering so fast. It worked, I set the libraries like this:

Code: Select all

gcc \
		-o "minivmac" \
		$(ObjFiles) -L/usr/X11R6/lib -lXext -lX11 -lasound
Thank you.
Post Reply