existe uma maneira de executar um binário do Linux no OS X

11

Existe uma maneira de executar um binário do Linux no OS X? Eu tentei executar um binário, mas ele disse que não é executável.

    
por sudomakeinstall2 29.06.2015 / 01:03

4 respostas

6

Essas respostas são meio corretas, porque a virtualização é uma escolha, mas existe outra. Eu posso apresentar ...

História

  1. Primeiro, havia UNIX, por volta de 1972
  2. Em seguida, a divisão da linha do tempo
    • Em 1977, por US $ 90, Bob Fabry e outros , compilados / construiu as primeiras versões do BSD, abreviação de Berkeley Systems Distribution.
    • Em 1991, Linus Torvalds postou em um Newsgroup , sobre o software que ele usou de Richard Stallman, que iniciou o GNU em 1983, e Linus'es UNIX nasceu.
    • A Apple readquiriu a NeXT Software em 1996, depois que Steve Jobs foi demitido da Apple em 1984, e usou o software e as pessoas lá para construir o OS X. OS X é o Darwin OS + o ambiente de desktop NeXT. E agora estamos de volta ao Bullet # 1, já que o Darwin é um fork de código fechado do BSD. Para o projeto Open Source, veja PureDarwin . Para a página oficial de desenvolvedores da Apple, consulte Apple Open Source .

Como podemos usar isso

O BSD tradicionalmente usa o sistema Ports para o gerenciamento de pacotes. Os mais utilizados são os Ports do FreeBSD . Portas são pacotes instalados diretamente da fonte. Como os mesmos aplicativos Linux vêm das mesmas fontes , você pode executar um aplicativo Linux se a porta existir. Não use esses portes em um Mac porque ...

Como todas as GUIs da Apple são escritas usando a API de cacau - WikiEntry , empacotado com o XCode - OS X for Developers , as Portas podem ser ajustadas para aproveitar:

  1. Instale o XCode para sua versão do OS X.
  2. No pacote XCode está a versão da Apple do Compilador GCC e todas as outras ferramentas associadas. Para atualizar as ferramentas, consulte este post no StackOverflow . As ferramentas são dependentes da versão do sistema operacional, ou seja, elas não são compatíveis com versões anteriores , (em suma, não instale o XCode para 10.8 em 10.6, etc.)
  3. Tendo instalado o XCode, você agora tem um compilador e pode ir até a página MacPorts e procurar a porta que precisa ser instalada , após instalar o instalador do MacPorts .pkg

Advertência

O sistema de portas não faz necessariamente verificação de dependência, a menos que a porta esteja bem escrita. Eu toquei levemente no problema em o que significa elibc_FreeBSD em sobreposições do portage do gentoo?

    
por 29.06.2015 / 06:00
13

Recentemente, comecei a usar o Noah para executar binários do Linux no macOS. Você pode instalar usando homebrew ( brew install linux-noah/noah/noah ). Então você deve ser capaz de fazer isso:

noah linux_binary

Na minha experiência, o comportamento do binário corresponde ao que eu vejo na minha máquina Ubuntu.

    
por 12.08.2017 / 20:12
2

A única maneira que eu sei é que isso pode ser feito através de algum tipo de virtualização . Por exemplo, você pode usar o vagrant , que é uma espécie de wrapper no Vbox da Oracle ou no vmplayer da VMware. A outra coisa que às vezes é feita é colocar isso em um contêiner como o docker .

    
por 29.06.2015 / 02:43
2

Emulação de hardware

Não diretamente! Sim, como disse Rocky, você tem que virtualizá-lo com VirtualBox , VMWare Fusion , que corresponderá ao seu tipo de CPU.

Há também o Qemu , que virtualizará diferentes tipos de CPU, como Intel ou Power, etc.

Emulação de software

Há também emulação de camada de software, com programas como WiNE , e meu próprio programa de emulayer (WiP) Ambos emulam parcialmente o Windows SO, convertendo as chamadas do sistema para POSIX.

A maioria dos aplicativos Linux será executada no OSX com uma recompilação de origem.

    
por 29.06.2015 / 03:16

Tags