teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

11

修正

2019/05/19 23:46

投稿

sato4000
sato4000

スコア42

title CHANGED
File without changes
body CHANGED
@@ -2,91 +2,4 @@
2
2
  古いソースコードでeclipse + Android SDK,NDKを使用してビルドしていたようなのですが、android studioを使用してもsoファイルを生成することは可能でしょうか。
3
3
  また、android studioで生成できる場合は、下記URLに記載の方法で64bitに対応することが可能なのでしょうか。ご教示願います。
4
4
 
5
- https://blog.fujiu.jp/2019/02/how-to-support-64-bit-libraries-android.html
6
-
7
- 追記
8
- android studioにandroid ndkをインストールして下記URLを参考にビルドしてみたのですが、
9
- エラーが発生しました。
10
- コンパイラオプションとしてSOME_FLAG3を有効にしているだけだと思ったのですが、ちがうのでしょうか。
11
-
12
- https://qiita.com/kenmasu/items/598496840eef775db142
13
-
14
- エラー
15
- > Build command failed.
16
- Error while executing process /xxx/Library/Android/sdk/ndk-bundle/ndk-build with arguments {NDK_PROJECT_PATH=null APP_BUILD_SCRIPT=/xxx/app/src/main/jni/Android.mk APP_ABI=x86 NDK_ALL_ABIS=x86 NDK_DEBUG=0 APP_PLATFORM=android-16 NDK_OUT=/xxx/app/build/intermediates/ndkBuild/release/obj NDK_LIBS_OUT=/xxx/app/build/intermediates/ndkBuild/release/lib LOCAL_CFLAGS+=-SOME_FLAG3 LOCAL_CFLAGS+=-DSOME_FLAG4 /xxx/app/build/intermediates/ndkBuild/release/obj/local/x86/xxx.so}
17
- [x86] Compile : xxx <= xxx.c
18
- clang: error: unknown argument: '-SOME_FLAG3'
19
- make: *** [/xxx/app/build/intermediates/ndkBuild/release/obj/local/x86/objs/xxx/xxx.o] Error 1
20
-
21
- makefile
22
- ``` makefile
23
- LOCAL_PATH := $(call my-dir)
24
-
25
- include $(CLEAR_VARS)
26
-
27
- DEEP_OPTIMIZATION := false
28
- TARGET_ARCH_VARIANT := $(strip $(TARGET_ARCH_VARIANT))
29
- LOCAL_CPP_EXTENSION := .cc
30
- LOCAL_ARM_MODE := arm
31
- LOCAL_CFLAGS := -Wall -Wextra -O3
32
-
33
- ifneq (,$(findstring arm,$(TARGET_ARCH)))
34
- ### ARM
35
- ifndef TARGET_ARCH_VARIANT
36
- ifeq (armeabi-v7a,$(TARGET_ABI))
37
- TARGET_ARCH_VARIANT := armv7-a
38
- else
39
- TARGET_ARCH_VARIANT := armv5te
40
- endif
41
- endif
42
- ifneq (,$(findstring armv7-a,$(TARGET_ARCH_VARIANT)))
43
- ### ARMv7-A
44
- LOCAL_CFLAGS += -march=armv7-a -mtune=cortex-a8
45
- ifneq (,$(findstring -neon,$(TARGET_ARCH_VARIANT)))
46
- ### Geratate NEON instructions.
47
- LOCAL_CFLAGS += -mfpu=neon -mfloat-abi=softfp
48
- else
49
- ### Geratate VFP instructions.
50
- LOCAL_CFLAGS += -mfpu=vfpv3-d16 -mfloat-abi=softfp
51
- endif
52
- else
53
- ### ARMv5TE (but tune for ARM1136JF-S (ARMv6))
54
- LOCAL_CFLAGS += -mtune=arm1136jf-s
55
- endif
56
- ifneq (,$(findstring -vfp,$(TARGET_ARCH_VARIANT)))
57
- ### Geratate VFP instructions. May have compatibility issue.
58
- LOCAL_CFLAGS += -mfpu=vfp -mfloat-abi=softfp
59
- endif
60
- else
61
- ### x86
62
- endif
63
-
64
- ifdef DEEP_OPTIMIZATION
65
- ifeq (true,$(DEEP_OPTIMIZATION))
66
- ### Farther optimizations
67
- LOCAL_CFLAGS += -funroll-loops
68
- ifeq (,$(findstring clang,$(NDK_TOOLCHAIN_VERSION)))
69
- ### Options only for GCC
70
- LOCAL_CFLAGS += -fgcse-sm -fgcse-las -fprefetch-loop-arrays
71
- else
72
- ### Options only for LLVM/Clang
73
- LOCAL_CFLAGS += -fstrict-enums -fno-rtti -fno-math-errno
74
- endif
75
- endif
76
- endif
77
-
78
- LOCAL_CFLAGS += $(LOCAL_CFLAGS_OPT)
79
- LOCAL_MODULE := xxx
80
- LOCAL_SRC_FILES := xxx.c.arm
81
- LOCAL_SRC_FILES += xxx.cc.arm
82
- LOCAL_SRC_FILES += xxx.cc.arm
83
- LOCAL_SRC_FILES += xxx.c.arm
84
- LOCAL_SRC_FILES += xxx.c.arm
85
- LOCAL_SRC_FILES += xxx.c.arm
86
- LOCAL_SRC_FILES += xxx.c.arm
87
- LOCAL_LDLIBS := -llog
88
- LOCAL_LDLIBS += -lOpenSLES
89
-
90
- include $(BUILD_SHARED_LIBRARY)
91
-
92
- ```
5
+ https://blog.fujiu.jp/2019/02/how-to-support-64-bit-libraries-android.html

