User Tools

Site Tools


maconlinux

http://www.maconlinux.org/

C'est un émulateur pour faire tourner MacOS sous Linux PPC.

Dans la version actuelle (0.9.7), Tiger (MacOs X.4) ne tourne pas. Mais il y a un 1) qui existe, mais testé sur la version du cvs :(

Il faut aussi un 2) pour le noyau puisque j'ai Linux 2.6.12.

3) pour Ubuntu.

Apparemment, c'est 4).

v. 0.9.70

Installation

J'ai modifié mon sources.list pour avoir main restricted universe multiverse (binaires et sources).

sudo apt-get install mol-modules-source build-essential linux-headers-$(uname -r)
sudo apt-get install debhelper m4
cd /usr/src
sudo tar xzvf mol-modules.tar.gz
export KVERS="$(uname -r)"
export KSRC="/usr/src/linux-headers-$(uname -r)"
export KEMAIL="your@email.address"
export KMAINT="Your Name"
export KDREV="ubuntu0"

Télécharger le patch pour le noyau 2.6.12:

cd
http://arrakin.homedns.org/~nicolas/mol-0.9.70_patch_2.6.14-rc1.diff

Appliquer le patch.

cd /usr/src/modules
mv mol/ mol-0.9.70.orig
sudo patch -p0 -u < ~/mol-0.9.70_patch_2.6.14-rc1.diff
sudo mv mol-0.9.70.orig/ mol

Télécharger le patch pour Tiger:

cd
wget http://www-user.rhrk.uni-kl.de/%7Enissler/mol/mol_rsync_tiger.diff

Appliquer le second patch.

cd /usr/src/modules
sudo mv mol mol-rsync-test
sudo patch -p0 -u < ~/mol__rsync_tiger.diff
sudo mv mol-rsync-test mol

Il n'arrive pas à appliquer le patch sur le dernier fichier qui n'existe pas.

Compiler les modules:

cd /usr/src/modules/mol
sudo debian/rules build
sudo debian/rules binary-mol-modules

Il y a maintenant un modules /usr/src/mol-modules-2.6.12-10-powerpc_0.9.70+ubuntu0_powerpc.deb qu'il faut installer:

sudo dpkg -i /usr/src/mol-modules-2.6.12-10-powerpc_0.9.70+ubuntu0_powerpc.deb

Installer le reste:

sudo apt-get install mol mol-drivers-macosx

C'est pour ce dernier package qu'on a besoin de multiverse.

cd /usr/src/modules/mol
sudo make install
sudo /sbin/depmod

Il reste à changer le bootloader pour que ça tourne avec Tiger:

cd
wget http://www-user.rhrk.uni-kl.de/~nissler/mol/bootx.gz
sudo mv /usr/share/mol/drivers/bootx /usr/share/mol/drivers/bootx.orig
gunzip bootx.gz
sudo mv bootx /usr/share/mol/drivers/

Pour pouvoir lancer mol en tant que simple utilisateur:

sudo dpkg-statoverride --update --add root root 4755 /usr/lib/mol/bin/mol

Configuration

Changer la taille de la RAM dans /etc/mol/molrc.osx:

ram_size:               96

Passer à 256.

Ensuite, configurer les modes video:

sudo molvconfig

Utilisation

startmol --osx

