我的系统是Centos6.7的,我完全按照文档:https://gitlab.com/gitlab-org/gitlab-recipes/tree/master/install/centos,来进行安装。
当进行到Gems的安装步骤时,出问题了。
cd /home/git/gitlab
# For PostgreSQL (note, the option says "without ... mysql")
sudo -u git -H bundle config build.pg --with-pg-config=/usr/pgsql-9.3/bin/pg_config
sudo -u git -H bundle install --deployment --without development test mysql aws
执行:sudo -u git -H bundle install --deployment --without development test mysql aws
,报错提示:
An error occurred while installing charlock_holmes (0.6.9.4), and Bundler cannot continue.
Make sure that `gem install charlock_holmes -v '0.6.9.4'` succeeds before bundling.
然后按照提示,安装charlock_holmes
:
gem install charlock_holmes -v '0.6.9.4'
安装成功,执行gem list
可以看到:
*** LOCAL GEMS ***
bigdecimal (1.2.4)
bundler (1.11.2)
charlock_holmes (0.6.9.4)
....
然后重新执行命令:
sudo -u git -H bundle install --deployment --without development test mysql aws
结果还是报错,说没有安装charlock_holmes
:
An error occurred while installing charlock_holmes (0.6.9.4), and Bundler cannot continue.
Make sure that `gem install charlock_holmes -v '0.6.9.4'` succeeds before bundling.
实际上charlock_holmes
已经安装成功了。
当然除了这个报错,我还看到安装过程中的报错信息,分别有两条,可能跟权限有关系:
Installing charlock_holmes 0.6.9.4 with native extensions
Errno::EACCES: Permission denied @ rb_sysopen - /home/git/gitlab/vendor/bundle/ruby/2.1.0/gems/charlock_holmes-0.6.9.4/.gitignore
Installing rugged 0.21.2 with native extensions
Errno::EACCES: Permission denied @ rb_sysopen - /home/git/gitlab/vendor/bundle/ruby/2.1.0/gems/rugged-0.21.2/LICENSE
请问,这是什么原因?
Actually the charlock_holmes installation failed.
As it says, it’s because of permissions. Did you install it without using git user?
Try it:
For those of you who like to mess around and install GitLab from source, I recommend you check out this post
GitLab CE 8.7 Source Code Installation Manual (Centos6/REHL6)
The answer to your question is below
The reason for your error is that the dependent package is missing
The packages that need to be installed for GitLab on Centos6 are as follows: