Como instalar uma biblioteca C ++ (como Blitz ++) em um diretório específico (em um que não requeira privilégios sudo), no Linux? [duplicado]

Dec 30 2020

Tentei olhar alguns links neste site. O mais próximo que encontrei do meu problema foi este , mas ainda não fui capaz de resolver meu problema com ele

Sou meio novo nisso, mas basicamente pretendo instalar a biblioteca Blitz ++ para C ++, no Linux

Agora, eu já fiz isso uma vez, seguindo as instruções de seu repositório GitHub , onde os seguintes comandos instalam o Blitz ++ em um sistema semelhante ao Unix:

mkdir build      # Inside the cloned Github repo
cd build
cmake ..
make lib
sudo make install

A única coisa que estou tentando fazer aqui é evitar o uso sudo. Pelo que eu posso entender, esse comando instala arquivos e a própria biblioteca dentro de diretórios que precisam de privilégios sudo e aceitam quaisquer modificações (corrija-me se eu estiver errado, não estou bem versado aqui). Mas diga se eu quero instalar a biblioteca no diretório I para o qual tenho permissões, para evitar ter que usar sudo?

Como posso instalar a referida biblioteca no diretório home, por exemplo, no Linux, sem ter que invocar sudo?

Eu sei que para outras bibliotecas C ++, há um .configurearquivo dentro de seus respectivos diretórios e, digitando algo ao longo das linhas de ./configure --prefix=<directory_path>(dado que o diretório de trabalho atual é o diretório da biblioteca), permite que a biblioteca seja instalada no caminho especificado

Mas não consigo imaginar como fazer algo semelhante com o Blitz ++, já que ele não tem nenhum .configurearquivo. Talvez haja outra maneira, mas eu não tenho nenhum conhecimento nesta área. Qualquer ajuda é apreciada.


Além disso, se alguém tiver links ou recursos que ajudem a entender como as bibliotecas C ++ funcionam e como instalá-las de maneira geral, bem como qualquer outro recurso C ++ recomendado, agradeceria se você me informasse se não for um inconveniente. Desculpas por quaisquer erros e minha ignorância

Respostas

1 BoR Dec 30 2020 at 03:11

Esta é realmente uma pergunta do CMake. Você está procurando por CMAKE_INSTALL_PREFIX . Um exemplo:

mkdir build      # Inside the cloned Github repo
cd build
cmake -DCMAKE_INSTALL_PREFIX=<directory_path> ..
make lib
make install