Vincular biblioteca instalada localmente

3

Eu não tenho acesso root em uma máquina e estou tentando instalar uma biblioteca chamada GiNaC localmente na minha pasta pessoal.

Eu uso este tutorial link . No final, há um exemplo (não é necessário desativar a biblioteca compartilhada e não preciso de um compilador específico).

Infelizmente, se eu fizer isso

export CPPFLAGS="$(CPPFLAGS) -I$/home/xxx/include"
./configure

este é o resultado:

...
checking for g++... g++
checking whether the C++ compiler works... no
configure: error: in '/home/redies/ginac-1.6.2':
configure: error: C++ compiler cannot create executables
See 'config.log' for more details

No config.log existe a linha

CPPFLAGS='CPPFLAGS: command not found -I$/home/xxx/include'

Alguma idéia?

    
por Joachim 08.11.2011 / 19:41

2 respostas

2

Há um erro nesse tutorial: no shell, as expansões de variáveis usam chaves, não parênteses, por isso você precisa escrever ${CPPFLAGS} e não $(CPPFLAGS) . Você pode deixar as chaves desligadas , até. Além disso, se você substituir $HOME pelo seu valor, o $ deve ir ( $ seguido por um nome de variável significa "pegar o valor de").

export CPPFLAGS="$CPPFLAGS -I/home/xxx/include"

Ah, e se não houver um valor anterior de CPPFLAGS em seu ambiente, você pode escrever este export CPPFLAGS="-I/home/xxx/include" (mas não vai doer usar $CPPFLAGS , o valor estará vazio se a variável nunca foi conjunto).

    
por 09.11.2011 / 01:57
0

Acho que, a menos que você tenha valores extras de CPPFLAGS, este funcionaria;

CPPFLAGS="-I/home/xxx/include" ./configure

Também acho que você deve executar ./configure --help para ver se esse script de configuração em particular possui sinalizadores de linha de comando para fazer o que você deseja. O script configure-usual tem pilhas de opções para permitir que o usuário não root do J. Random instale em $ HOME, ou o que quer que seja.

    
por 08.11.2011 / 20:25