Pergunta

Ao criar um módulo Perl Extutils :: Makemaker usa os sinalizadores definidos em config.pm (consulte a configuração PerlDoc) para valores como ccflags e ldflags.

Como substituo esses valores (com exceção de editar o makefile.pl)?

perl Makefile.PL ldflags=<options> 

não parece funcionar.

Contexto: Estou tentando compilar o termo :: readLine :: GNU no OS X 10.6. O OS X PERL padrão é um binário universal e, portanto, possui ccflags como -arch i386 -arch ppc etc.
Por outro lado, minha versão do GNU ReadLine (6.0) foi compilada da fonte apenas para -Arch i386. Como tal, não contém os símbolos esperados para um módulo que tenta vincular -o a ele usando -Arch PPC.

Foi útil?

Solução

Em geral, tentar substituir as configurações no config.pm é um exercício de futilidade. O motivo mais normal para querer alterá-los é alterar o compilador em uma máquina onde o Perl foi compilado com um compilador não-GNU, mas você deseja usar o GCC. Isso é tão difícil de fazer que é de muito mais simples reconstruir o Perl com o compilador escolhido, instalar todos os módulos auxiliares e, em seguida, use o Build o novo módulo escolhido, em vez de tentar combater 'o sistema'.

Portanto, você pode fazer uma das duas coisas - construir sua biblioteca GNU ReadLine com as mesmas opções que o Perl usaria ou construir seu Perl com as opções usadas para criar o GNU ReadLine. Tentar dobrar um para conhecer o outro não é recomendado se você valorizar sua máquina e o cabelo na sua cabeça (por favor, não bata na máquina com tanta força - é o software com o qual você deve ficar frustrado, não o hardware; os mac são legais !).

Das duas opções, a reconstrução do GNU ReadLine é provavelmente o mais fácil - é menor e tem menos complementos.

Outras dicas

Informações fornecidas no Suporte de swingsfile A seção dos documentos pode ser relevante, embora eu não tenha tentado.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top