4fa39ba82f
Executables that are compiled with fPIE means they are compiled in a position independent manner and are almost indistinguishable from the shared objects. A reasonably reliable way to find if this was a `pie executable` is to check the `DF_1_PIE` in the dynamic section of ELF. The pseudo-code is: ``` if DT_FLAGS_1 dynamic section entry is present if DF_1_PIE is set in DT_FLAGS_1: print pie executable else print shared object ``` See https://stackoverflow.com/questions/34519521/why-does-gcc-create-a-shared-object-instead-of-an-executable-binary-according-to/34522357#34522357 Fixes root-project/root#7366 Patch by Alexander Penev (@alexander-penev) |
||
---|---|---|
.. | ||
Autoloading | ||
CodeGeneration | ||
CodeUnloading | ||
CUDADeviceCode | ||
Driver | ||
DynamicLibraryManager | ||
ErrorRecovery | ||
Extensions | ||
Interfaces | ||
LibraryCall | ||
Lookup | ||
MultipleInterpreters | ||
NullDeref | ||
Plugins | ||
Pragmas | ||
Prompt | ||
Recursion | ||
SourceCall | ||
Utils | ||
CMakeLists.txt | ||
lit.cfg | ||
lit.site.cfg.in |