10

修正

2019/05/19 23:46

投稿

sato4000
sato4000

スコア42

title CHANGED
File without changes
body CHANGED
@@ -7,7 +7,7 @@
7
7
  追記
8
8
  android studioにandroid ndkをインストールして下記URLを参考にビルドしてみたのですが、
9
9
  エラーが発生しました。
10
- build.gradle設定すargumentsは下記そままはなく、makeファイルの内容を設定る必要あるのでしょうか。
10
+ コンパイラオプションとしてSOME_FLAG3を有効していだけだと思ったのですが、ちがうのでしょうか。
11
11
 
12
12
  https://qiita.com/kenmasu/items/598496840eef775db142
13
13
 

9

修正

2019/05/17 09:37

投稿

sato4000
sato4000

スコア42

title CHANGED
File without changes
body CHANGED
@@ -11,7 +11,12 @@
11
11
 
12
12
  https://qiita.com/kenmasu/items/598496840eef775db142
13
13
 
14
- エラー:anknown argument: '-SOME_FLAG3'
14
+ エラー
15
+ > Build command failed.
16
+ Error while executing process /xxx/Library/Android/sdk/ndk-bundle/ndk-build with arguments {NDK_PROJECT_PATH=null APP_BUILD_SCRIPT=/xxx/app/src/main/jni/Android.mk APP_ABI=x86 NDK_ALL_ABIS=x86 NDK_DEBUG=0 APP_PLATFORM=android-16 NDK_OUT=/xxx/app/build/intermediates/ndkBuild/release/obj NDK_LIBS_OUT=/xxx/app/build/intermediates/ndkBuild/release/lib LOCAL_CFLAGS+=-SOME_FLAG3 LOCAL_CFLAGS+=-DSOME_FLAG4 /xxx/app/build/intermediates/ndkBuild/release/obj/local/x86/xxx.so}
17
+ [x86] Compile : xxx <= xxx.c
18
+ clang: error: unknown argument: '-SOME_FLAG3'
19
+ make: *** [/xxx/app/build/intermediates/ndkBuild/release/obj/local/x86/objs/xxx/xxx.o] Error 1
15
20
 
16
21
  makefile
