2016-03-31 14 views
5

Bildiğiniz gibi, Bionic Android uygulamaları çalıştırmak için Google tarafından kullanılan bir C kitaplığıdır. Linux makinelerinde derleme çabaları vardır, bu yüzden Android dışında kolayca kullanılabilir. Bu, orijinal olarak Gentoo-biyonik olarak adlandırılan son çabalardan gelen koddur. Orijinal proje Gentoo tabanlıydı, ancak mevcut kaynak Gentoo'ya özgü değil. Ubuntu kullanıyorum. İşte kod:Bir x86_64 linux makinesinde gentoo-biyonik derlenmesi

https://github.com/gentoobionic/bionic

Ve bu ELC2013 bu konuda sunum:

(kötü ses) X86_64 Ubuntu, ama başarısız oldu. Denedim:

./autogen.sh 
./configure 

I got:

configure: error: unsupported host cpu x86_64 

yüzden çalıştı:

./configure --build=arm-linux --target=arm-linux --host=arm-linux 

Bu ince yapılandırılmış, ama var:

$ make 
make: *** No rule to make target `libc/arch-x86/include/machine/cpu-features.h', 
    needed by `all-am'. Stop. 

şansı var mı Birisi bir geçici çözüm önerebilir?

cevap

2

Kasım 2015'ten beri benim set of ebuid scripts benim x86_64 ve i386 için bionic'i Gentoo x86_64 masaüstümde derleyin. Gerekli araçlar: glibc-hedefleme GCC sürüm 4.9.3 veya 5.3.0; binutils 2.4.25 veya üstü, glibc-targeting clang 3.5.0, yapmak.

Bu araçları masaüstünüze yükleyebiliyorsanız, potansiyel olarak bionic'i derleyebilirsiniz. Bununla birlikte, ebuild'lerin zillion yamaları uyguladığını unutmayın.

  1. Önyükleme bir x86_64 masaüstü veya dizüstü Gentoo DVD canlı:

    onlar, aşağıdaki olabilir ne görmek için.
  2. Komut dosyalarımı yükleyin.
  3. onları

    KULLANIMI = ayrıntılı Ebuild biyonik/biyonik-5.1.1-r29.ebuild temiz qmerge 2> & 1 yüklemek örneğin çıkış yakalayan Run | tee/tmp/biyonik.Böyle komut sona erdiği kez

cout gcc/clang/ld/ar komut hatları ile yamalı kaynak ağacını, ara ve nihai derleme sonucu ve tam yapı günlüğünü olsun.

+0

Bunu yapıyorum ve umarım yamalı kaynak ağacını kolayca başka bir yerde derleyebilirim. Burada birisi şöyle demişti: "Bir ebuild basit bir metin dosyasıdır (bash betiğinden başka bir şey değil) Sadece kaynak dosyaya ihtiyacın var ve kaynağı el ile derleyin (Portage, Gentoo paket yöneticisi, derleme dosyalarını otomatikleştirmek için ebuild dosyalarını kullanır. kaynak dosyaları)." http://ubuntuforums.org/showthread.php?t=255187 Bu doğru mu? – Ho1

3

Biyonik hakkında hiçbir şey bilmiyorum. Sadece sana yardım etmek istiyorum. Yapılandırma dosyasını görüntülediğimde bu kodu gördüm.

Makefile.h.am:Line 135

if TARGET_ARCH_IS_X86 
includemachine_HEADERS += \ 
    $(addprefix $(top_srcdir)/libc/arch-x86/include/, \ 
     machine/fpu_control.h \ 
     machine/sigcontext.h \ 
     machine/wordsize.h \ 
    ) 
endif 

if TARGET_ARCH_IS_ARM 
includemachine_HEADERS += \ 
    $(addprefix $(top_srcdir)/libc/arch-x86/include/, \ 
     machine/cpu-features.h \ 
    ) 
endif 

configure.ac: Satır 94

case $host_cpu in 
    *i?86*) 
    TARGET_ARCH=x86 
    COMMON_LDFLAGS="${COMMON_LDFLAGS} ${COMMON_LDFLAGS_X86}" 
    COMMON_CFLAGS="${COMMON_CFLAGS} ${COMMON_CFLAGS_X86}" 
    COMMON_INCLUDES="${COMMON_INCLUDES} ${COMMON_INCLUDES_X86}" 
    COMMON_LDLIBS="${COMMON_LDLIBS} ${COMMON_LDLIBS_X86}" 
    ;; 
    *arm*) 
    TARGET_ARCH=arm 
    COMMON_LDFLAGS="${COMMON_LDFLAGS} ${COMMON_LDFLAGS_ARM}" 
    COMMON_CFLAGS="${COMMON_CFLAGS} ${COMMON_CFLAGS_ARM}" 
    COMMON_INCLUDES="${COMMON_INCLUDES} ${COMMON_INCLUDES_ARM}" 
    COMMON_LDLIBS="${COMMON_LDLIBS} ${COMMON_LDLIBS_ARM}" 
    ;; 
    *) 
    AC_MSG_ERROR([unsupported host cpu $host_cpu]) 
    ;; 
esac 

/makine klasörü dahil hiçbir cpu-features.h dosyası yok. Yani farklı hedef kullanmalısınız.

İlgili konular