Faq / MacOSX
How to build (X)MedCon on MacOS X?
By Paolo Marcheschi
Backup your data first !!!
First of all you need a Mac with MacOS X 10.1 installed. I have an iMAC with MacOs 9.2 and MacOS X 10.1 on the same partition (Macintosh HD). Make sure the "Developers Tools" are installed because later on you'll need to compile (X)MedCon's source. To run properly, (X)MedCon needs the Gtk+1.2 libraries and XFree86 installed. The way to install these packages are crucial in making other things work. I choose a way to install packages that is near unix confortable way, using fink and dselect. This way is pretty different from the usual Macintosh way, so follow me. First of all, you must have a lot of patience, a fast internet connection and root access. To have the root access you must have the root password, even if you have admin rights you don't have root rights. To have root access you have to log in as root. If you open a Terminal type:
sudo su Password:
If your password does not work you have to reset system passwords starting your Macintosh again with the MacOS X CD inside and the C key pressed.
So: Go to http://fink.sourceforge.net go to the download page and download the fink binary, it is a huge package of 6.7 Mb. After the download Double-click fink-0.3.0-installer.dmg to mount the disk image, then double-click the Fink 0.3.0 Installer.pkg package inside. Follow the instructions on screen. To make sure that the correct path is set to reach the executables you need to open a new terminal (from the applications/utilities/ folder) and edit a new file .cshrc in your home dir, if you use tcsh shell. You can use vi or pico to do it, its up to you, if you learn vi I think is better. You have to put the line:
After that you must open a new shell or issue a command:
To re-read the file you have just changed. If you reach this point, you are ready to install packages like Gtk+ libraries and XFree86. Start a terminal shell, from user root, type the command dselect.
You will be prompted with the frontend of dselect package. Do NOT select the access method [A] because this will overwrite the fink preconfigurations. Instead, directly choose [U]pdate list for available packages. Then choose [S]elect for the packages you like on your system.
Basic instruction for using dselect
choose the following packages:
If you dont like fvwm you can choose another window Manager. you may want to download various libjpeg libtiff ... , I downloaded them all.
After accepting all dependencies you can go to the Install procedure and after a while..... Press the [C]onfig packages, and finally [Q]uit.
Now you have an X-server and various utilities ready to run. to start the server you need to edit a file named .xinitrc in your home dir. You can copy the one from /usr/X11R6/etc/xinit/xinitrc to your home dir, remember the point in front of the file, this is the hidden file setting. You have to change the line
with your preferred window manager that you have downloaded:
After that try out the X-server. type: startx -- -quartz
A screen with the welcome to XFree86 will be presented. You can choose between Full Screen mode and Rootless mode. In "full screen" mode you have only native X applications in your screen, on the contrary in rootless mode you can mix MAC applications with X applications. First of all check the keymapping load from file to prevent the server from stopping suddenly (bug in MacOS X 10.1). At this point start the server clicking on Full screen button (you can return to MacOS X screen by pressing Cmd-Opt-a ). Press "Show X11" button et ...... You have a Linux alike computer ;-)
Now it is time to download the (X)MedCon software and compile it in the same way you do on any Unix OS.
Note on building shared libs with libtool-1.4.2: see for the convenience library bug workaround created by Dave Vasilevsky
If you are unfamiliar with Unix binary and library path settings, please take a look at the following info on this subject.
If you have any question or you want a binary version of (X)MedCon please write to me. Paolo Marcheschi paolo(at)ifc.cnr.it