Czy istnieje sposób na uruchomienie pliku binarnego systemu Linux na macOS?
16
Czy istnieje sposób na uruchomienie binarnego systemu Linux w systemie macOS? Próbowałem uruchomić plik binarny, ale powiedział, że nie jest wykonywalny.
To nie zadziała. Jądro OSX różni się nieco od jądra Linux.
ott--
Cóż, OS X nie używa plików binarnych elfów, więc to trochę jak próba uruchomienia Windowsa .exe. Jednak krótkie wyszukiwanie stwierdza: osxbook.com/software/xbinary Jeśli możesz ponownie skompilować kod, nie stanowi to problemu.
Orion
XBinary wymaga programu, który umie uruchomić Twój plik binarny; samo w sobie nic nie uruchamia.
saagarjha
Odpowiedzi:
9
Te odpowiedzi są w połowie poprawne, ponieważ wirtualizacja jest wyborem, ale jest jeszcze jedna. Czy mogę przedstawić ...
W 1977 r. Za 90 USD Bob Fabry i inni opracowali / zbudowali pierwsze wersje BSD, skrót od Berkeley Systems Distribution.
W 1991 roku Linus Torvalds opublikował w grupie dyskusyjnej informacje na temat oprogramowania, którego używał od Richarda Stallmana, który założył GNU w 1983 roku, i narodził się Linus'es UNIX.
Firma Apple ponownie nabyła oprogramowanie NeXT w 1996 r., Po tym jak Steve Jobs został zwolniony z firmy Apple w 1984 r., I wykorzystał oprogramowanie i ludzi, aby zbudować system OS X. OS X to system operacyjny Darwin OS + środowisko graficzne NeXT. A teraz wracamy do Bullet # 1, ponieważ Darwin to rozwidlenie BSD o zamkniętym źródle. Projekt Open Source znajduje się w PureDarwin . Aby uzyskać oficjalną stronę programistów Apple, zobacz Apple Open Source .
Jak możemy to wykorzystać
BSD tradycyjnie używają systemu portów do zarządzania pakietami. Najczęściej stosowanymi z nich są porty FreeBSD . Porty to pakiety instalowane bezpośrednio ze źródła. Ponieważ te same aplikacje systemu Linux pochodzą z tych samych źródeł , można uruchomić aplikację systemu Linux, jeśli jej port istnieje. Nie używaj tych portów na komputerze Mac, ponieważ ...
W skład XCode wchodzi kompilator GCC firmy Apple oraz wszystkie inne powiązane narzędzia. Aby zaktualizować narzędzia, zobacz ten post na StackOverflow . Narzędzia są zależne od wersji systemu operacyjnego, tj. Nie są one kompatybilne wstecz , o ile mi wiadomo (w skrócie, nie instaluj XCode dla 10.8 na 10.6 itp.)
Niedawno zacząłem używać Noah do uruchamiania plików binarnych systemu Linux w systemie macOS. Możesz zainstalować za pomocą homebrew ( brew install linux-noah/noah/noah). Powinieneś być w stanie to zrobić:
noah linux_binary
Z mojego doświadczenia wynika, że zachowanie pliku binarnego pasuje do tego, co widzę na moim komputerze Ubuntu.
chociaż komenda pracował i nie powstanie żadne błędy, moi binarne nie działa zgodnie z oczekiwaniami
techkuz
2
Jedyny sposób, w jaki wiem, że można tego dokonać za pomocą wirtualizacji . Na przykład możesz użyć włóczęgi, która jest swego rodzaju opakowaniem wokół VBox Oracle lub vmplayer VMware. Inną rzeczą, którą czasami się robi, jest umieszczenie tego w pojemniku, takim jak doker .
Nie bezpośrednio! Tak, jak powiedział Rocky, musisz zwirtualizować go za pomocą VirtualBox , VMWare Fusion , który będzie pasował do twojego typu procesora.
Istnieje również Qemu , który zwirtualizuje różne typy procesorów, np. Intel lub Power itp.
Emulacja oprogramowania
Istnieje również emulacja warstwy oprogramowania, z programami takimi jak WiNE i moim własnym programem emulayer (WiP) Oba z nich częściowo emulują system operacyjny Windows poprzez konwersję wywołań systemowych na POSIX.
Większość aplikacji Linux będzie działać na OSX z rekompilacją źródłową.
Odpowiedzi:
Te odpowiedzi są w połowie poprawne, ponieważ wirtualizacja jest wyborem, ale jest jeszcze jedna. Czy mogę przedstawić ...
Historia
Jak możemy to wykorzystać
BSD tradycyjnie używają systemu portów do zarządzania pakietami. Najczęściej stosowanymi z nich są porty FreeBSD . Porty to pakiety instalowane bezpośrednio ze źródła. Ponieważ te same aplikacje systemu Linux pochodzą z tych samych źródeł , można uruchomić aplikację systemu Linux, jeśli jej port istnieje. Nie używaj tych portów na komputerze Mac, ponieważ ...
Ponieważ wszystkie GUI Apple'a są napisane przy użyciu API Cocoa - WikiEntry , w pakiecie z XCode - OS X dla programistów , porty można dostroić, aby skorzystać z tego:
Zastrzeżenie
System portów niekoniecznie wykonuje sprawdzanie zależności, chyba że port był dobrze napisany. Lekko dotknąłem problemu, co oznacza elibc_FreeBSD w nakładkach portage gentoo?
źródło
Niedawno zacząłem używać Noah do uruchamiania plików binarnych systemu Linux w systemie macOS. Możesz zainstalować za pomocą homebrew (
brew install linux-noah/noah/noah
). Powinieneś być w stanie to zrobić:Z mojego doświadczenia wynika, że zachowanie pliku binarnego pasuje do tego, co widzę na moim komputerze Ubuntu.
źródło
Jedyny sposób, w jaki wiem, że można tego dokonać za pomocą wirtualizacji . Na przykład możesz użyć włóczęgi, która jest swego rodzaju opakowaniem wokół VBox Oracle lub vmplayer VMware. Inną rzeczą, którą czasami się robi, jest umieszczenie tego w pojemniku, takim jak doker .
źródło
Emulacja sprzętu
Nie bezpośrednio! Tak, jak powiedział Rocky, musisz zwirtualizować go za pomocą VirtualBox , VMWare Fusion , który będzie pasował do twojego typu procesora.
Istnieje również Qemu , który zwirtualizuje różne typy procesorów, np. Intel lub Power itp.
Emulacja oprogramowania
Istnieje również emulacja warstwy oprogramowania, z programami takimi jak WiNE i moim własnym programem emulayer (WiP) Oba z nich częściowo emulują system operacyjny Windows poprzez konwersję wywołań systemowych na POSIX.
Większość aplikacji Linux będzie działać na OSX z rekompilacją źródłową.
źródło