2011-12-05 9 views

Odpowiedz

58

rozwiązało problem.

Rozwiązanie:

  1. Przejdź do ../android-ndk-r7/prebuilt/linux-x86/bin
  2. Zmień nazwę pliku awk do awk_

Imoprtant o czym należy pamiętać na komputerze z systemem Windows:

ndk rewizja 7 i nowsze, źródło ndk można zbudować bez cygw in, ie .., zamiast wywoływać polecenie ndk-build z wnętrza powłoki Cygwin, powinieneś wywołać polecenie run ndk-build.cmd w oknie poleceń MSDOS.


To działa, ponieważ prawdopodobnie NDK-zbudować próbuje najpierw użyć lokalnie zdefiniowane, ale stary (przynajmniej dla Linuksa), wersję awk. Zmieniając nazwę, sprawiamy, że jest ona niedostępna przez takie polecenie, więc najwyraźniej nkk-build wywołuje awk systemowy.

+2

To zadziałało! Ale dlaczego? –

+0

to zadziałało dla mnie thanx –

+1

Co za losowy problem. Dziękuję bardzo. – tofutim

2

Spójrz na tej japońskiej post: http://d.hatena.ne.jp/yohpapa/20111113/1321198570

Wyjaśniają, jak rozwiązać problem. Jest w języku japońskim, ale polecenia są czytelne =)

Nadzieja to pomaga ...

+0

Dzięki za to człowiekowi. Ponieważ potrafię zrozumieć japoński, łatwo go rozwiązać. –

14

To rozwiązanie (z Santhosh) działa również pod Windows:

  1. Przejdź do ../android-ndk-r7/prebuilt/windows/bin zmienić nazwę pliku
  2. zmiany nazwy awk.exe do awk_. exe
1

Wystąpił problem z różnymi wersjami awk w systemie Windows. Ta zmiana używa wersji awk cygwin z konsoli cygwin i wersji wcześniej zbudowanej z konsoli dos.

Dodaj do init.mk:

ifeq ($(HOST_OS),cygwin) 
     HOST_AWK := /bin/awk 
endif 
3

Myślę, że problem jest $(HOST_AWK) nie określono prawidłowo i lokalnym prebuild awk.exe nie działa. Dlatego prebuild awk.exe należy usunąć lub zmienić jego nazwę i użyć gawk, jeśli awk nie jest zdefiniowany.

Aby rozwiązać ten problem:

1 - zmiana nazwy <drive>\android-ndk\prebuilt\windows\bin\awk.exe do <drive>\android-ndk\prebuilt\windows\bin\awk_.exe.

2 - Otwórz <drive>\android-ndk\build\core\init.mk

Wymień

HOST_AWK := $(strip $(HOST_AWK)) 
ifndef HOST_AWK 
    HOST_AWK := awk 
endif 

z

HOST_AWK := $(strip $(HOST_AWK)) 
ifndef HOST_AWK 
    HOST_AWK := gawk 
endif 

Zauważ, że awk przemianowany na gawk.