Biblioteca include nao encontrada no Ubuntu 22.04

1. Biblioteca include nao encontrada no Ubuntu 22.04

Alex Dedalus
alexdedalus

(usa Ubuntu)

Enviado em 20/12/2023 - 03:51h

Estou tentando compilar um driver de controle de LED
Foi instalado a biblioteca svgalib, esta biblioteca instalou os includes nos 2 diretorios /usr/src/linux-headers-5.4.0-48/include/video e usr/src/linux-headers-5.4.0-54/include/video, e as libs no diretorio /usr/lib/x86_64-linux-gnu
Na hora de compilar da o erro:

fatal error: vga.h: Arquivo ou diretorio nao encontrado

Ja alterei o include que antes era #include <vga.h>
para #include <video/vga.h>
Mas o erro permanece igual
Mas claramente o gcc nao esta buscando as includes lá, e nem sei se após a compilacao dar certo, ele encontrará a libvga.so.1
Como descubro o diretorio padrao onde o gcc esta buscando os includes e libs?
Como fazer a instalação da biblioteca svgalib, ser instalada no diretorio correto, para que o gcc o reconheça
sem a necessidade de artimanhas no Makefile e demais, pra todo pacote que necessitar dessa biblioteca?


  


2. Re: Biblioteca include nao encontrada no Ubuntu 22.04

Alexa Bolada
alexabolada

(usa Debian)

Enviado em 20/12/2023 - 03:51h

Olá! Para descobrir o diretório padrão onde o GCC está buscando os includes e libs, você pode executar o seguinte comando:

```
$ gcc -print-search-dirs | grep "^libraries:"
```

Isso irá mostrar o diretório padrão onde o GCC busca as bibliotecas. Verifique se esse diretório inclui o diretório /usr/lib/x86_64-linux-gnu onde sua biblioteca svgalib foi instalada.

Quanto à instalação da biblioteca svgalib no diretório correto, geralmente o processo de instalação de bibliotecas já configura o diretório padrão corretamente. Verifique se você está usando os métodos padrão de instalação da biblioteca e certifique-se de que as permissões necessárias estão configuradas corretamente.

Se ainda assim o GCC não estiver encontrando as includes ou libs corretamente, pode ser necessário fazer ajustes no Makefile do projeto para especificar os diretórios corretos manualmente. Nesse caso, você precisará editar o arquivo Makefile e fornecer os caminhos corretos para as includes e libs da biblioteca svgalib.

Espero ter ajudado! Se tiver mais alguma dúvida, estou à disposição.


3. Re: Biblioteca include nao encontrada no Ubuntu 22.04

Alex Dedalus
alexdedalus

(usa Ubuntu)

Enviado em 20/12/2023 - 04:00h


O caminho onde o gcc está buscando a libvga.so.1 está correto, pois bate com o diretório onde foi instalado, mas o erro continua, pois a include vga.h ainda não está sendo encontrada. Deve ter algum parametro a ser usado na instalação da biblioteca, para que as includes sejam instaladas no diretorio padrao onde o gcc busca. Eu nao sei fazer isso.


4. Re: Biblioteca include nao encontrada no Ubuntu 22.04

Samuel Leonardo
SamL

(usa XUbuntu)

Enviado em 20/12/2023 - 16:30h

Se não está no caminho padrão que o gcc busca, tem de colocar o caminho com o parâmetro -I/path/dir/header (de Include directory) ou também definir onde linkar as libs com o -L/path/lib.a e quando for executar, se as libs não estão nos diretórios padrão, tem de setar o path no terminal com LD_LIBRARY_PATH. Google é um bom amigo.


https://nerdki.blogspot.com/ acessa ai, é grátis
Não gostou? O ícone da casinha é serventia do site!


5. Re: Biblioteca include nao encontrada no Ubuntu 22.04

Alex Dedalus
alexdedalus

(usa Ubuntu)

Enviado em 20/12/2023 - 17:49h


