-
Bug
-
Resolution: Fixed
-
P4
-
None
-
b16
After building test-image on Linux, I see a non-sensical:
$ readelf -ld ./linux-x86_64-normal-server-release/images/test/hotspot/jtreg/native/libintrpthrd003.so | grep RUNPATH
0x000000000000001d (RUNPATH) Library runpath: [RIGIN]
In the corresponding cmdline file I see:
-Wl,-rpath,\RIGIN
which is likely due to use of $ORIGIN in a Makefile where the $ was not $$-escaped.
That attempt to use $ORIGIN obviously failed, but the tests still work - maybe we shouldn't be trying?
---
In the same cmdline file I see -L flags pointing to the location of libjvm.so but no -ljvm flag to actually use it !
I suggest ensuring that test libs are built with the appropriate linker flag to make undefined symbols an error - that should cause build failures - and then add back in the missing -ljvm to re-fix the build.
$ readelf -ld ./linux-x86_64-normal-server-release/images/test/hotspot/jtreg/native/libintrpthrd003.so | grep RUNPATH
0x000000000000001d (RUNPATH) Library runpath: [RIGIN]
In the corresponding cmdline file I see:
-Wl,-rpath,\RIGIN
which is likely due to use of $ORIGIN in a Makefile where the $ was not $$-escaped.
That attempt to use $ORIGIN obviously failed, but the tests still work - maybe we shouldn't be trying?
---
In the same cmdline file I see -L flags pointing to the location of libjvm.so but no -ljvm flag to actually use it !
I suggest ensuring that test libs are built with the appropriate linker flag to make undefined symbols an error - that should cause build failures - and then add back in the missing -ljvm to re-fix the build.