2016-03-27 11 views
5

tôi nhìn thấy một cái gì đó tương tự như một lỗi biên dịch C khi tôi cố gắng cài đặt ruby gem json 1.8.3Make lỗi khi cài đặt ruby ​​đá quý json v1.8.3: BFD (GNU binutils cho Debian) 2.22 lỗi nội bộ

Dưới đây là các lệnh Tôi đang chạy:

gem install json -v '1.8.3' 

và đầu ra của tôi là:

Building native extensions. This could take a while... 
ERROR: Error installing json: 
     ERROR: Failed to build gem native extension. 

    /usr/local/rvm/rubies/ruby-2.2.1/bin/ruby -r ./siteconf20160327-27188-189i1cj.rb extconf.rb 
creating Makefile 

make "DESTDIR=" clean 

make "DESTDIR=" 
compiling generator.c 
linking shared-object json/ext/generator.so 
/usr/bin/ld: BFD (GNU Binutils for Debian) 2.22 internal error, aborting at ../../bfd/reloc.c line 443 in bfd_get_reloc_size 

/usr/bin/ld: Please report this bug. 

collect2: error: ld returned 1 exit status 
make: *** [generator.so] Error 1 

make failed, exit code 2 

Gem files will remain installed in /usr/local/rvm/gems/ruby-2.2.1/gems/json-1.8.3 for inspection. 
Results logged to /usr/local/rvm/gems/ruby-2.2.1/extensions/x86_64-linux/2.2.0/json-1.8.3/gem_make.out 

tôi đã cố gắng loại bỏ và cài đặt gói binutilsxây dựng-thiết yếu nhưng điều này không khắc phục được sự cố.

Một số thông tin về hệ điều hành của tôi:

Debian GNU/Linux 7.9 (wheezy) 

uname -a show:

Linux Prometheus 2.6.32-042stab112.15 #1 SMP Tue Oct 20 17:22:56 MSK 2015 x86_64 GNU/Linux 

Tôi đang chạy này trên một máy chủ VPS ảo hóa OpenVZ.

/etc/apt/sources.list của tôi (nếu nó giúp):

deb http://ftp.debian.org/debian wheezy main contrib non-free 
deb http://security.debian.org wheezy/updates main contrib non-free 
deb http://packages.icinga.org/debian icinga-wheezy main 
deb http://http.debian.net/debian wheezy-backports main 
deb-src http://packages.icinga.org/debian icinga-wheezy main 

Google sản xuất không có kết quả phù hợp cho

BFD (GNU Binutils for Debian) 2.22 internal error, aborting at ../../bfd/reloc.c line 443 in bfd_get_reloc_size 

Nếu tôi không thể "làm cho" json đá quý vì của linker lỗi, xin vui lòng tư vấn cho tôi vào đúng hướng để đi, có lẽ tôi có thể thay thế trình biên dịch/linker với phiên bản khác, hoặc bằng cách nào đó circumvent cài đặt những thứ từ nguồn ở đây? Nói chung, mọi giải pháp đều được chào đón ngay khi nó giúp cài đặt đá quý json và tiếp tục với kế hoạch của tôi.

nhờ Big trước!

+0

Hãy thử 2,25 hoặc 2,26 'Binutils'. – CryptoPiggy

+0

Bạn có thể hiển thị 'uname -a' không? – AlexD

+0

@AlexD uname -a: Linux Prometheus 2.6.32-042stab112.15 # 1 SMP Tue 20 thg 10 17:22:56 MSK 2015 x86_64 GNU/Linux –

Trả lời

4

Hãy thử 2,25 hoặc 2,26 binutils như phiên bản 2.22 của bạn là khá cũ.

+1

Xem gói của riêng mình trả lời dưới đây cho các bước chính xác mà tôi đã hoàn thành. –

4

Cài đặt một phiên bản mới hơn của binutils giải quyết vấn đề này đối với tôi.

binutils Theo lời khuyên của Alxs, tôi đã cài đặt 2,26-8. Tôi phải thêm dòng này:

deb http://ftp.de.debian.org/debian sid main 

Để /etc/apt/sources.list tôi, sau đó tôi chạy

apt-get update 
apt-get install binutils 

Những cập nhật binutils đến 2,26

Sau đó, tôi chạy một lần nữa:

gem install json -v '1.8.3' 

Và nó đã trôi chảy lần này.

QUAN TRỌNG: Đừng quên để loại bỏ dòng này:

deb http://ftp.de.debian.org/debian sid main 

từ /etc/apt/sources .list của bạn sau khi bạn đã hoàn tất, nếu không bạn sẽ tiếp tục cài đặt gói tương lai từ sid repo từ bây giờ, đó là có lẽ không phải những gì bạn cần.

+1

Xem phần sau về cách cài đặt gói đơn từ http://serverfault.com/questions/22414/how-can-i-run-debian-stable-but-install-some-packages-from-testing – AlexD

Các vấn đề liên quan