1. 程式人生 > >黑蘋果安裝使用 macos10.14 on vmware15 or virtualbox

黑蘋果安裝使用 macos10.14 on vmware15 or virtualbox

01 基本資訊

:: 安裝最新virtualbox
https://download.virtualbox.org/virtualbox/5.2.18/VirtualBox-5.2.18-124319-Win.exe
https://download.virtualbox.org/virtualbox/5.2.18/Oracle_VM_VirtualBox_Extension_Pack-5.2.18.vbox-extpack

:: 按照https://www.cnblogs.com/liming2017/p/7566953.html說明,安裝macos10.12
d:
cd D:\install\oracle\VirtualBox
VBoxManage.exe modifyvm MacOS10.12 --cpuidset 00000001 000106e5 00100800 0098e3fd bfebfbff
VBoxManage setextradata MacOS10.12 "VBoxInternal/Devices/efi/0/Config/DmiSystemProduct" "iMac11,3"
VBoxManage setextradata MacOS10.12 "VBoxInternal/Devices/efi/0/Config/DmiSystemVersion" "1.0"
VBoxManage setextradata MacOS10.12 "VBoxInternal/Devices/efi/0/Config/DmiBoardProduct" "Iloveapple"
VBoxManage setextradata MacOS10.12 "VBoxInternal/Devices/smc/0/Config/DeviceKey" "ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc"
VBoxManage setextradata MacOS10.12 "VBoxInternal/Devices/smc/0/Config/GetKeyFromRealSMC" 1

02 安裝xcode

以上安裝後的是純潔的系統。如果嘗試編譯開源軟體。需要自己安裝xcode。
比如,編譯mac下面的obs-studio。
建議先安裝xcode,再下載Qt。

git clone --recursive https://github.com/obsproject/obs-studio.git
cd obs-studio

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
sudo xcode-select --switch /Applications/Xcode.app/

這個動作會直接安裝Command Line Tools,下載時間比較長。


brew install git
brew install wget

brew list               // 列出已安裝的軟體

brew update        // 更新
brew
brew home   // 用瀏覽器開啟brew的官方網站
brew info             // 顯示軟體資訊

brew deps            // 顯示包依賴

# 安裝cmake-gui需要手動下載安裝包
# https://cmake.org/download/
# https://cmake.org/files/v3.12/cmake-3.12.3-Darwin-x86_64.dmg

brew install cmake
brew install make
brew install FFmpeg
brew install x264

qt.io 註冊賬號,下載mac版本qt。
qt的下載較繁瑣,也比較耗時,僅選擇自己需要的版本即可。

下載完成後,使用cmake-gui配置xcode工程。主要是配置qt的路徑。
把obs-studio 程式碼切換到 22.0.3穩定tag,然後用xcode9.2編譯。可以順利編譯通過。如果要執行,還需要把qt的依賴庫連結到當前目錄。
根據官網說明下載obs-studio
./obs
dyld: Library not loaded: @rpath/QtWidgets.framework/Version/5/QtWidgets Referenced from: /Users/soft/git/obs-studio/build/mac/installbin./obs
Reason: image not found

ln -s /Users/soft/Qt/5.11.2/clang_64/lib/QtCore.framework ./QtCore.framework
ln -s /Users/soft/Qt/5.11.2/clang_64/lib/QtGui.framework ./QtGui.framework
ln -s /Users/soft/Qt/5.11.2/clang_64/lib/QtMacExtras.framework ./QtMacExtras.framework
ln -s /Users/soft/Qt/5.11.2/clang_64/lib/QtWidgets.framework ./QtWidgets.framework

# git clone --recursive https://gitlab.cdnunion.com/XMF/xmfmac.git xmfmac1

macos10.12.6 只能不能安裝xcode9.4,可以安裝xcode9.2

03 cmake-gui找不到xcode的c、c++編譯器

用cmake生成xcode專案時候,提示找不到 c和c++編譯器,需要執行下面指令即可
且當控制檯無法使用gcc指令,也同樣執行下面命令

sudo xcode-select --switch /Applications/Xcode.app/

04 卡在DSMOS has arrived的解決辦法

