Avanti Indietro Indice

6. Far girare programmi binari estranei

6.1 Far girare programmi binari di FreeBSD sotto Linux

Il pacchetto iBCS supporta l'esecuzione di binari FreeBSD sotto Linux; ma è vecchio e non più mantenuto. Io non sono riuscito a farlo funzionare. Per favore fatemi sapere se avete avuto migliore fortuna con questo pacchetto.

6.2 Far girare programmi binari di Linux sotto FreeBSD

FreeBSD ha la possibilità di far girare binari Linux, sia nei formati a.out che ELF. Per fare questo dovete seguire i seguenti tre passaggi: To do this you have to take the following three steps:

  1. Dovete abilitare la compatibilità con Linux. Per fare questo (in FreeBSD 2.2.2 --- alcuni dettagli possono essere diversi in altre versioni) dovete editare il vostro file /etc/rc.conf e cambiare
    linux_enable="NO"
    
    in
    linux_enable="YES"
    
    e riavviare. Un altro modo per caricare il supporto binario con Linux è quello di eseguire il comando /usr/bin/linux. In questo modo non dovete riavviare e non avete il supporto binario di Linux sempre caricato (cioè si risparmia memoria.) Ricordate di aggiungere la riga
    options         COMPAT_LINUX
    
    nel file config del kernel FreeBSD se compilate un nuovo kernel FreeBSD.
  2. Dovete installare le librerie condivise di Linux se i vostri binari Linux sono linkati dinamicamente. Le librerie sono incluse in FreeBSD 2.2.{2,5,6} come pacchetto linux_lib-2.4.tgz (nuove versioni potrebbero essere disponibili). Lanciate il comando seguente per installare il pacchetto:
    pkg_add <path_del_package>/linux_lib-2.4.tgz
    
    <path_del_package> è la directory che contiene il pacchetto. Potete anche scaricare il pacchetto dalla rete con:
    pkg_add ftp://ftp.freebsd.org/pub/FreeBSD/packages-stable/All/linux_lib-2.4.tgz
    
    o rilanciando /stand/sysinstall. Entrate in ``Configure'', ``Packages'' e usate i menù. Dovrete eseguire il comando seguente se state lanciando binari Linux linkati staticamente:
    brandelf -t Linux <nome_del_binario_linux_linkato_staticamente>
    
  3. Installare i programmi Linux che volete lanciare. I programmi possono essere installati sia su filesystem UFS sia su filesystem ext2fs. Vedere la sezione Montare filesystems ext2fs sotto FreeBSD per maggiori informazioni riguardo l'uso di filesystems ext2fs sotto FreeBSD.

Ho eseguito con successo le versioni Linux di Applixware 4.3 e Netscape 3.01 (ambedue in formato ELF) sotto FreeBSD 2.2.2 usando questo metodo (sì, so che esiste una versione nativa di Netscape 4 per FreeBSD). Anche le versioni Linux di acroread e StarOffice 3 e 4 lavorano bene sotto FreeBSD. StarOffice 5 dipende dai threads nativi di Linux e attualmente non funziona sotto FreeBSD. Leggete la documentazione FreeBSD per maggiori informazioni a questo riguardo.


Avanti Indietro Indice