I have tried compiling it manually before posting it here, it does work. I'm actually out of idea on how to debug it since my knowledge on perl is really low.
O erro parece acontecer quando você executa este passo $make_env make check
no seu script perl. Você criou test_setpwnam
e, quando executado, você obtém:
/usr/lib/hpux32/dld.so: Unable to find library 'libncurses.so'.
O problema é que test_setpwnam
depende de libncurses.so
, mas a pesquisa de caminho dinâmico da biblioteca compartilhada de test_setpwnam
não inclui / usr / local / lib / hpux32. Ele não inclui / usr / local / lib / hpux32 porque quando você (ou seu script) estava criando test_setpwnam
você adicionou à linha de comando -Wl,+b -Wl,/usr/local/lib
e limpou todos os caminhos padrão.
Existem algumas maneiras de corrigir o problema:
1) Adicione a configuração de pesquisa dinâmica a LDFLAGS. Este é um exemplo:
$configure_env .= "LDFLAGS=\"-L/usr/local/lib/hpux32 -Wl,+concatrpath -Wl,+b -Wl,/usr/local/lib -Wl,+b -Wl,/usr/local/lib/hpux32\"";
2) Você pode definir a variável de ambiente LD_LIBRARY_PATH. Essa variável expande a pesquisa do caminho dinâmico da biblioteca compartilhada. Mudança no seu script:
my $make_env = "PATH=\$PATH:/usr/local/bin LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:/usr/local/lib/hpux32";
3) Se você puder encontrar onde -Wl,+b -Wl,/usr/local/lib
é adicionado, elimine-o. No HP-UX, o vinculador definirá uma pesquisa de caminho dinâmico de biblioteca compartilhada correta que inclua todos os caminhos necessários