4

私のプラットフォーム情報 OS: Windows 7 32 ビット ADT バージョン: ビルド: v22.2.1-833290 SDK ツール バージョン: 22.2.1 SDK ビルドツール バージョン: 18.1

新しい Renderscript サポート ライブラリ v8 を機能させようとしていました。API レベル 18 をターゲット SDK として使用して Android アプリケーションを作成し、最低限必要な SDK として API レベル 17 の SDK をコンパイルします。次に、次のリンクの手順に従ってプロジェクトを構成しまし。 com/guide/topics/renderscript/compute.html#access-rs-apis .

追加した後

renderscript.target=18
renderscript.support.mode=true
sdk.buildtools=18.1.0

ファイル「project.properties」に、空の .rs ファイルを src フォルダーに追加しました (いつものように、パッケージの下に)。その後、次のエラー メッセージを受け取りました。

[2013-09-22 22:32:32 - aaaaa] <invalid>: error: missing pragma for version in source file
[2013-09-22 22:32:32 - aaaaa] <invalid>: error: missing "#pragma rs java_package_name(com.foo.bar)" in source file
[2013-09-22 22:32:32 - aaaaa] C:\Work\SDK\adt-bundle-windows-x86-20130917\sdk\build-tools\android-4.3\arm-linux-androideabi-ld.exe: fatal error: C:\Users\rensijie\workspace\aaaaa\bin\rsObj\armeabi-v7a\test.o: attempt to map 40 bytes at offset 1616 exceeds size of file; the file may be corrupt
[2013-09-22 22:32:32 - aaaaa] C:\Users\rensijie\workspace\aaaaa\bin\rsObj\mips\test.o: file not recognized: File format not recognized
[2013-09-22 22:32:32 - aaaaa] C:\Work\SDK\adt-bundle-windows-x86-20130917\sdk\build-tools\android-4.3\i686-linux-android-ld.exe: error: C:\Users\rensijie\workspace\aaaaa\bin\rsObj\x86\test.o: section name section has wrong type: 2097152
[2013-09-22 22:32:32 - aaaaa] C:\Work\SDK\adt-bundle-windows-x86-20130917\sdk\build-tools\android-4.3\i686-linux-android-ld.exe: fatal error: C:\Users\rensijie\workspace\aaaaa\bin\rsObj\x86\test.o: attempt to map 46661632 bytes at offset 0 exceeds size of file; the file may be corrupt

最初の2つのエラーメッセージの意味を理解したので、追加しました

#pragma version(1)
#pragma rs java_package_name(com.example.aaaaa)

ファイルに。

最初の 2 つのエラー メッセージは表示されなくなりましたが、次のエラー メッセージが再び表示され、スクリプトの内容を追加または変更しても解消されません (たとえば、以前に機能していたスクリプトをコピーしたのに、現在は機能しません)。ただし、gen フォルダー内の対応する .java スクリプト ファイルが適切に作成されていることを確認しました (内部に import android.support.v8.renderscript.*; を使用)。

[2013-09-22 22:34:29 - aaaaa] C:\Work\SDK\adt-bundle-windows-x86-20130917\sdk\build-tools\android-4.3\arm-linux-androideabi-ld.exe: fatal error: C:\Users\rensijie\workspace\aaaaa\bin\rsObj\armeabi-v7a\test.o: attempt to map 40 bytes at offset 1616 exceeds size of file; the file may be corrupt
[2013-09-22 22:34:30 - aaaaa] C:\Users\rensijie\workspace\aaaaa\bin\rsObj\mips\test.o: file not recognized: File format not recognized
[2013-09-22 22:34:30 - aaaaa] C:\Work\SDK\adt-bundle-windows-x86-20130917\sdk\build-tools\android-4.3\i686-linux-android-ld.exe: error: C:\Users\rensijie\workspace\aaaaa\bin\rsObj\x86\test.o: section name section has wrong type: 2097152
[2013-09-22 22:34:30 - aaaaa] C:\Work\SDK\adt-bundle-windows-x86-20130917\sdk\build-tools\android-4.3\i686-linux-android-ld.exe: fatal error: C:\Users\rensijie\workspace\aaaaa\bin\rsObj\x86\test.o: attempt to map 46661632 bytes at offset 0 exceeds size of file; the file may be corrupt
[2013-09-22 22:34:30 - aaaaa] C:\Work\SDK\adt-bundle-windows-x86-20130917\sdk\build-tools\android-4.3\arm-linux-androideabi-ld.exe: error: C:\Users\rensijie\workspace\aaaaa\bin\rsObj\armeabi-v7a\test2.o: section name section has wrong type: 469762048
[2013-09-22 22:34:30 - aaaaa] C:\Work\SDK\adt-bundle-windows-x86-20130917\sdk\build-tools\android-4.3\arm-linux-androideabi-ld.exe: fatal error: C:\Users\rensijie\workspace\aaaaa\bin\rsObj\armeabi-v7a\test2.o: attempt to map 3103784960 bytes at offset 0 exceeds size of file; the file may be corrupt
[2013-09-22 22:34:30 - aaaaa] C:\Users\rensijie\workspace\aaaaa\bin\rsObj\mips\test2.o: file not recognized: File format not recognized
[2013-09-22 22:34:30 - aaaaa] C:\Work\SDK\adt-bundle-windows-x86-20130917\sdk\build-tools\android-4.3\i686-linux-android-ld.exe: error: C:\Users\rensijie\workspace\aaaaa\bin\rsObj\x86\test2.o: section name section has wrong type: 7168
[2013-09-22 22:34:30 - aaaaa] C:\Work\SDK\adt-bundle-windows-x86-20130917\sdk\build-tools\android-4.3\i686-linux-android-ld.exe: fatal error: C:\Users\rensijie\workspace\aaaaa\bin\rsObj\x86\test2.o: attempt to map 39168 bytes at offset 0 exceeds size of file; the file may be corrupt

Eclipse では、プロジェクト名に赤い十字があり、プロジェクトに何か問題があることを示しています。アプリケーションを実行しようとすると、Eclipse から「プロジェクトにエラーが含まれています。アプリケーションを実行する前にエラーを修正してください」というメッセージが表示されます。ただし、私が受け取ったエラーメッセージとプロジェクト名の赤い十字を除いて、どのJavaファイルにもエラーはありません(Javaファイルに赤い十字はありません)

4

1 に答える 1

0

この問題はごく最近、Google の人々によって対処されました。https://code.google.com/p/android/issues/detail?id=60327&colspec=ID%20Type%20Status%20Owner%20Summary%20Stars&start=200を参照して ください。

于 2013-10-03T02:01:30.997 に答える