Como instalo ferramentas de desenvolvimento para 12.10?

14

Eu tenho um tarball de origem: ap-kernelmodule-1.0.14-13.tar.gz tenho que compilar um módulo do kernel e fui instruído a instalar ferramentas de desenvolvimento para a minha versão do Ubuntu (que é a 12.10). O formato é:sudo apt-get install linux-headers-$(uname -r) build-essential

Pergunta # 1: o que é uname?

(Quando instalei o Ubuntu, insiro sharon como meu nome e que também é o nome da minha conta. Sempre que abro uma janela de terminal, as palavras sharon@sharon:aparecem) Com base no formato, devo inserir:

sudo apt-get install linux-headers-$(sharon -r) build-essential

ou

sudo apt-get install linux-headers-$sharon -r build-essential

Pergunta 2: Qual das alternativas acima está correta?

(Eu sou novo no Linux e Ubuntu; portanto, instruções detalhadas são apreciadas)

n00b
fonte
É melhor você colocar os detalhes desta pergunta na outra pergunta semelhante que você fez. askubuntu.com/questions/232195/how-do-i-compile-kernel-modules
gertvdijk
Desculpe, não tive a intenção de enviar spam. Eu pensei que fazer um post para cada sub-tópico seria mais claro. Você poderia me mostrar como mesclar esse tópico com o outro indicado por você? Obrigado.
N00b

Respostas:

15

Não copie meus comandos, você deve digitá-los e usar a tecla tab, pois meu kernel pode ser diferente do seu. Eu explico jogo por jogo:

Abra um terminal e digite:

sudo apt-get update

Esta atualização fornece ao computador um alerta dos arquivos que você pode precisar. Mas nenhum arquivo é baixado, apenas informações sobre o que pode ser baixado. Se você não fez isso primeiro, talvez não tenha o link mais recente para atualizações de segurança ou para as versões mais recentes do software.

Enquanto você digita, pressione a tecla Tab para finalizar seu comando. Comece a digitar o comando que será instalado build-essential. Depois de chegar até aqui:

sudo apt-get install linux-headers-

A próxima parte que deve aparecer será o seu kernel Linux. Então abra outro terminal e digite:

uname -r

Você deve ver algo assim:

3.2.0-23-generic

Agora volte ao outro terminal e pressione tab como tipo. Você deve ver seu kernel aparecer. Escolha aquele.

sudo apt-get install linux-headers-3.2.0-23-generic

Agora digite um espaço e adicione essencial à compilação (não se esqueça de usar sua guia para concluir).

sudo apt-get install linux-headers-3.2.0-23-generic build-essential

Agora pressione enter e os arquivos serão baixados para ajudá-lo a compilar o código.

cxx6xxc
fonte
@ cxx6xxc: Obrigado por ser um anjo. Eu realmente aprecio o seu tempo para digitar essas instruções detalhadas. Que você e seus entes queridos tenham um Feliz Natal.
N00b
@ cxx6xxc: Desculpe, mas não entendo bem o que você quis dizer com "Ao digitar, pressione a tecla Tab para concluir seu comando". Você vê, em circunstâncias normais, quando eu digito, o cursor piscando se move automaticamente para a direita (meu teclado de idioma é inglês dos EUA, portanto, o cursor se move da esquerda para a direita).
N00b
@ cxx6xx: Posso abrir mais de uma janela do terminal ao mesmo tempo? Abrir mais de uma janela de terminal ao mesmo tempo fará com que o Ubuntu fique confuso ou leve a um travamento?
N00b
O mistério da guia: bogojoker.com/unix/tricks/autocomplete.html
cxx6xxc
O Ubuntu não ficará confuso. O Ubuntu é apenas um monte de arquivos e diretórios em um disco de armazenamento. Quando alguém está sendo acessado para ser gravado, é bloqueado, para que não ocorra confusão. Várias pessoas lendo a mesma coisa não podem machucar, todos se revezam. Todo o resto são aplicativos que preenchem a memória ao vivo. Isso não pode criar confusão, porque eles não podem entrar no espaço um do outro na memória ao vivo. As coisas podem ficar lentas, porque todo mundo precisa de um empurrãozinho do processador e há apenas um empurrãozinho por segundo, mas é isso.
Cxx6xxc
8

unameé um comando que deve ser inserido na linha de comando. Portanto, se você abrir um terminal e digitar, unameele gera a palavra Linux. No comando que você mencionou, você encontra -r. Esta é uma opção para uname. Ele instrui unamea imprimir o número da versão do kernel. Portanto, basicamente imprimirá alguns números (como 3.2.0-41-amd64).

Você deve digitar o comando

sudo apt-get install linux-headers-$(uname -r) build-essential

como está escrito. O $(something)comando diz à sua linha de comando (melhor palavra seria shell) para executar o comando somethinge inserir a saída desse comando.

Portanto, no seu unamecaso (assumindo que o número que escrevi esteja correto, o que pode não estar no seu caso), o comando que é executado é sudo apt-get install linux-headers-3.2.0-41-amd64 build-essential. Basicamente, você pode procurar sua versão do kernel e inseri-la manualmente.

Como você vê agora, nenhuma de suas versões está correta. A solução parece um pouco diferente.

qbi
fonte
Espero que tenha ajudado a responder à sua pergunta. Se sim, aceite-o como solução. ;-)
qbi 23/12/12
Obrigado, acredito que você respondeu minha pergunta. Então, em qual botão devo clicar para informar ao fórum que minha pergunta foi respondida? De onde estou agora, existem apenas 2 botões: "Adicionar comentário" e "Responda à sua pergunta".
N00b
No lado esquerdo, há uma seta para cima e uma seta para baixo e abaixo você encontra uma marca de seleção (✓). Se você clicar nela, aceita uma resposta como aceita. Consulte também a descrição em askubuntu.com/faq#howtoask
qbi
@ qbi: Muito obrigado. E um feliz Natal para você e seus entes queridos.
N00b