Prerequisites on Mac OS X
- 10.10.x (Yosemite) or later running on Intel hardware (PowerPC hardware is not supported nor is building an X11 variant).
Then perform the following command:
sudo port install libidl acpica yasm subversion doxygen texlive texlive-latex-extra texlive-fonts-extra x86_64-elf-gcc
Doxygen, texlive* and x86_64-elf-gcc are optional (first two for documentation, latter for the validation kit).
- Qt/Mac 5.,6 eller nyere ( http://qt.nokia.com/downloads/qt-for-open-source-cpp-development-on-mac-os-x)
- Mates selv-bygget kernel utvidelser (kexts) på nyere OS X kan kreve endringer i system-config-med mindre du har en kext signere sertifikatet og kjører 10.14 (High Sierra) eller tidligere.For 10.11 (El Capitan (naturformasjon) og senere oppstart til utvinning partisjon og enten slik at lasting av usignerte kexts:
csrutil enable --without kext
eller deaktivere SIP alle sammen:
csrutil disable
For 10.,15 (Catalina) og senere må du også deaktivere starte kravet (også fra gjenopprettingspartisjonen):
spctl kext-consent disable
Hvis du kjører 10.10 (Yosemite) det er en boot-args alternativet for å tillate lasting av usignerte kexts. Kjør følgende og starter maskinen på nytt:
sudo nvram boot-args="kext-dev-mode=1"
Bygning VirtualBox
- Endre til roten av kilder og bruke til å konfigurere manus:
./configure --disable-hardening
Du kan manuelt sette mål arkitektur med –mål-bue=x86 eller amd64, hvis noen arkitektur relaterte problemer oppstår.,
Dersom den finner alt den trenger, det vil opprette en fil som heter !AutoConfig.kmk inneholder stier til de ulike verktøyene på systemet. Også, vil det skape et miljø setup script kalt env.sh. Dette trinnet har bare gjøres en gang (hvis noe endringer i bygge-verktøyet for oppsett, du kan ha til å gjenta det, men husk at både utgang filer blir overskrevet).
- Når du ønsker å bygge VirtualBox, må du åpne et skall og kilde generert miljø setup script env.sh, dvs., gjør
. ./env.sh
- for Å bygge type
kmk
standard er til en utgivelse bygge, bør du ønsker å gjøre en debug-eller profil bygge legge til BUILD_TYPE=debug eller BUILD_TYPE=profilen som argument for å kmk eller eksportere dem som en miljøvariabel i skallet.
Kjører VirtualBox
- Last inn alle kernel extension moduler. Disse kan bli funnet i ut/darwin.x86/release/dist sammen med et lite script (loadall.sh) for å laste dem. Utfør og kontroller den moduler laster vellykket.
- Skriv ut/darwin.x86/release/dist/VirtualBox.,app/Contents/MacOS/.
- Kjør ./VirtualBox
Bygning OSE pakker for distribusjon
Aldri deaktivere herding (se forrige avsnitt) når du oppretter pakker for omfordeling.
Herding trenger noen ekstra konfigurasjon og post-bygge trinn. Standard installasjon katalogen av VirtualBox /Programmer/VirtualBox.program/. Dersom du ønsker å endre det, sier i /Programmer/OpenSource/VirtualBox.app/, må du legge følgende til LocalConfig.kmk:
Det kan også være fornuftig å deaktivere noen av utviklingen eneste ting, som test tilfeller., Legg til følgende for å LocalConfig.kmk:
VBOX_WITH_TESTSUITE=VBOX_WITH_TESTCASES=
du Starter med VirtualBox 4.1, ekstra debug-symboler er skapt. Du kan hindre at ved å legge følgende til LocalConfig.kmk:
kBuildGlobalDefaults_LD_DEBUG=
Neste gjenoppbygge VirtualBox og installere den inn i /Programmer/OpenSource/. Det er ikke noen støtte for å installere VirtualBox i en target-katalogen. Bare kopiere filer til målet. Nå sørge for at setuid stubber har de riktige tillatelsene:
et krav om herding er at hver bane del av den overordnede katalogen i VirtualBox.,app/ er eid av root og ikke verden skrivbar. Sørg for at dette er tilfelle.
Relative vs. absolutte stier i brukt biblioteker
Hvis du ser noe som følgende feilmelding når du starter VirtualBox du trenger å endre brukt biblioteker for å bruke absolutte stier.
På Mac OS X det er ikke tillatt å bruke biblioteker med relative stier for å referere til andre biblioteker når den kjørbare filen er setuid. Du kan vise alle knyttet biblioteker med følgende kommando:
otool -L /Applications/VirtualBox.app/Contents/MacOS/VirtualBox.dylib
Neste, forutsatt at Qt er installert i /Programmer/VirtualBox.,app/Contents/Frameworks/, du kan endre banen ved hjelp av dette:
Den første kommandoen endringer identifikator av biblioteket selv. Den andre endringer referanser til andre biblioteker. Det, den første banen er den gamle refereres til bane, og den andre er den nye banen, og den siste veien er filen som skal endres (se mennesket install_name_tool). Merk at du må gjenta dette for hvert bibliotek som er involvert (minst VirtualBox.dylib, QtCore, QtGui, QtNetwork, QtOpenGl).