Проблема в установке Пассажира - PullRequest
1 голос
/ 07 апреля 2011

Я получаю эту проблему.

 passenger-install-apache2-module

Уже установлен Apache2 и пассажирский гем

    /usr/lib/ruby/gems/1.8/gems/passenger-3.0.6/lib/phusion_passenger/platform_info/apache.rb:277:in `_unmemoized_apr_config_needed_for_building_apache_modules?': undefined local variable or method `test_exe_outdir' for PhusionPassenger::PlatformInfo:Module (NameError)
        from /usr/lib/ruby/gems/1.8/gems/passenger-3.0.6/lib/phusion_passenger/platform_info.rb:92:in `apr_config_needed_for_building_apache_modules?'
        from /usr/lib/ruby/gems/1.8/gems/passenger-3.0.6/bin/passenger-install-apache2-module:69:in `dependencies'
        from /usr/lib/ruby/gems/1.8/gems/passenger-3.0.6/lib/phusion_passenger/abstract_installer.rb:166:in `check_dependencies'
        from /usr/lib/ruby/gems/1.8/gems/passenger-3.0.6/bin/passenger-install-apache2-module:90:in `install!'
        from /usr/lib/ruby/gems/1.8/gems/passenger-3.0.6/lib/phusion_passenger/abstract_installer.rb:63:in `start'
        from /usr/lib/ruby/gems/1.8/gems/passenger-3.0.6/bin/passenger-install-apache2-module:236
        from /usr/bin/passenger-install-apache2-module:19:in `load'
        from /usr/bin/passenger-install-apache2-module:19

Ответы [ 3 ]

1 голос
/ 09 апреля 2011

Эта проблема была исправлена, см. Первый комментарий здесь: http://code.google.com/p/phusion-passenger/issues/detail?id=653 и https://github.com/henare/passenger/compare/issue-653

На самом деле, просто нужно отредактировать файл "... / apache.rb"и замените «test_exe_outdir» на «tmpexedir».

0 голосов
/ 09 апреля 2011

Вот решение: -

  1. Скомпилируйте исходный код пассажира.Вы можете скачать его с здесь

    Чтобы установить Passenger из исходного кода, распакуйте архив с исходным кодом:

    tar xzvf passenger-X.X.X.tar.gz
    

    Затем запустите включенный установщик:

    ./passenger-X.X.X/bin/passenger-install-apache2-module
    

    passenger-install уведомит об отсутствующих зависимостях.Установите их

  2. Вы можете получить проблему, которая не установлена ​​ssl, если вы используете ruby ​​1.9.2.Попробуйте это: -

    cd to : /usr/local/src/ruby-1.9.2-p00/ext/openssl (or whatever)  
    sudo ruby extconf.rb
    make install 
    
  3. , запустите предыдущую команду, т.е.

     ./passenger-X.X.X/bin/passenger-install-apache2-module
    

, и она будет работать как чудо.: -)

0 голосов
/ 07 апреля 2011

Это может быть ошибка в установщике Passenger , но, похоже, она срабатывает только при отсутствии apr-config или apu-config. Они являются частью пакета apr или apr-devel в некоторых системах, где версия для разработки является необязательной.

Когда он запускается и отображает диагностику, он должен показывать что-то вроде этого:

Checking for required software...

 * GNU C++ compiler... found at /usr/bin/g++
 * Curl development headers with SSL support... found
 * OpenSSL development headers... found
 * Zlib development headers... found
 * Ruby development headers... found
 * OpenSSL support for Ruby... found
 * RubyGems... found
 * Rake... found at /opt/local/rvm/wrappers/ree-1.8.7-2011.03/rake
 * rack... found
 * Apache 2... found at /usr/sbin/httpd
 * Apache 2 development headers... found at /usr/sbin/apxs
 * Apache Portable Runtime (APR) development headers... found at /usr/bin/apr-1-config
 * Apache Portable Runtime Utility (APU) development headers... found at /usr/bin/apu-1-config

Если сбой произошел до того, как вы дойдете до этой точки, вы можете обучить установщика, на котором APR и APU использовать параметры командной строки.

Я не могу установить 3.0.6 для установки под Ruby 1.8.7, он поврежден на этапе компиляции C ++, поэтому я не могу воспроизвести эту проблему. Впрочем, раньше у меня не было проблем.

...