RFR: JDK-8231572 Use -lobjc instead of -fobjc-link-runtime in libosxsecurity
Erik Joelsson
erik.joelsson at oracle.com
Tue Apr 14 12:54:46 UTC 2020
Looks good.
/Erik
On 2020-04-14 03:31, Magnus Ihse Bursie wrote:
> When building with some versions of the macOS SDK, you can get errors
> like this:
>
> Undefined symbols for architecture x86_64:
> ??"_objc_loadClassref", referenced from:
> ??????__ARCLite__load() in libarclite_macosx.a(arclite.o)
> ld: symbol(s) not found for architecture x86_64
> clang: error: linker command failed with exit code 1 (use -v to see
> invocation)
> make[3]: ***
> [/Users/dnsimon/jdk-jdk/build/macosx-x86_64-server-release/support/modules_libs/java.base/libosxsecurity.dylib]
> Error 1
> make[3]: *** Waiting for unfinished jobs....
> make[2]: *** [java.base-libs] Error 2
>
> This is due to the use of -fobjc-link-runtime in libosxsecurity. It
> turns out that what was really needed was to link to the objc library.
> This patch does this instead. It has been shown to work under a
> variety of macOS versions.
>
> Bug: https://bugs.openjdk.java.net/browse/JDK-8231572
> WebRev:
> http://cr.openjdk.java.net/~ihse/JDK-8231572-use-lobjc-in-libosxsecurity/webrev.01
>
> /Magnus
More information about the build-dev
mailing list