/sbin/fsck -fy
/sbin/mount -uw /
chmod -R 755 mach_kernel
chown -R root:wheel mach_kernel
chmod -R 755 /System/Library/Extensions/
chown -R root:wheel /System/Library/Extensions/
rm -rf /System/Library/Caches/*
reboot

05 macos10.14啟動usb盤製作

下載好完整安裝檔案後,用如下命令寫入usb盤.
一個8GBusb2.0的u盤,插入後,會在桌面顯示為Untitled.
(/Volumes/Untitled是usb的裝置名稱)
使用金士頓64GB的usb3.0U盤可以。

sudo /Applications/Install\ macOS\ Mojave.app/Contents/Resources/createinstallmedia --volume /Volumes/Untitled/ /Applications/Install\ macOS\ Mojave.app
# 輸入密碼
# Ready to start.
# To continue we need to erase the volume at /Volumes/Untitled/.
# If you wish to continue type (Y) then press return: Y
Erasing disk: 0%... 10%... 20%... 30%... 100%
Copying to disk: 0%... 10%... 20%... 30%... 100%

在這裡插入圖片描述

06 製作macOS 10.12 ISO安裝檔案

hdiutil attach /Applications/Install\ macOS\ Sierra.app/Contents/SharedSupport/InstallESD.dmg -noverify -nobrowse -mountpoint /Volumes/install_app
hdiutil create -o /tmp/Sierra.cdr -size 7316m -layout SPUD -fs HFS+J
hdiutil attach /tmp/Sierra.cdr.dmg -noverify -nobrowse -mountpoint /Volumes/install_build
asr restore -source /Volumes/install_app/BaseSystem.dmg -target /Volumes/install_build -noprompt -noverify -erase
rm /Volumes/OS\ X\ Base\ System/System/Installation/Packages
cp -rp /Volumes/install_app/Packages /Volumes/OS\ X\ Base\ System/System/Installation/
cp -rp /Volumes/install_app/BaseSystem.chunklist /Volumes/OS\ X\ Base\ System/BaseSystem.chunklist
cp -rp /Volumes/install_app/BaseSystem.dmg /Volumes/OS\ X\ Base\ System/BaseSystem.dmg
hdiutil detach /Volumes/install_app
hdiutil detach /Volumes/OS\ X\ Base\ System/
hdiutil convert /tmp/Sierra.cdr.dmg -format UDTO -o /tmp/Sierra.iso
mv /tmp/Sierra.iso.cdr ~/Desktop/Sierra.iso

驗證修改處

install_app和install_build可以自己任意名,
BaseSystem.dmg和BaseSystem.chunklist是在/Applications/Install\ macOS\ Sierra.app/Contents/SharedSupport/目錄下
這樣製作的iso檔案,在VMWare下可以直接啟動到安裝介面
在virtualbox下面,需要用virtualbox的命令列設定好配置項後,才能正常啟動。參加 01 中的 https://www.cnblogs.com/liming2017/p/7566953.html

hdiutil attach /Applications/Install\ macOS\ Sierra.app/Contents/SharedSupport/InstallESD.dmg -noverify -nobrowse -mountpoint /Volumes/install_app
hdiutil create -o /tmp/Sierra.cdr -size 7316m -layout SPUD -fs HFS+J
hdiutil attach /tmp/Sierra.cdr.dmg -noverify -nobrowse -mountpoint /Volumes/install_build
asr restore -source /Applications/Install\ macOS\ Sierra.app/Contents/SharedSupport/BaseSystem.dmg -target /Volumes/install_build -noprompt -noverify -erase
rm /Volumes/OS\ X\ Base\ System/System/Installation/Packages
cp -rp /Volumes/install_app/Packages /Volumes/OS\ X\ Base\ System/System/Installation/
cp -rp /Applications/Install\ macOS\ Sierra.app/Contents/SharedSupport/BaseSystem.chunklist /Volumes/OS\ X\ Base\ System/BaseSystem.chunklist
cp -rp /Applications/Install\ macOS\ Sierra.app/Contents/SharedSupport/BaseSystem.dmg /Volumes/OS\ X\ Base\ System/BaseSystem.dmg
hdiutil detach /Volumes/install_app
hdiutil detach /Volumes/OS\ X\ Base\ System/
hdiutil convert /tmp/Sierra.cdr.dmg -format UDTO -o /tmp/Sierra.iso
mv /tmp/Sierra.iso.cdr ~/Desktop/Sierra.iso

07 Mac上將dmg檔案轉成iso的方法

hdiutil convert ~/Downloads/OSX109.dmg -format UDTO -o ~/Downloads/OSX109.iso

08 參考