提交 659e93ba 编写于 作者: L Liangliang He

Merge branch 'fix_crash_when_using_libmace.so' into 'master'

fix crash when using libmace.so

See merge request !851
...@@ -60,7 +60,7 @@ cc_binary( ...@@ -60,7 +60,7 @@ cc_binary(
"-pie", "-pie",
"-llog", "-llog",
]), ]),
linkstatic = 1, linkstatic = 0,
deps = [ deps = [
":statistics", ":statistics",
"//external:gflags_nothreads", "//external:gflags_nothreads",
......
...@@ -52,7 +52,7 @@ cc_binary( ...@@ -52,7 +52,7 @@ cc_binary(
"-pie", "-pie",
"-llog", "-llog",
]), ]),
linkstatic = 1, linkstatic = 0,
deps = [ deps = [
"//external:gflags_nothreads", "//external:gflags_nothreads",
"//mace/codegen:generated_mace_engine_factory", "//mace/codegen:generated_mace_engine_factory",
......
...@@ -55,7 +55,7 @@ cc_binary( ...@@ -55,7 +55,7 @@ cc_binary(
"-fopenmp", "-fopenmp",
]), ]),
linkshared = 1, linkshared = 1,
linkstatic = 1, linkstatic = 0,
deps = [ deps = [
"//mace/libmace:mace_version_script.lds", "//mace/libmace:mace_version_script.lds",
"//mace/libmace", "//mace/libmace",
......
...@@ -38,7 +38,7 @@ cc_binary( ...@@ -38,7 +38,7 @@ cc_binary(
"-pie", "-pie",
"-llog", "-llog",
]), ]),
linkstatic = 1, linkstatic = 0,
deps = [ deps = [
"//external:gflags_nothreads", "//external:gflags_nothreads",
"//mace/codegen:generated_mace_engine_factory", "//mace/codegen:generated_mace_engine_factory",
......
...@@ -678,6 +678,25 @@ def create_internal_storage_dir(serialno, phone_data_dir): ...@@ -678,6 +678,25 @@ def create_internal_storage_dir(serialno, phone_data_dir):
return internal_storage_dir return internal_storage_dir
def push_depended_so_libs(libmace_dynamic_library_path,
abi, phone_data_dir, serialno):
dep_so_libs = sh.bash("/opt/android-ndk/ndk-depends",
libmace_dynamic_library_path)
for dep in split_stdout(dep_so_libs):
if dep == "libgnustl_shared.so":
adb_push(
"%s/sources/cxx-stl/gnu-libstdc++/4.9/libs/%s/libgnustl_shared.so" # noqa
% (os.environ["ANDROID_NDK_HOME"], abi),
phone_data_dir,
serialno)
elif dep == "libc++_shared.so":
adb_push(
"%s/sources/cxx-stl/llvm-libc++/libs/%s/libc++_shared.so" # noqa
% (os.environ["ANDROID_NDK_HOME"], abi),
phone_data_dir,
serialno)
def tuning_run(abi, def tuning_run(abi,
serialno, serialno,
target_dir, target_dir,
...@@ -802,6 +821,8 @@ def tuning_run(abi, ...@@ -802,6 +821,8 @@ def tuning_run(abi,
if link_dynamic: if link_dynamic:
adb_push(libmace_dynamic_library_path, phone_data_dir, adb_push(libmace_dynamic_library_path, phone_data_dir,
serialno) serialno)
push_depended_so_libs(libmace_dynamic_library_path, abi,
phone_data_dir, serialno)
adb_push("%s/%s" % (target_dir, target_name), phone_data_dir, adb_push("%s/%s" % (target_dir, target_name), phone_data_dir,
serialno) serialno)
...@@ -1127,6 +1148,9 @@ def benchmark_model(abi, ...@@ -1127,6 +1148,9 @@ def benchmark_model(abi,
if link_dynamic: if link_dynamic:
adb_push(libmace_dynamic_library_path, phone_data_dir, adb_push(libmace_dynamic_library_path, phone_data_dir,
serialno) serialno)
push_depended_so_lib(libmace_dynamic_library_path, abi,
phone_data_dir, serialno)
adb_push("%s/%s" % (benchmark_binary_dir, benchmark_binary_name), adb_push("%s/%s" % (benchmark_binary_dir, benchmark_binary_name),
phone_data_dir, phone_data_dir,
serialno) serialno)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册