我正在尝试使用sudo -u git -H bundle install --deployment --without development test postgres aws libv8
在Ubuntu PowerPC(mac mini)上安装GitLab,但是在libv8(3.11.8.17)上安装失败。输出如下所示。
我是Ruby的新手,但我想它正试图从二进制文件安装不同的架构?我如何从源安装?任何帮助表示赞赏!
Bundler版本1.3.5
宝石版 2.0.3
ruby version 2.0.0p247(2013-06-27)[powerpc-linux]
UNAME Linux ubumini 3.2.0-53-powerpc-smp#81-Ubuntu SMP Thu 8月22日21:09:31 UTC 2013 ppc ppc ppc GNU / Linux
Installing libv8 (3.11.8.17)
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
/usr/local/bin/ruby extconf.rb
creating Makefile
Compiling v8 for ia32
Using python 2.7.3
Using compiler: /usr/bin/g++
In file included from ../src/allocation.h:31:0,
from ../src/allocation.cc:28:
../src/globals.h:90:2: error: #error Host architecture was not detected as supported by v8
../src/globals.h:113:2: error: #error Target architecture ia32 is only supported on ia32 host
make[1]: *** [/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/libv8-3.11.8.17/vendor/v8/out/ia32.release/obj.target/preparser_lib/src/allocation.o] Error 1
make: *** [ia32.release] Error 2
/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/libv8-3.11.8.17/ext/libv8/location.rb:36:in `block in verify_installation!': libv8 did not install properly, expected binary v8 archive '/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/libv8-3.11.8.17/vendor/v8/out/ia32.release/obj.target/tools/gyp/libv8_base.a'to exist, but it was not found (Libv8::Location::Vendor::ArchiveNotFound)
from /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/libv8-3.11.8.17/ext/libv8/location.rb:35:in `each'
from /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/libv8-3.11.8.17/ext/libv8/location.rb:35:in `verify_installation!'
from /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/libv8-3.11.8.17/ext/libv8/location.rb:26:in `install!'
from extconf.rb:7:in `<main>'
GYP_GENERATORS=make \
build/gyp/gyp --generator-output="out" build/all.gyp \
-Ibuild/standalone.gypi --depth=. \
-Dv8_target_arch=ia32 \
-S.ia32 -Dv8_can_use_vfp_instructions=true
make[1]: Entering directory `/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/libv8-3.11.8.17/vendor/v8/out'
CXX(target) /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/libv8-3.11.8.17/vendor/v8/out/ia32.release/obj.target/preparser_lib/src/allocation.o
make[1]: Leaving directory `/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/libv8-3.11.8.17/vendor/v8/out'
Gem files will remain installed in /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/libv8-3.11.8.17 for inspection.
Results logged to /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/libv8-3.11.8.17/ext/libv8/gem_make.out
An error occurred while installing libv8 (3.11.8.17), and Bundler cannot continue.
Make sure that `gem install libv8 -v '3.11.8.17'` succeeds before bundling.
答案 0 :(得分:2)
V8编译器只有x86,AMD64和ARM的后端。
答案 1 :(得分:2)
请参阅https://github.com/cowboyd/libv8/tree/3.11#bring-your-own-v8
使用以下命令安装libv8:
gem install libv8 -- --with-system-v8
请注意,如果您打算运行自己的V8,则必须安装V8及其标头(在Debian发行版的libv8-dev中找到)。
答案 2 :(得分:2)
您可以在另一台计算机上预编译资产,并将public / assets文件夹scp到您的gitlab power-pc计算机。
您必须下载gitlab并在开发计算机上进行快速设置。这就是我所做的。
# on my development machine
git clone https://github.com/gitlabhq/gitlabhq.git gitlab
cd gitlab
git checkout 6-3-stable
cp config/gitlab.yml.example config/gitlab.yml
cp config/unicorn.rb.example config/unicorn.rb
cp config/database.yml.postgresql config/database.yml
# edit and set db
nano config/database.yml
# https://github.com/CiTroNaK/Installation-guide-for-GitLab-on-OS-X
brew install icu4c libxml2
gem install charlock_holmes --version '0.6.9.4'
bundle install --deployment --without development test mysql aws
bundle exec rake db:create RAILS_ENV=production
bundle exec rake assets:precompile RAILS_ENV=production
scp -r ~/gitlab-project-path/public/assets user@gitlab-ip:/home/ubuntu/
ssh user@gitlab-ip
# on my remote machine
sudo rm -rf /home/git/gitlab/public/assets
sudo mv assets /home/git/gitlab/public
sudo service gitlab restart
希望这有帮助!