Criando pacote nvidia-legacy340-driver no Slackware -current após update de 10/03/2016

Publicado por Luís Fernando C. Cavalheiro em 21/03/2016

[ Hits: 3.212 ]

Blog: https://github.com/lcavalheiro/

 


Criando pacote nvidia-legacy340-driver no Slackware -current após update de 10/03/2016



Papagaios e louros aqui do Viva o Linux, aqui começa mais uma Dica do Dino® para perturbar o juízo de vocês com informação nova e fresquinha sempre. Na Dica de hoje temos mais uma sobre as placas Nvidia no Slackware. Como até as crianças de seis anos sabem, toda vez que você atualiza o kernel no Slackware é preciso recompilar e reinstalar o módulo de kernel e o driver Nvidia.

Se você usa o SlackBuilds.org pra isso, basta executar novamente os scripts nvidia-kernel e nvidia-driver relativos à sua placa. No meu caso, o feliz (?) proprietário de uma GT9800, eu preciso do nvidia-legacy340-kernel e nvidia-legacy340-driver.

Acontece que após o update de 10/03/2016 o script para o pacote nvidia-legacy340-driver deixou de funcionar. Se você tentar criar o pacote, eis o erro que acontece:

/usr/lib64/gcc/x86_64-slackware-linux/5.3.0/../../../../lib64/libpci.a(names-hwdb.o): In function `pci_id_hwdb_lookup':

names-hwdb.c:(.text+0xb4): undefined reference to `udev_hwdb_get_properties_list_entry'

names-hwdb.c:(.text+0xc9): undefined reference to `udev_list_entry_get_next'

names-hwdb.c:(.text+0xd9): undefined reference to `udev_list_entry_get_name'

names-hwdb.c:(.text+0xf0): undefined reference to `udev_list_entry_get_value'

names-hwdb.c:(.text+0x214): undefined reference to `udev_new'

names-hwdb.c:(.text+0x221): undefined reference to `udev_hwdb_new'

/usr/lib64/gcc/x86_64-slackware-linux/5.3.0/../../../../lib64/libpci.a(names-hwdb.o): In function `pci_id_hwdb_free':

names-hwdb.c:(.text+0x24e): undefined reference to `udev_hwdb_unref'

names-hwdb.c:(.text+0x264): undefined reference to `udev_unref'

collect2: error: ld returned 1 exit status

Makefile:214: recipe for target '_out/Linux_x86_64/nvidia-installer' failed

make: *** [_out/Linux_x86_64/nvidia-installer] Error 1
Após xingar os Seiscentos e Sessenta e Seis Nomes Infernais (e assustar Gatanás com a quantidade de palavrões por minuto), decidi fazer a coisa mais óbvia (que sempre é a última a ser feita): ler o script nvidia-legacy340-driver.SlackBuild. E ao ler a parada, descobri que o nvidia-installer não era necessário! Comentei as linhas relacionadas a ele e funcionou como uma luva!

Então, caso você queira criar o pacote nvidia-legacy340-driver, vá no arquivo nvidia-legacy340-driver.SlackBuild, localize o seguinte bloco de código:

# Compiling nvidia-installer from source
# Not really needed for this SBo package

cd $TMP/nvidia-installer-$VERSION
  chown -R root:root .
  find -L . \
   \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
    -o -perm 511 \) -exec chmod 755 {} \; -o \
   \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
    -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;

  CFLAGS="$SLKCFLAGS" LDFLAGS="-lz" make

install -m 755 _out/Linux_$TARGET/nvidia-installer $PKG/usr/bin/
install -m 644 _out/Linux_$TARGET/nvidia-installer.1.gz $PKG/usr/man/man1/
cd -

... e comente todas essas linhas. Porém, como o Dino® é um cara bonzinho, você pode simplesmente rodar esses dois comandos no mesmo diretório em que você baixou todos os arquivos do SlackBuild do nvidia-legacy340-driver antes de executar o script:

wget http://lists.slackbuilds.org/pipermail/slackbuilds-users/attachments/20160312/add6bcd1/attachment-0001.bin -O nvidia-legacy340-driver.SlackBuild.patch

$ patch -p0 < nvidia-legacy340-driver.SlackBuild.patch


E é isso, senhoras e senhores. Com essa termina mais uma Dica do Dino®, desejando para todos vocês a salvação profunda e eterna que vem apenas pelo terminal!

Outras dicas deste autor

Cliente Steam Beta em sua distribuição - Instalando e rodando (mesmo sem ter conta beta)

Corrigindo erro "File in wrong format" durante compilação de pacotes no Slackware 64

Impedindo atualização de pacotes específicos no Fedora

Configurando o libinput na unha

Slackpkg: escolha qual programa usar para fazer o download de dados

Leitura recomendada

Instalando o modem LG I56N (smartlink) no OpenSUSE 10.2

Driver Realtek RTL8111B / RTL8168B para Linux CentOS 5

Verificando e comparando a performance no início, meio e fim do disco (HDD)

Multifuncional Canon MG3200 Series no openSUSE 13.1

Instalando modem SmartLink no Slackware e Debian

  

Comentários
[1] Comentário enviado por Arthur_Hoch em 23/03/2016 - 12:21h

Aqui eu baixo o driver direto do site da NVIDIA e executo:

# sh /home/meuuser/N*

[2] Comentário enviado por lcavalheiro em 23/03/2016 - 12:57h

Pois então, o driver legacy pode apresentar problemas mesmo quando você instala desse modo. É aleatório: pode apresentar ou não. Vai entender.
--
Dino®
[i]Vi veri universum vivus vici[/i]
Public GPG signature: 0x246A590B
Só Slackware é GNU/Linux e Patrick Volkerding é o seu Profeta



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts