我想在带有 arm 处理器的 NSlu2 NAS 服务器 (QNAP) 上运行 redmine。我安装了 ipkg,一切运行良好。
尝试安装 redmine 时,我需要安装 ruby-on-rails。问题是我的存储库安装的 ruby 版本 1.9.1 太新,对于 redmine 来说无法使用。有人知道如何将 ruby 降级到 1.8.6 或 1.8.7 吗?
非常感谢,
奥瓦内斯
PS:我可能可以编译正确的版本,但我不喜欢这个想法。首选解决方案是我可以下载的某个软件包或指向替代存储库的链接。
PPS:获取预发布的 Redmine 版本 0.9.0 启动了数据库填充脚本,但它却指责我应该安装 mysql gem。运行
gem install mysql
指定 my-sql-config 目录时的其他变化也没有帮助,我收到了错误:
# gem install mysql
Building native extensions. This could take a while...
ERROR: Error installing mysql:
ERROR: Failed to build gem native extension.
/opt/bin/ruby extconf.rb install mysql
checking for mysql_ssl_set()... *** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers. Check the mkmf.log file for more
details. You may need configuration options.
Provided configuration options:
--with-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=/opt/bin/ruby
--with-mysql-config
--without-mysql-config
/opt/lib/ruby/1.9.1/mkmf.rb:362:in `try_do': The complier failed to generate an executable file. (RuntimeError)
You have to install development tools first.
from /opt/lib/ruby/1.9.1/mkmf.rb:415:in `try_link0'
from /opt/lib/ruby/1.9.1/mkmf.rb:419:in `try_link'
from /opt/lib/ruby/1.9.1/mkmf.rb:527:in `try_func'
from /opt/lib/ruby/1.9.1/mkmf.rb:772:in `block in have_func'
from /opt/lib/ruby/1.9.1/mkmf.rb:668:in `block in checking_for'
from /opt/lib/ruby/1.9.1/mkmf.rb:274:in `block (2 levels) in postpone'
from /opt/lib/ruby/1.9.1/mkmf.rb:248:in `open'
from /opt/lib/ruby/1.9.1/mkmf.rb:274:in `block in postpone'
from /opt/lib/ruby/1.9.1/mkmf.rb:248:in `open'
from /opt/lib/ruby/1.9.1/mkmf.rb:270:in `postpone'
from /opt/lib/ruby/1.9.1/mkmf.rb:667:in `checking_for'
from /opt/lib/ruby/1.9.1/mkmf.rb:771:in `have_func'
from extconf.rb:50:in `<main>'
Gem files will remain installed in /opt/local/lib/ruby/gems/1.9.1/gems/mysql-2.8.1 for inspection.
Results logged to /share/HDA_DATA/.qpkg/Optware/local/lib/ruby/gems/1.9.1/gems/mysql-2.8.1/ext/mysql_api/gem_make.out
任何建议都非常感谢。建议的 mkmf.log 是空的。我假设我没有安装 mysql 源,但是我可以在哪里获得它作为与已安装的 mysql 版本一起运行的 Optware-Package。
答案1
此处完全是瞎猜:
如果你安装了 ruby 1.9.1,请尝试安装 RVM(http://rvm.beginrescueend.com/) 和gem install rvm
然后你就可以rvm install ruby-1.8.7 --head
切换rvm ruby-1.8.7
到 ruby 1.8.7
答案2
嗯,您有哪种设备——NSLU2 还是 QNAP TS 系列?我认为 NSLU2 无法很好地运行 Rails 站点,但 QNAP TS-[124]09 相当不错。
我会用 Debian 替换原有固件(不管它是什么)(据说可以运行QNAP 系列),然后使用那里的软件包。 ipkg
与 Debian 相比,repos 往往更加令人兴奋和分散,并且支持也少得多,因此您会发现使用它们更容易获得帮助。
答案3
如果有足够的磁盘空间,您是否考虑过在 chroot 中安装 debian?这样,您不仅可以使用原始软件,还可以完成 debian 安装。