A opção de configuração --prefix
é usada para informar ao script de configuração (e aos arquivos makefiles resultantes) onde colocar os programas que serão instalados. Ele não diz onde obter arquivos de cabeçalho e bibliotecas.
Para informar ao script de configuração onde obter os arquivos, talvez seja necessário ajustar essas variáveis:
- CPPFLAGS (para diretórios que contêm arquivos de cabeçalho)
- LDFLAGS (para diretórios contendo bibliotecas)
- LIBS (para os nomes das bibliotecas reais)
Você pode passar esses valores na linha de comando para configurar, por exemplo,
myheader=$HOME/junk/include
mylibs=$HOME/junk/lib
./configure CPPFLAGS="-I$myheader" LDFLAGS="-L$mylibs"
Acompanhamento do esclarecimento (que deveria ter sido incorporado à pergunta)
when I try to build the files in dropbear by running
#!/bin/bash ./configure --prefix=$HOME/Hi3536_SDK_V2.0.4.0/dropbear --with-zlib=$HOME/Hi3536_SDK_V2.0.4.0/zlib/include --host=arm CC=arm-hisiv400-linux-gcc
but it seems that it's unable to local the path to zlib
Você pode ver o problema observando a fonte do script de configuração :
# Check if zlib is needed
AC_ARG_WITH(zlib,
[ --with-zlib=PATH Use zlib in PATH],
[
# option is given
if test -d "$withval/lib"; then
LDFLAGS="-L${withval}/lib ${LDFLAGS}"
else
LDFLAGS="-L${withval} ${LDFLAGS}"
fi
if test -d "$withval/include"; then
CPPFLAGS="-I${withval}/include ${CPPFLAGS}"
else
CPPFLAGS="-I${withval} ${CPPFLAGS}"
fi
]
)
Ou seja, ele espera que o valor da opção seja o nome de caminho de um diretório que contenha os subdiretórios include
e lib
(ou um diretório contendo os arquivos que devem estar nesses subdiretórios). O comentário mostra que o valor fornecido era o nome do caminho do diretório include
(sub). A seguinte verificação de compilação / link falhará:
AC_CHECK_LIB(z, deflate, , AC_MSG_ERROR([*** zlib missing - install first or check config.log ***]))
A correção provável: altere essa opção para
--with-zlib=$HOME/Hi3536_SDK_V2.0.4.0/zlib