On Wed, 3 Dec 2025 15:25:58 GMT, Matthias Baesken <[email protected]> wrote:
>> When building the recent mainline JDK (26), I see the following warning >> messages: >> >> warning: (arm64) /tmp/lto.o unable to open object file: No such file or >> directory >> warning: no debug symbols in executable (-arch arm64) >> >> >> The build completes normally even with these warnings. >> I am on macos aarch64, but I see the same warning on macos x64 and aarch64 >> in our CI. >> Seems we miss a linker flag for libs built with lto (libsplashscreen), >> because the Apple linker has the following issue >> >> https://clang.llvm.org/docs/CommandGuide/clang.html >> Note >> >> ` >> On Darwin, when using >> [-flto](https://clang.llvm.org/docs/CommandGuide/clang.html#cmdoption-flto) >> along with >> [-g](https://clang.llvm.org/docs/CommandGuide/clang.html#cmdoption-g) and >> compiling and linking in separate steps, you also need to pass >> -Wl,-object_path_lto,<lto-filename>.o at the linking step to instruct the >> ld64 linker not to delete the temporary object file generated during Link >> Time Optimization (this flag is automatically passed to the linker by Clang >> if compilation and linking are done in a single step). This allows debugging >> the executable as well as generating the .dSYM bundle using dsymutil(1).` > > Matthias Baesken has updated the pull request incrementally with one > additional commit since the last revision: > > Move -Wl,-object_path_lto setting, and specify a file at OBJECT_DIR I think this looks ok. I verified the patch on my machine, the warning is gone and the new lto_helper file was found in the expected location. ------------- Marked as reviewed by erikj (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/28559#pullrequestreview-3537005023