Ça marche pas :(

startmol --osx
Mac-on-Linux 0.9.70 [Jul 23 2005 19:20]
Copyright (C) 1997-2004 Samuel Rydh
Starting MOL session 1
Loading Mac-on-Linux kernel module:
insmod /lib/modules/2.6.12-10-powerpc/misc/mol.ko
FATAL: Error inserting mol (/lib/modules/2.6.12-10-powerpc/misc/mol.ko): Unknown symbol in module, or unknown parameter (see dmesg)
====================================================================
  Failed to load the Mac-on-Linux kernel module -- please install
  mol-modules-source and build your own, or find a binary package
  providing mol-modules for your running kernel.
====================================================================

Quand je fais dmesg:

[470612.289813] mol: Unknown symbol check_bit_mol

C'est sûrement parce que j'ai pas la version cvs :(

Donc, je vais essayer avec la version de gentoo: http://dev.gentoo.org/~josejx/mol-0.9.71_pre6.tar.bz2

v. 09.71_pre6

Installation

Qui date du 01/12/05

wget http://dev.gentoo.org/~josejx/mol-0.9.71_pre6.tar.bz2
wget http://dev.gentoo.org/~josejx/mol-0.9.71_pre6.tar.bz2.md5
md5sum -c mol-0.9.71_pre6.tar.bz2.md5
sudo tar xjf mol-0.9.71_pre6.tar.bz2 -C /usr/src/
sudo aptitude install autoconf
cd /usr/src/mol-0.9.71_pre6
sudo ./autogen.sh
sudo make

Donne des erreurs :( Il me manque sans doute des bibliothèques pour compiler…

sudo aptitude install libncurses5-dev

Ça va mieux. J'ai le menu de compilation, que je ne change pas, et ensuite, j'ai de nouveau des erreurs:

+ Entering video
    Compiling    vncvideo.o
cc1: note: obsolete option -I- used, please use -iquote instead
vncvideo.c:57:22: error: X11/Xlib.h: No such file or directory
vncvideo.c:58:23: error: X11/Xutil.h: No such file or directory
vncvideo.c:59:24: error: X11/keysym.h: No such file or directory
vncvideo.c:60:33: error: X11/extensions/XShm.h: No such file or directory

C'est peut-être parce qu'on a pas X11 mais xorg??? Donc, je change la config:

sudo make config

Je ne prends pas X11 ni VNC ni OSS et puis je recommence.

Autre erreur:

+ Entering netdriver
make[4]: *** No rule to make target `/usr/src/mol-0.9.71_pre6/obj-ppc/build/src/netdriver/tun.c', needed by `/usr/src/mol-0.9.71_pre6/obj-ppc/build/src/netdriver/tun.o'.  Stop.
make[3]: *** [_module_/usr/src/mol-0.9.71_pre6/obj-ppc/build/src/netdriver] Error 2

Encore changé la config (X11 mais pas VNC, ça a l'air OK). Ça coince encore:

+ Entering netdriver
make[4]: *** No rule to make target `/usr/src/mol-0.9.71_pre6/obj-ppc/build/src/netdriver/ethertap.c', needed by `/usr/src/mol-0.9.71_pre6/obj-ppc/build/src/netdriver/ethertap.o'.  Stop.
make[3]: *** [_module_/usr/src/mol-0.9.71_pre6/obj-ppc/build/src/netdriver] Error 2

Finalement, ça a marché avec le fichier .config-ppc suivant:

#
# Automatically generated make config: don't edit
#
CONFIG_PPC=y
# CONFIG_OLDWORLD is not set
CONFIG_FBDEV=y
CONFIG_X11=y
# CONFIG_VNC is not set
# CONFIG_XDGA is not set
CONFIG_ALSA=y
CONFIG_OSS=y
CONFIG_USBDEV=y
CONFIG_PCIPROXY=y

#
# Debugging
#
# CONFIG_DEBUGGER is not set
# CONFIG_TTYDRIVER is not set
# CONFIG_SCSIDEBUG is not set
# CONFIG_DUMP_PACKETS is not set
# CONFIG_DHCP_DEBUG is not set
# CONFIG_HOSTED is not set

#
# Network drivers
#
# CONFIG_TUN is not set
# CONFIG_TAP is not set
CONFIG_SHEEP=y
make libimport

Ne fonctionne pas:

scripts/libimport import
==========================================================
 Downloading binaries from rsync.penguinppc.org::libmol
==========================================================
@ERROR: Unknown module 'libmol'
rsync error: error starting client-server protocol (code 5) at main.c(1171)
An error occurred, retrying...
@ERROR: Unknown module 'libmol'
rsync error: error starting client-server protocol (code 5) at main.c(1171)
An error ocurred, trying secondary rsync server (master.penguinppc.org::libmol).
@ERROR: Unknown module 'libmol'
rsync error: error starting client-server protocol (code 5) at main.c(1171)
make: *** [libimport] Error 1

Alors j'ai fait:

make install

Quand j'essaie, ça marche pas. C'est parce qu'il charge toujours les modules mol.ko et sheep.ko de l'installation précédente. Donc j'ai chargé les modules manuellement:

insmod /usr/local/lib/mol/0.9.71/modules/2.6.12-10-powerpc/mol.ko
insmod /usr/local/lib/mol/0.9.71/modules/2.6.12-10-powerpc/sheep.ko

Puis j'ai tapé

startmol -X

Et il s'est plaint de ne pas avoir de résolution convenable. Donc, j'ai refait

sudo molvconfig

Et lorsque j'ai refait

startmol -X

Ça a fonctionné!!!

Sauf le réseau, mais apparemment c'est normal, il faut un DHCP sur la machine qui tourne Linux (cf. la doc).

La console est sur F8 et pour revenir à Linux, c'est ctrl + alt + F7.

Pour installer les modules à la bonne place:

sudo cp /usr/src/mol-0.9.71_pre6/obj-ppc/lib/modules/2.6.12-10-powerpc/* /lib/modules/2.6.12-10-powerpc/misc/
sudo /sbin/depmod

configuration réseau

On dirait que ça va être difficile, vu que tun et tap ne sont pas compilés parce que ça foirait…

Eh bien peut-être que ça peut marcher: 5).

Essayons.

sudo apt-get install ipmasq dnsmasq dhcpd

Dans le fichier /etc/default/dhcp, mettre la ligne:

INTERFACES="tun0"

Dans /etc/mol/molrc.net, ajouter la ligne:

netdev: tun0 -tun

Dans /etc/mol/tunconfig, just avant la dernière ligne:

exit 0

ajouter:

/etc/init.d/ipmasq restart
/etc/init.d/dnsmasq restart

Puis redémarrer:

startmol -X

La première chose à faire, c'est d'installer l'archive mol qui est sur le bureau.

Ensuite, il faut configurer l'interface en1 sous MacOs. J'ai pas réussi à faire fonctionner en DHCP, donc j'ai regardé sous GnuLinux la configuration réseau:

ifconfig tun0
tun0      Link encap:Ethernet  HWaddr AA:AE:F5:38:53:06
          inet addr:192.168.40.1  Bcast:192.168.40.255  Mask:255.255.255.0
          inet6 addr: fe80::a8ae:f5ff:fe38:5306/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2497 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2685 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:500
          RX bytes:259899 (253.8 KiB)  TX bytes:1914477 (1.8 MiB)

J'ai donc mis une adresse IP statisque dans ce réseau avec 192.168.40.1 comme gateway.

maconlinux.txt · Last modified: 2013/01/30 17:51 by 127.0.0.1