Como especificar o compilador para instalação de adições de convidados do VirtualBox?

Como especificar o compilador para instalação de adições de convidados do VirtualBox?

Eu gostaria de poder usar uma versão específica gccpara criar adições de convidados do VirtualBox 5.0.16 dentro de um convidado do Ubuntu 14.04 para evitar erros. VBoxLinuxAdditions.run --helpnão dá nenhuma informação nem oinstruções de construção.

Insert Guest Additions CD imageEstou recebendo binários de adição de convidados no item de menu de funções integrado que monta o ISO automaticamente dentro do Ubuntu.

Responder1

Um exame mais aprofundado da fonte revela que eles usam automake, você pode configurar o compilador usando variáveis ​​de ambiente que o Makefile usará para compilar a fonte.

A fonte do local está ofuscada. Para encontrar a fonte completa, você precisa encontrar o arquivo tar anexado ao final do script shell VBoxLinuxAdditions.run e descompactá-lo, ele contém dois arquivos tar que contêm a fonte. (VBoxGuestAdditions-x86.tar.bz2 e ./VBoxGuestAdditions-amd64.tar.bz2) Este é o código que será compilado no convidado. O script de shell precisa ser ligeiramente modificado para despejar seus arquivos.

Depois de ter o tar de origem, descompacte o que você precisa e use, make CC=<path to required gcc>você poderá especificar o compilador que deseja que a compilação use.

Some influential environment variables:
   CC          C compiler command
   CFLAGS      C compiler flags
   LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
               nonstandard directory <lib dir>
   LIBS        libraries to pass to the linker, e.g. -l<library>
   CPPFLAGS    (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
               you have headers in a nonstandard directory <include dir>
   LT_SYS_LIBRARY_PATH
              User-defined run-time library search path.
   CPP         C preprocessor
   CXX         C++ compiler command
   CXXFLAGS    C++ compiler flags
   CXXCPP      C++ preprocessor

informação relacionada