검색결과 리스트
글
error: neither -p product specified nor ANDROID_PRODUCT_OUT set
안드로이드를 빌드한 후 이를 안드로이드 기기에 적용하려 할 때 이러한 오류가 발생하는 경우가 있습니다.
# fastboot flashall
error: neither -p product specified nor ANDROID_PRODUCT_OUT set
이는 아직 root 의 bash 파일에 환경변수를 새로 적용하지 않을 경우 발생합니다. 따라서 root의 bashrc를 수정함으로서 이를 해결합니다.
# vi ~/.bashrc
다음으로 아래 내용을 추가합니다.
export ANDROID_TOOLS=안드로이드 소스코드가 설치된 폴더/out/host/linux-x86
export PATH=$ANDROID_TOOLS/bin:$JAVA_HOME/bin:$PATH
export ANDROID_PRODUCT_OUT=안드로이드 소스코드가 설치된 폴더/out/target/product/컴파일 형식(에뮬의 경우 generic)
안드로이드 컴파일 형식에 관해 알고 싶으신 분은 이전에 작성된 포스팅을 참고해 주시기 바랍니다.
위 과정까지 완료하셨다면 새로 수정한 bash를 적용한 후 실행해봅니다.
# source ~/.bashrc
# fastboot flashall
실행시 컴파일된 이미지가 안드로이드 기기에 적용되는 것을 확인하실 수 있습니다.
'안드로이드 > 프레임워크' 카테고리의 다른 글
안드로이드 프레임워크 프로그래밍(4) [시스템서비스 추가하기] (12) | 2015.01.24 |
---|---|
리눅스로 Nexus 기기의 안드로이드 버전 다운그레이드 하기 (0) | 2015.01.22 |
make: *** [out/target/common/obj/JAVA_LIBRARIES/android_stubs_current_intermediates/classes.jar] error 41 (0) | 2015.01.20 |
make: *** [out/target/common/obj/PACKAGING/checkapi-last-timestamp] error 38 (0) | 2015.01.18 |
안드로이드 프레임워크 프로그래밍(3) [NEXUS5에 소스 빌드하기] (36) | 2015.01.17 |
설정
트랙백
댓글
글
make: *** [out/target/common/obj/JAVA_LIBRARIES/android_stubs_current_intermediates/classes.jar] error 41
안드로이드 코드를 빌드하던 도중 다음과 같은 오류를 맞닥트리는 경우가 있습니다.
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
2 errors
6 warnings
make: *** [out/target/common/obj/JAVA_LIBRARIES/android_stubs_current_intermediates/classes.jar] 오류 41
make: *** 끝나지 않은 작업을 기다리고 있습니다....
이 경우 자신의 컴퓨터 환경이 다음에 해당되는지 확인합니다.
1.자신이 Build 하는 JDK의 버전이 해당 안드로이드 버전에 맞는지 확인합니다.
(GingerBread에서 Kitkat 사이에 해당되는 버전은 JDK 6을, lollipop 이후의 버전은 JDK 7을 사용해야 합니다.)
2. 컴파일 옵션을 사용하였을 경우 컴파일 도중 오작동으로 인해 위와 같은 오류가 발생하는 경우가 있습니다. 이 경우 컴파일 시간이 느려지는 것을 감수하고 옵션 없이 컴파일을 수행합니다.
$ make
만약 다음 과정을 수행해도 같은 오류가 발생시 컴파일을 처음부터 다시 수행해야 합니다.
$ make clean
$ make
'안드로이드 > 프레임워크' 카테고리의 다른 글
설정
트랙백
댓글
글
make: *** [out/target/common/obj/PACKAGING/checkapi-last-timestamp] error 38
안드로이드 소스를 빌드하던 도중 다음과 같은 버그를 맞닥뜨리는 경우가 있습니다.
out/target/common/obj/PACKAGING/public_api.txt:23512: error 12: Class android.telephony.gsm.SmsManager changed static qualifier
prebuilts/sdk/api/19.txt:23496: error 9: Removed public method android.telephony.gsm.SmsManager.divideMessage
prebuilts/sdk/api/19.txt:23497: error 9: Removed public method android.telephony.gsm.SmsManager.getDefault
prebuilts/sdk/api/19.txt:23498: error 9: Removed public method android.telephony.gsm.SmsManager.sendDataMessage
prebuilts/sdk/api/19.txt:23499: error 9: Removed public method android.telephony.gsm.SmsManager.sendMultipartTextMessage
prebuilts/sdk/api/19.txt:23500: error 9: Removed public method android.telephony.gsm.SmsManager.sendTextMessage
prebuilts/sdk/api/19.txt:23501: error 10: Removed field android.telephony.gsm.SmsManager.RESULT_ERROR_GENERIC_FAILURE
prebuilts/sdk/api/19.txt:23502: error 10: Removed field android.telephony.gsm.SmsManager.RESULT_ERROR_NO_SERVICE
prebuilts/sdk/api/19.txt:23503: error 10: Removed field android.telephony.gsm.SmsManager.RESULT_ERROR_NULL_PDU
prebuilts/sdk/api/19.txt:23504: error 10: Removed field android.telephony.gsm.SmsManager.RESULT_ERROR_RADIO_OFF
prebuilts/sdk/api/19.txt:23505: error 10: Removed field android.telephony.gsm.SmsManager.STATUS_ON_SIM_FREE
prebuilts/sdk/api/19.txt:23506: error 10: Removed field android.telephony.gsm.SmsManager.STATUS_ON_SIM_READ
prebuilts/sdk/api/19.txt:23507: error 10: Removed field android.telephony.gsm.SmsManager.STATUS_ON_SIM_SENT
prebuilts/sdk/api/19.txt:23508: error 10: Removed field android.telephony.gsm.SmsManager.STATUS_ON_SIM_UNREAD
prebuilts/sdk/api/19.txt:23509: error 10: Removed field android.telephony.gsm.SmsManager.STATUS_ON_SIM_UNSENT
******************************
You have tried to change the API from what has been previously released in
an SDK. Please fix the errors listed above.
******************************
make: *** [out/target/common/obj/PACKAGING/checkapi-last-timestamp] 오류 38
make: *** 끝나지 않은 작업을 기다리고 있습니다....
frameworks/base/api/current.txt:23496: error 9: Removed public method android.telephony.gsm.SmsManager.divideMessage
frameworks/base/api/current.txt:23497: error 9: Removed public method android.telephony.gsm.SmsManager.getDefault
frameworks/base/api/current.txt:23498: error 9: Removed public method android.telephony.gsm.SmsManager.sendDataMessage
frameworks/base/api/current.txt:23499: error 9: Removed public method android.telephony.gsm.SmsManager.sendMultipartTextMessage
frameworks/base/api/current.txt:23500: error 9: Removed public method android.telephony.gsm.SmsManager.sendTextMessage
frameworks/base/api/current.txt:23501: error 10: Removed field android.telephony.gsm.SmsManager.RESULT_ERROR_GENERIC_FAILURE
frameworks/base/api/current.txt:23502: error 10: Removed field android.telephony.gsm.SmsManager.RESULT_ERROR_NO_SERVICE
frameworks/base/api/current.txt:23503: error 10: Removed field android.telephony.gsm.SmsManager.RESULT_ERROR_NULL_PDU
frameworks/base/api/current.txt:23504: error 10: Removed field android.telephony.gsm.SmsManager.RESULT_ERROR_RADIO_OFF
frameworks/base/api/current.txt:23505: error 10: Removed field android.telephony.gsm.SmsManager.STATUS_ON_SIM_FREE
frameworks/base/api/current.txt:23506: error 10: Removed field android.telephony.gsm.SmsManager.STATUS_ON_SIM_READ
frameworks/base/api/current.txt:23507: error 10: Removed field android.telephony.gsm.SmsManager.STATUS_ON_SIM_SENT
frameworks/base/api/current.txt:23508: error 10: Removed field android.telephony.gsm.SmsManager.STATUS_ON_SIM_UNREAD
frameworks/base/api/current.txt:23509: error 10: Removed field android.telephony.gsm.SmsManager.STATUS_ON_SIM_UNSENT
out/target/common/obj/PACKAGING/public_api.txt:23512: error 12: Class android.telephony.gsm.SmsManager changed static qualifier
out/target/common/obj/PACKAGING/public_api.txt:23512: error 27: Class android.telephony.gsm.SmsManager removed final qualifier
******************************
You have tried to change the API from what has been previously approved.
To make these errors go away, you have two choices:
1) You can add "@hide" javadoc comments to the methods, etc. listed in the
errors above.
2) You can update current.txt by executing the following command:
make update-api
To submit the revised current.txt to the main Android repository,
you will need approval.
******************************
이는 다음과 같이 해결할 수 있습니다.
1. 특정 안드로이드 기기를 타겟으로 설정한 후 Build를 하실 경우 다음과 같이 멈추어버리는 경우가 있습니다. 이는 소스코드에 Binary와 Factory Image를 추가한 후 Build를 하여야 합니다. Binary와 Factory Image 추가법은 아래 블로그랠 참조해 주시기 바랍니다.
2. 다음과 같은 명령어를 입력합니다.
# make update-api
# make
※make 실행시 추가 옵선 (예를들어 -j4)을 걸고 Build를 하면 도중에 컴파일 오류를 뿜어내는 경우가 있습니다. 옵션 없이 make를 활용하시면 컴파일 시간은 늘어나지만 에러를 최대한으로 줄이실 수 있습니다.