17
22
  ``` makefile

8

追記

2019/05/17 07:47

投稿

sato4000
sato4000

スコア42

title CHANGED
File without changes
body CHANGED
@@ -11,4 +11,77 @@
11
11
 
12
12
  https://qiita.com/kenmasu/items/598496840eef775db142
13
13
 
14
- エラー:anknown argument: '-SOME_FLAG3'
14
+ エラー:anknown argument: '-SOME_FLAG3'
15
+
16
+ makefile
17
+ ``` makefile
18
+ LOCAL_PATH := $(call my-dir)
19
+
20
+ include $(CLEAR_VARS)
21
+
22
+ DEEP_OPTIMIZATION := false
23
+ TARGET_ARCH_VARIANT := $(strip $(TARGET_ARCH_VARIANT))
24
+ LOCAL_CPP_EXTENSION := .cc
25
+ LOCAL_ARM_MODE := arm
26
+ LOCAL_CFLAGS := -Wall -Wextra -O3
27
+
28
+ ifneq (,$(findstring arm,$(TARGET_ARCH)))
29
+ ### ARM
30
+ ifndef TARGET_ARCH_VARIANT
31
+ ifeq (armeabi-v7a,$(TARGET_ABI))
32
+ TARGET_ARCH_VARIANT := armv7-a
33
+ else
34
+ TARGET_ARCH_VARIANT := armv5te
35
+ endif
36
+ endif
37
+ ifneq (,$(findstring armv7-a,$(TARGET_ARCH_VARIANT)))
38
+ ### ARMv7-A
39
+ LOCAL_CFLAGS += -march=armv7-a -mtune=cortex-a8
40
+ ifneq (,$(findstring -neon,$(TARGET_ARCH_VARIANT)))
41
+ ### Geratate NEON instructions.
42
+ LOCAL_CFLAGS += -mfpu=neon -mfloat-abi=softfp
43
+ else
44
+ ### Geratate VFP instructions.
45
+ LOCAL_CFLAGS += -mfpu=vfpv3-d16 -mfloat-abi=softfp
46
+ endif
47
+ else
48
+ ### ARMv5TE (but tune for ARM1136JF-S (ARMv6))
49
+ LOCAL_CFLAGS += -mtune=arm1136jf-s
50
+ endif
51
+ ifneq (,$(findstring -vfp,$(TARGET_ARCH_VARIANT)))
52
+ ### Geratate VFP instructions. May have compatibility issue.
53
+ LOCAL_CFLAGS += -mfpu=vfp -mfloat-abi=softfp
54
+ endif
55
+ else
56
+ ### x86
57
+ endif
58
+
59
+ ifdef DEEP_OPTIMIZATION
60
+ ifeq (true,$(DEEP_OPTIMIZATION))
61
+ ### Farther optimizations
62
+ LOCAL_CFLAGS += -funroll-loops
63
+ ifeq (,$(findstring clang,$(NDK_TOOLCHAIN_VERSION)))
64
+ ### Options only for GCC
65
+ LOCAL_CFLAGS += -fgcse-sm -fgcse-las -fprefetch-loop-arrays
66
+ else
67
+ ### Options only for LLVM/Clang
68
+ LOCAL_CFLAGS += -fstrict-enums -fno-rtti -fno-math-errno
69
+ endif
70
+ endif
71
+ endif
72
+
73
+ LOCAL_CFLAGS += $(LOCAL_CFLAGS_OPT)
74
+ LOCAL_MODULE := xxx
75
+ LOCAL_SRC_FILES := xxx.c.arm
76
+ LOCAL_SRC_FILES += xxx.cc.arm
77
+ LOCAL_SRC_FILES += xxx.cc.arm
78
+ LOCAL_SRC_FILES += xxx.c.arm
79
+ LOCAL_SRC_FILES += xxx.c.arm
80
+ LOCAL_SRC_FILES += xxx.c.arm
81
+ LOCAL_SRC_FILES += xxx.c.arm
82
+ LOCAL_LDLIBS := -llog
83
+ LOCAL_LDLIBS += -lOpenSLES
84
+
85
+ include $(BUILD_SHARED_LIBRARY)
86
+
87
+ ```

7

追記

2019/05/17 06:10

投稿

sato4000
sato4000

スコア42

title CHANGED
File without changes
body CHANGED
@@ -2,4 +2,13 @@
2
2
  古いソースコードでeclipse + Android SDK,NDKを使用してビルドしていたようなのですが、android studioを使用してもsoファイルを生成することは可能でしょうか。
3
3
  また、android studioで生成できる場合は、下記URLに記載の方法で64bitに対応することが可能なのでしょうか。ご教示願います。
4
4
 
5
- https://blog.fujiu.jp/2019/02/how-to-support-64-bit-libraries-android.html
5
+ https://blog.fujiu.jp/2019/02/how-to-support-64-bit-libraries-android.html
6
+
7
+ 追記
8
+ android studioにandroid ndkをインストールして下記URLを参考にビルドしてみたのですが、
9
+ エラーが発生しました。
10
+ build.gradleに設定するargumentsは下記そのままではなく、makeファイルの内容を設定する必要があるのでしょうか。
11
+
12
+ https://qiita.com/kenmasu/items/598496840eef775db142
13
+
14
+ エラー:anknown argument: '-SOME_FLAG3'

6

文章の修正

2019/05/17 05:59

投稿

sato4000
sato4000

スコア42

title CHANGED
File without changes
body CHANGED
@@ -1,7 +1,5 @@
1
- ネイティブコード(C/C++)を含んでいるandroidのライブラリがあるのですが、64bitに対応しso形式で提供したいと考えています。
1
+ ネイティブコード(C/C++)を含んでいるandroidのライブラリがあるのですが、64bitに対応したいと考えています。
2
- 下記サイトを参考にし、build.gradle のandroid -> defaultConfig に ndk.abiFilters の行追加したのですが、android studioでビルドするとAAR形式のファイルが出力されます。
2
+ 古いソースコードでeclipse + Android SDK,NDK使用てビルドしていようなのですが、android studioを使用してもsoファイルを生成ることは可能でしょうか
3
+ また、android studioで生成できる場合は、下記URLに記載の方法で64bitに対応することが可能なのでしょうか。ご教示願います。
3
4
 
4
- https://blog.fujiu.jp/2019/02/how-to-support-64-bit-libraries-android.html
5
+ https://blog.fujiu.jp/2019/02/how-to-support-64-bit-libraries-android.html
5
-
6
- 他にも設定等が必要なのでしょうか。
7
- ご教示願います。

5

修正

2019/05/17 02:13

投稿

sato4000
sato4000

スコア42

title CHANGED
File without changes
body CHANGED
@@ -1,5 +1,5 @@
1
1
  ネイティブコード(C/C++)を含んでいるandroidのライブラリがあるのですが、64bitに対応しso形式で提供したいと考えています。
2
- 下記サイトを参考にし、build.gradle のandroid -> defaultConfig に ndk.abiFilters の行を追加したのですが、AAR形式のファイルが出力されます。
2
+ 下記サイトを参考にし、build.gradle のandroid -> defaultConfig に ndk.abiFilters の行を追加したのですが、android studioでビルドするとAAR形式のファイルが出力されます。
3
3
 
4
4
  https://blog.fujiu.jp/2019/02/how-to-support-64-bit-libraries-android.html
5
5
 

4

修正

2019/05/16 05:48

投稿

sato4000
sato4000

スコア42

title CHANGED
@@ -1,1 +1,1 @@
1
- Androidアプリのライブラリ64bit対応について
1
+ Androidライブラリ64bit対応について
body CHANGED
@@ -1,4 +1,4 @@
1
- ネイティブコード(C/C++)を含んでいるandroidのアプリがあるのですが、64bitに対応しso形式で提供したいと考えています。
1
+ ネイティブコード(C/C++)を含んでいるandroidのライブラリがあるのですが、64bitに対応しso形式で提供したいと考えています。
2
2
  下記サイトを参考にし、build.gradle のandroid -> defaultConfig に ndk.abiFilters の行を追加したのですが、AAR形式のファイルが出力されます。
3
3
 
4
4
  https://blog.fujiu.jp/2019/02/how-to-support-64-bit-libraries-android.html

3

文章の修正

2019/05/16 05:38

投稿

sato4000
sato4000

スコア42

title CHANGED
File without changes
body CHANGED
@@ -1,4 +1,7 @@
1
- 全くの初心者なのすが、わけあってもともとあAndroidアプリのライブラリ64ビットに対応しているか調査なければけなくなりした
1
+ ネイティブコード(C/C++)を含んandroidのアプリがあるです、64bitに対応しso形式で提供と考えてい
2
+ 下記サイトを参考にし、build.gradle のandroid -> defaultConfig に ndk.abiFilters の行を追加したのですが、AAR形式のファイルが出力されます。
3
+
2
- ライブラリが64ビットに対応しているかどうかはネイティブコード(C/C++)を含んでいるかどうかで判断するしかないのでしょうか。
4
+ https://blog.fujiu.jp/2019/02/how-to-support-64-bit-libraries-android.html
5
+
3
- また、Google側ではどのよう64ビットに対応しているアプリか判断するのでしょうか。
6
+ も設定等が必要なのでしょうか。
4
7
  ご教示願います。

2

編集

2019/05/16 05:38

投稿

sato4000
sato4000

スコア42

title CHANGED
File without changes
body CHANGED
@@ -1,4 +1,4 @@
1
1
  全くの初心者なのですが、わけあってもともとあるAndroidアプリのライブラリが64ビットに対応しているか調査しなければいけなくなりました。
2
- ライブラリが64ビットに対応しているかどうかはネイティブコードを含んでいるかどうかで判断するしかないのでしょうか。
2
+ ライブラリが64ビットに対応しているかどうかはネイティブコード(C/C++)を含んでいるかどうかで判断するしかないのでしょうか。
3
3
  また、Google側ではどのように64ビットに対応しているアプリか判断するのでしょうか。
4
4
  ご教示願います。

1

修正

2019/05/15 23:57

投稿

sato4000
sato4000

スコア42

title CHANGED
@@ -1,1 +1,1 @@
1
- Androidアプリのライブラリについて
1
+ Androidアプリのライブラリ64bit対応について
body CHANGED
@@ -1,4 +1,4 @@
1
1
  全くの初心者なのですが、わけあってもともとあるAndroidアプリのライブラリが64ビットに対応しているか調査しなければいけなくなりました。
2
- とりあえず環境を整えてビルドするところまではたどり着いたのです、64bitに対応しているかがわりませ。ググったらAnalyze APKわかるというのまはたどり着いたのでが、ビルドてもapkファイルが作成されませんので、どうしたらよいわからない状況
2
+ ライブラリ64ビットに対応しているかどうはネイティブコードを含んでいるかど判断しかないしょうか
3
- 拡張子soのファイルはどのようにすればルド後出力されるのでしょうか。
3
+ またGoogle側ではどのように64ット対応していアプリか判断するのでしょうか。
4
- 併せてご教示願います。
4
+ ご教示願います。