Erro de configuração do módulo Apache 2

0

Estou tentando instalar o SML Server em minha máquina. Depois de seguir todas as instruções (localizadas aqui e neste book no capítulo 2.2) Eu tento configurar o Apache adicionando um novo módulo como este:

Um novo arquivo sml.conf foi adicionado com:

<IfModule mod_sml.c>
      AddHandler sml-module .sml
      SmlPrjId "web"
      SmlPath "/usr/lib/smlserver/www/"
      SmlInitScript "/usr/lib/smlserver/web_sys/init.sml"
</IfModule>

e o novo arquivo sml.load com os seguintes dados:

LoadModule sml-module /usr/lib/apache2/modules/mod_sml.so

A biblioteca mod_sml.so foi retirada de aqui .

Então, ao tentar reiniciar o Apache, recebo esta mensagem de erro:

sudo apache2ctl restart
apache2: Syntax error on line 204 of /etc/apache2/apache2.conf: Syntax
     error on line 1 of /etc/apache2/mods-enabled/sml.load: Cannot load
         /usr/lib/apache2/modules/mod_sml.so into server:
         /usr/lib/apache2/modules/mod_sml.so: undefined symbol: log

Qualquer ideia / sugestão é muito apreciada.

    
por foobar 11.06.2011 / 06:38

1 resposta

1

  1. Esse pacote é para sistemas de 32 bits. Você não está tendo esse problema, porque você não recebe um aviso sobre "Wrong ELF class".
  2. Esse pacote foi lançado em 12 de abril de 2007 (de acordo com a página de download e o repositório do subversion).
  3. Eu suspeito que o módulo tenha sido construído para o Apache 2.0.xe não para o 2.2.x. A próxima versão do Apache depois de 12 de abril de 2007 é Apache 2.2.6 e 2.0.61 .

Instruções para construção a partir da fonte:

  1. Instale alguns requisitos:

    sudo apt-get install subversion build-essential apache2-threaded-dev mlton smlnj bison flex
    
  2. Faça o download da árvore de fontes para essa versão (cerca de 25 MB de tamanho de download, 60 MB de espaço em disco usado após o download):

    svn co https://mlkit.svn.sourceforge.net/svnroot/mlkit/tags/mlkit-4.3.2/kit mlkit-4.3.2
    
  3. Comece com um pré-requisito: mlkit. Execute os comandos abaixo:

    cd mlkit-4.3.2
    ./autobuild
    
    • Se você não tiver uma instalação anterior do mlkit, execute:

      ./configure
      make nj
      

      Por algum motivo, as etapas acima falharam em minhas máquinas (Natty de 64 bits e Lucid de 32 bits). A mensagem é:

      Error: GenOpcodes.sml 20.60.
        Function applied to incorrect argument.
          expects: [<equality>] * [<equality>]
          but got: [<non-equality>] * [<non-equality>]
          in: = (OS.Process.system ("mv " ^ sou  ...   OS.Process.success)
      

      Se falhar também, não continue.

    • Se você tiver uma instalação do mlkit, execute:

      ./configure --with-compiler=mlkit
      make mlkit
      
  4. Se a etapa anterior foi concluída sem erros fatais, continue executando os próximos comandos:

    make bootstrap
    make mlkit_libs
    
  5. Instale em /usr/local :

    sudo make install
    
  6. Em seguida, o servidor SML:

    ./configure --enable-SMLserver --with-apxs="$(which apxs2)" --with-compiler="$(which mlkit)"
    make smlserver
    make smlserver_libs
    
  7. Instale a biblioteca:

    sudo make install_smlserver
    sudo cp /usr/local/lib/smlserver/lib/mod_sml.so /usr/lib/apache2/modules/
    echo "LoadModule sml_module /usr/lib/apache2/modules/mod_sml.so" | sudo tee /etc/apache2/mods-available/sml.load
    
  8. Crie o arquivo /etc/apache2/mods-available/sml.conf com o seguinte conteúdo:

    <IfModule mod_sml.c>
      AddHandler sml-module .sml
      SmlPrjId "web"
      SmlPath "/home/mael/web/www/"
      SmlInitScript "/home/mael/web/www/../web_sys/init.sml"
    </IfModule>
    #<Directory /home/mael/web/www/web/secret>
    #  SetHandler None
    #  RewriteEngine On
    #  RewriteBase /web/secret
    #  RewriteRule .* pub.sml
    #</Directory>
    
  9. Ative o módulo e reinicie o servidor:

    sudo ln -sf /etc/apache2/mods-available/sml.conf /etc/apache2/mods-enabled/sml.conf
    sudo ln -sf /etc/apache2/mods-available/sml.load /etc/apache2/mods-enabled/sml.load
    sudo /etc/init.d/apache2 restart
    

Este guia foi compilado de:

  • link
  • link
por Lekensteyn 11.06.2011 / 11:41