diff options
-rw-r--r-- | docs/changelogs/Changelog-r21.md | 2 | ||||
-rwxr-xr-x | ndk/checkbuild.py | 11 |
2 files changed, 5 insertions, 8 deletions
diff --git a/docs/changelogs/Changelog-r21.md b/docs/changelogs/Changelog-r21.md index 05a56655a..6c263cec6 100644 --- a/docs/changelogs/Changelog-r21.md +++ b/docs/changelogs/Changelog-r21.md @@ -65,10 +65,12 @@ For Android Studio issues, follow the docs on the [Android Studio site]. * [Issue 1201]: Fixed issue in ndk-build that was causing `APP_PLATFORM` to be corrupted for API 30+ with LP64 ABIs. * [Issue 1203]: libc++ prebuilts and CRT objects are no longer built as Neon. + * [Issue 1173]: Fix gdb python symbol missing issue on Darwin. [Issue 1166]: https://github.com/android/ndk/issues/1166 [Issue 1201]: https://github.com/android/ndk/issues/1201 [Issue 1203]: https://github.com/android/ndk/issues/1203 +[Issue 1173]: https://github.com/android/ndk/issues/1173 ## Changes diff --git a/ndk/checkbuild.py b/ndk/checkbuild.py index 72f1a3f18..32f6d2c0f 100755 --- a/ndk/checkbuild.py +++ b/ndk/checkbuild.py @@ -1132,18 +1132,11 @@ class Gdb(ndk.builds.Module): """Returns the lazily initialized gdb builder for this module.""" if self._gdb_builder is None: no_build_or_host = False - no_strip = False additional_flags = [] if self.host == ndk.hosts.Host.Darwin: # Awful Darwin hack. For some reason GDB doesn't produce a gdb # executable when using --build/--host. no_build_or_host = True - # -s caused mysterious linking error on old macOS like: - # "ld: internal error: atom not found in symbolIndex(...)" - # Seems old ld64 wrongly stripped some symbols. - # Remove this when build server upgrades to xcode 7.3 - # (ld64-264.3.101) or above. - no_strip = True additional_flags.append('-Wl,-rpath,@loader_path/../lib') if self.host == ndk.hosts.Host.Linux: additional_flags.append('-Wl,-rpath,$$$$\\ORIGIN/../lib') @@ -1156,7 +1149,9 @@ class Gdb(ndk.builds.Module): self.host, use_clang=True, no_build_or_host=no_build_or_host, - no_strip=no_strip, + # Since we statically link libpython, python dynamic libraries may + # depend on symbols in gdb binary. + no_strip=True, additional_flags=additional_flags) return self._gdb_builder |