我是从源代码,但与智能卡API支持建立一个Android图像。
我已经上市,我做了我所面临的步骤和错误。
Patching Smart card API with android source
1. Downloaded android source “android-2.3.5_r1” from the “source.android.com”
$ mkdir ~/bin
$ PATH=~/bin:$PATH
$ mkdir ANDROID2.3.5_r1
$ cd ANDROID2.3.5_r1
$ repo init -u https://android.googlesource.com/platform/manifest -b android-2.3.5_r1
$ repo sync
The download was successful and complete
2. Downloaded the Smart card patch “smartcard-api-2_3_0.tgz” from “code.google.com/p/seek-for-android/downloads”
3. Applying the patches
$ cd <ANDROID_ROOT_DIR>
$ patch -p1 < <path_to_my_patches>/smartcard-api-2_3_0/smartcard-api.patch
$ patch -p1 < <path_to_my_patches>/smartcard-api-2_3_0/uicc.patch
$ patch -p1 < <path_to_my_patches>/smartcard-api-2_3_0/emulator.patch
$ patch -p1 < <path_to_my_patches>/smartcard-api-2_3_0/cts.patch
$ make update-api
All the patches were successfully applied with no errors and hunk failures
4. Building the Source
$ source build/envsetup.sh
$ lunch full-eng
$ make -j2
在出现的错误如下
target thumb C: SRecTestAudio <= external/srec/srec/test/SRecTestAudio/src/SRecTestAudio.c
system/media/opensles/tests/automated/BufferQueue_test.cpp:34:29: error: SLES/OpenSLESUT.h: No such file or directory
system/media/opensles/tests/automated/BufferQueue_test.cpp: In function 'void CheckErr(SLresult)':
system/media/opensles/tests/automated/BufferQueue_test.cpp:55: error: 'slesutResultToString' was not declared in this scope
make: *** [out/target/product/generic/obj/EXECUTABLES/BufferQueue_test_intermediates/BufferQueue_test.o] Error 1
我得到了类似的错误,其次this链接,解决了这个问题。
我将解释什么它说,
cd /path/to/ur/aosp
vi system/media/opensles/tests/automated/BufferQueue_test.cpp
sudo updatedb
locate OpenSLESUT.h /home/ur aosp path/system/media/opensles/libopensles/OpenSLESUT.h
cp /home/ur aosp path/system/media/opensles/libopensles/OpenSLESUT.h /home/<ur aosp path>/system/media/opensles/include/SLES/OpenSLESUT.h
注意:您AOSP path是您AOSP Android项目。