Como configurar o caminho ao instalar o novo plugin no linux?

1

Sempre que eu precisar instalar algo no Xentos, encontrei bolas de rpm ou tar.

Eu quero saber qual é a diferença entre dois.

Além disso, se eu precisar instalar algo para o php, mas eu tiver instalado na pasta diferente, como posso dar esse caminho php ao usar o comando configure no pacote tar.gz recém-baixado?

    
por user782234 03.06.2011 / 08:46

2 respostas

1

Um RPM é um arquivo com muitas coisas especiais. É para instalar software já construído e, às vezes, fonte (geralmente marcado como SRPM, para RPM de origem). Além dos arquivos propriamente ditos, ele também pode ter scripts de pré-instalação, scripts de pós-instalação e também pré-remover e pós-remoção de scripts, caso você queira remover o software. Ele mantém as coisas organizadas mantendo algumas informações de instalação no banco de dados do RPM. Você precisa ser root para instalar, não apenas porque os arquivos (quase sempre) são instalados em locais que geralmente somente o root tem acesso, mas você precisa ser root para alterar o banco de dados do RPM.

Um tarball em geral é apenas um arquivo. Uma coleção de arquivos e diretórios. O que você tem é um tarball de origem, que você precisa configurar e executar para sua instalação específica. Depois de extrair o tarball ( tar -xzvf /path/to/something.tar.gz irá extraí-lo). A maioria dos softwares usa algo chamado autoconf , que gera um script chamado configure , que pode configurar sua origem para construção. Ele faz algumas verificações (você tem um compilador? As suas bibliotecas são novas o suficiente?) E pode usar alguns sinalizadores de linha de comando. Use configure --help para ver o que são esses sinalizadores. Normalmente, a única bandeira que você precisa é --prefix=/path/to/somewhere para dizer onde deseja instalar. Depois de executar o configure, você pode executar make && make install para instalá-lo. Ou, sudo make install se você estiver usando apenas locais raiz.

Qualquer coisa após o sinal prefix=... é muito dependente da sua origem e do que existe em seu computador. Eu não sei o seu pacote, nem sei como o php se conecta a ele. O configure --help lista qualquer sinalizador para o caminho do php? Às vezes você coloca o intérprete no seu PATH, por exemplo. PATH = / caminho / para / php / bin: $ PATH. O script configure então (pode) encontrar o php e consultá-lo (coisas que usam o perl funcionam dessa maneira). Você pode precisar de alguma configuração pós-build depois. Esteja preparado para experimentar.

Como você disse que tem coisas em locais fora do padrão, sua escolha pode ser apenas o tarball de origem. Os RPMs são pré-construídos e tendem a ter poucas opções de configuração.

    
por 03.06.2011 / 19:26
2

O RPM é um pacote pré-criado - você pode usar uma ferramenta gráfica ou rpm (CLI) para instale-o.

Os tarballs são o código-fonte. Normalmente você pode se safar apenas com a execução

./configure && make && make install

Se você precisar alterar o caminho de instalação de um pacote, faça algo assim:

./configure --prefix=/this/is/where/everything/goes && make && sudo make install

(ou use su -c : eu sou um Zenwalker e não posso dizer qual é o preferido em distros baseadas em RH)

que terminará com uma árvore de diretórios como:

/this/is/.../goes/bin
/this/is/.../goes/doc
/this/is/.../goes/share

Se isso não for o que você deseja em relação a ativar o caminho de instalação, sinta-se à vontade para ser mais específico, pois ./configure tem as seguintes opções de caminho:

Fine tuning of the installation directories:

--bindir=DIR user executables [EPREFIX/bin]

--sbindir=DIR system admin executables [EPREFIX/sbin]

--libexecdir=DIR program executables [EPREFIX/libexec]

--sysconfdir=DIR read-only single-machine data [PREFIX/etc]

--sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]

--localstatedir=DIR modifiable single-machine data [PREFIX/var]

--libdir=DIR object code libraries [EPREFIX/lib]

--includedir=DIR C header files [PREFIX/include]

--oldincludedir=DIR C header files for non-gccv[/usr/include]

--datarootdir=DIR read-only arch.-independent data root [PREFIX/share]

--datadir=DIR read-only architecture-independent data [DATAROOTDIR]

--infodir=DIR info documentation [DATAROOTDIR/info]

--localedir=DIR locale-dependent data [DATAROOTDIR/locale]

--mandir=DIR man documentation [DATAROOTDIR/man]

--docdir=DIR documentation root [DATAROOTDIR/doc/bullet]

--htmldir=DIR html documentation [DOCDIR]

--dvidir=DIR dvi documentation [DOCDIR]

--pdfdir=DIR pdf documentation [DOCDIR]

--psdir=DIR ps documentation [DOCDIR]

    
por 03.06.2011 / 15:25