Poderia me ajudar, de como eu poderia configurar o pacote libsvga para ele instalar as includes e libs no local padrao, para que nao seja necessario fazer isso à cada pacote que eu for compilar e que use essas bibliotecas avulsas?


6. Re: Biblioteca include nao encontrada no Ubuntu 22.04

Samuel Leonardo
SamL

(usa XUbuntu)

Enviado em 20/12/2023 - 18:49h


alexdedalus escreveu:


Poderia me ajudar, de como eu poderia configurar o pacote libsvga para ele instalar as includes e libs no local padrao, para que nao seja necessario fazer isso à cada pacote que eu for compilar e que use essas bibliotecas avulsas?

Tenta ai no terminal:
$ sudo apt-get install libsvga1 libsvga-dev
Se não conseguir instalar é porque foi removido dos repositórios do Ubuntu.

Só uma coisa, quase tudo se encontra na internet, sugiro que vc aprender ler e escrever em inglês porque a maior parte das soluções para problemas comuns de programação e TI, são escritos em inglês e facilmente encontrados numa busca nessa linguagem via google.
Se quer ser um profissional na área bom o suficiente, é obrigatório que aprenda se virar e também a fazer melhores perguntas.

[fugindo do assunto] A origem do termo "hacker", que hoje tá mais pro sujeito nutelinha-Paulistano/filhim-de-mamãe que usa o banco de dados de senhas de sites como o VOL pra roubar pessoas, era a de que hacker é aquele que sabe se virar, famoso pau pra toda obra/"buc***". Mas o termo se perdeu e os nutelas hackudão usam kali linux porque "é usado por haskeres!". Não precisa ser hacker mas é bom treinar o hábito de se virar de alguma forma, e aprender a como fazer perguntas e como procurar em inglês já é de longe um ótimo começo.


https://nerdki.blogspot.com/ acessa ai, é grátis
Não gostou? O ícone da casinha é serventia do site!


7. Re: Biblioteca include nao encontrada no Ubuntu 22.04

aguamole
aguamole

(usa KUbuntu)

Enviado em 21/12/2023 - 00:28h

Você instalo tanto a de 64b como a de 32b? e para compilação se usa as versões DEV, as outras é para apenas compilação, certifique vc que instalou a versão DEV da lib.
Você pode encontrar a versão dev aqui para Debian, pode ser compatível com o Ubuntu desde que as dependências sejam satisfeitas, se não for satisfeitas o pacote não serve.
http://archive.debian.org/debian/pool/main/s/svgalib/
Lembre-se para compilar é sempre as versões devel.


8. Re: Biblioteca include nao encontrada no Ubuntu 22.04

Alex Dedalus
alexdedalus

(usa Ubuntu)

Enviado em 21/12/2023 - 20:50h


Obrigado!
Era a versao dev que estava faltando, eu segui as orientacoes de um outro site, e nao foi mencionado justamente a DEV, nem precisou alterar o include no arquivo .c, pois muitos disseram que deveria ser trocado de #include <vga.h> para #include <video/vga.h>, mas nao foi preciso, apesar de realmente estar no diretorio .../video/vga.h, outra coisa, é que nao tive tempo de procurar a sintaxe do apt-get para instalar a partir do arquivo DEV local, entao tive que clicar com o botao direito em cima dele na interface grafica, e mandar instalar por la.
E fugindo um pouco do assunto, antes o ubuntu enchergava compartilhamentos Windows do outro meu PC ligado a mesma rede daqui do Ubuntu, e agora nao acessa mais, dando o erro:
Nao foi possivel acessar o local. Falha ao recuperar a lista de compartilhamento do servidor: Arquivo ou diretorio nao encontrado

Neste mesmo PC que rodo o Ubuntu, tem windows 7 e windows 10 que acessam normalmente os compartilhamentos de outro PC na mesma rede, como ja disse, o Ubuntu tambem funcionava, e de uns tempos pra ca nao.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts