当前位置: 首页 > 知识库问答 >
问题:

在Ubuntu Bash Windows 10上安装rails

寿丰
2023-03-14

我正在使用启用了 Bash 构建的 Windows 10 预览体验成员。lsb_release显示了其乌班图 14.04 LTS。所以,我想知道我终于可以在Windows 10上安装RoR而不使用其他安装程序。因为他们在视窗上说它的乌班图。

我按照Chris Oliver的GoRails指南在Ubuntu 14.04 Win10上设置RoR。我使用RVM尝试了这两种方法

我还要求克里斯在他的网站上为此写一个指南,他认为这将是一个好主意,但他唯一关心的是使用Windows上的Linux软件打开端口并连接到它。

我相信很快就会有人找到在Windows 10上安装rails的方法,但同时我想知道这是否可能?如果是,我做错了什么。帮我修一下。此外,我应该为这个RVM或RBENV使用什么。在这种情况下,哪个更好?

(注意:如果这看起来像两个不同的问题,请告诉我。我会编辑它。我甚至不知道这是否可能。修正错误是后面的部分。)

以下是rbenv错误消息:

$ rbenv install 2.3.0
Downloading ruby-2.3.0.tar.bz2...
-> https://cache.ruby-lang.org/pub/ruby/2.3/ruby-2.3.0.tar.bz2
Installing ruby-2.3.0...

BUILD FAILED (Ubuntu 14.04 using ruby-build 20160426-12-gf03f7f8)

Inspect or clean up the working tree at /tmp/ruby-build.20160513120821.313
Results logged to /tmp/ruby-build.20160513120821.313.log

Last 10 log lines:
rm -f ../../../.ext/x86_64-linux/io/wait.so  *.o  *.bak mkmf.log .*.time
rm -f Makefile extconf.h conftest.* mkmf.log
rm -f core ruby *~
rmdir --ignore-fail-on-non-empty -p  2> /dev/null || true
make[2]: Leaving directory `/tmp/ruby-build.20160513120821.313/ruby-2.3.0/ext/io/wait'
make[1]: Leaving directory `/tmp/ruby-build.20160513120821.313/ruby-2.3.0'
Generating RDoc documentation
./ruby is not found.
Try `make' first, then `make test', please.
make: *** [rdoc] Error 1

RVM错误消息:

-> https://cache.ruby-lang.org/pub/ruby/2.3/ruby-2.3.0.tar.bz2
Installing ruby-2.3.0...

BUILD FAILED (Ubuntu 14.04 using ruby-build 20160426-12-gf03f7f8)

Inspect or clean up the working tree at /tmp/ruby-build.20160513120821.313
Results logged to /tmp/ruby-build.20160513120821.313.log

Last 10 log lines:
rm -f ../../../.ext/x86_64-linux/io/wait.so  *.o  *.bak mkmf.log .*.time
rm -f Makefile extconf.h conftest.* mkmf.log
rm -f core ruby *~
rmdir --ignore-fail-on-non-empty -p  2> /dev/null || true
cooldudeabhi@ACERASPIRE:~$ rvm install 2.3.0
ruby-2.3.0 - #removing src/ruby-2.3.0..
Searching for binary rubies, this might take some time.
Found remote file https://rubies.travis-ci.org/ubuntu/14.04/x86_64/ruby-2.3.0.ta                    r.bz2
Checking requirements for ubuntu.
Requirements installation successful.
df: Warning: cannot read table of mounted file systems: No such file or director                    y
ruby-2.3.0 - #configure
ruby-2.3.0 - #download
ruby-2.3.0 - #validate archive
cat: /dev/fd/63: No such file or directory
cat: /dev/fd/63: No such file or directory
The downloaded package for https://rubies.travis-ci.org/ubuntu/14.04/x86_64/ruby                    -2.3.0.tar.bz2,
Does not contains single 'bin/ruby' or 'ruby-2.3.0',
Only '' were found instead.
Mounting remote ruby failed with status 4, trying to compile.
df: Warning: cannot read table of mounted file systems: No such file or director                    y
Checking requirements for ubuntu.
Requirements installation successful.
grep: write error: Broken pipe
sort: fflush failed: standard output: Broken pipe
sort: write error
Installing Ruby from source to: /home/cooldudeabhi/.rvm/rubies/ruby-2.3.0, this                     may take a while depending on your cpu(s)...
ruby-2.3.0 - #downloading ruby-2.3.0, this may take a while depending on your co                    nnection...
ruby-2.3.0 - #extracting ruby-2.3.0 to /home/cooldudeabhi/.rvm/src/ruby-2.3.0..rvm install 2.3.0

共有1个答案

许天逸
2023-03-14

从内部版本 14342 开始,这似乎是不可能的,因为这是 Windows 本身 Bash 的问题 [1]。

据报道,一些内部测试版本能够通过 RVM 安装 ruby,但目前似乎没有 Windows 预览体验成员的“快速”圈子可以使用这些版本中的任何一个 [2]。

更近一步:Build 14352于2016-05-26[3]发布。运行apt-get update后

正如下面的源代码 #1 中所述,为了充分利用 rvm,我需要使用 /bin/bash 运行 bash --login。为了实现这一点,我把它附加到Windows快捷方式的目标字段上的Ubuntu上的Bash中,如下所示:

< code > C:\ Windows \ System32 \ bash . exe-C " CD ~

现在我可以< code>rvm使用ruby-2.3.1 - default,< code>gem install rails和< code>rails new banana,但是当bundler试图运行时,会出现一个错误:

dozers@DRAGONSTONE:~/banana$ bundle
--- ERROR REPORT TEMPLATE -------------------------------------------------------
...
Error details

    ArgumentError: parent directory is world writable but not sticky
      /home/dozers/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/tmpdir.rb:93:in `ensure in mktmpdir'
      /home/dozers/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/tmpdir.rb:95:in `mktmpdir'
      /home/dozers/.rvm/gems/ruby-2.3.1/gems/bundler-1.12.5/lib/bundler/vendor/compact_index_client/lib/compact_index_client/updater.rb:29:in `update'
...
--- TEMPLATE END ----------------------------------------------------------------

Unfortunately, an unexpected error occurred, and Bundler cannot continue.

First, try this link to see if there are any existing issue reports for this error:
https://github.com/bundler/bundler/search?q=parent+directory+is+world+writable+but+not+sticky&type=Issues

cat:/dev/fd/63:在即将发布的Windows Insider版本[4]中,没有报告修复此类文件或目录错误,但这似乎并不致命。

作为bundler错误的临时解决方法,发出< code>chmod -R t ~/。bundle/cache似乎可以做到这一点,现在您已经有了一个可以工作的rails安装[5]。

  1. https://github.com/Microsoft/BashOnWindows/issues/9#issuecomment-207978726
  2. https://github.com/Microsoft/BashOnWindows/issues/222#issuecomment-214561156
  3. https://blogs.windows.com/windowsexperience/2016/05/26/announcing-windows-10-insider-preview-build-14352/
  4. https://github.com/Microsoft/BashOnWindows/issues/266#issuecomment-219576351
  5. https://github.com/bundler/bundler/issues/4630#issuecomment-223576426人
 类似资料:
  • 问题内容: 我在Android手机上安装Pocketsphinx时遇到一些问题,但在CMUSphinx的支持论坛,IRC,现有的StackOverflow帖子或强化的Googling上找不到答案。如果在座的人有时间愿意提供帮助,我将不胜感激。 首先,我对于是否可以在Android上安装Pocketsphinx感到困惑。我相信我需要Java容器才能在Android上运行,因此我尝试安装Sphinx4

  • 问题内容: 我正在尝试在Ubuntu10.04上安装RMagick。但没有喜悦。我什至从源代码编译并安装了ImageMagick,但是当我尝试使用RubyGems安装RMagick时,这里的说明仍然没有帮助。我收到此错误: 这是什么意思呢?:)我是Ruby和RubyGems的新手,所以请保持谦虚。我的设置如下: 我几乎没有想法(也很累!)。我厌倦了使用上面的链接从源代码编译RMagick,但是由于

  • 问题内容: 我通过阅读本教程安装了预构建版本。如果我启动elasticsearch,则会收到以下错误消息,我应该尝试旧版本的ES还是解决该问题? 问题答案: 您尝试将ES分配给已使用的端口8080。从那里的配置的罪魁祸首是。只需将两个配置都保留在配置之外,或为envvar分配其他端口。ES的默认端口是http和9300的9200。

  • 这是不言自明的... 无法完成安装,因为找不到一个或多个必需的项目。 正在安装的软件:Android 原生开发工具 20.0.0.v201206242043-391819 (com.android.ide.eclipse.ndk.feature.group 20.0.0.v201206242043-391819) 缺少要求:Android本机开发工具20 . 0 . 0 . v 201206242

  • 我使用CentOS(CentOSLinux版本7.5.1804(核心))远程(托管我的服务器,我想运行python脚本)最初安装了python2。 我安装了python3,但是,两个版本的路径似乎都无法识别: 奇怪的Python3确实已安装,路径无法识别。无法运行脚本文件(使用)。

  • 问题内容: 这听起来像是关于SF的重复问题,但我仍未找到明确的答案。我使用“ setup.py install”命令安装了Paramiko 1.7,并在运行demo.py程序时收到此错误: 即使安装了PyCrypto 2.1,我也收到此错误。在运行test.py(安装随附)时,出现以下错误- 在所有这些之后,我没有信心继续安装AES,因为我知道我可能还会遇到另一个ImportError!请指教。安

  • 问题内容: 我根本无法在Windows上安装NumPy。我不断收到此错误- 我之前有Python 64位版本,但不确定NumPy版本是否与64位Python兼容。因此,我将其卸载并安装了32位Python版本。但是我仍然遇到相同的错误。虽然我的Python 32位版本运行正常。 我尝试了“ pip install numpy”,但最后却给我以下错误- 请告诉我我可能做错了什么。 问题答案: 一些解

  • 问题内容: 我正在尝试在Ubuntu 12.10上安装Node.js,但是终端显示了有关丢失软件包的错误。我尝试了这个: 但是当我来到最后一行时显示此错误: 然后,我卸载了,并尝试了第二种选择: 终端机说相同的错误,但同时也向我显示了我在顶部显示的文本。我认为是问题所在,但我不知道如何解决。 问题答案: 只需按照此处给出的说明进行操作: 安装示例: 它会在当前稳定的Ubuntu上安装当前稳定的No