Opened 8 years ago

Closed 8 years ago

#7638 closed enhancement (fixed)

prefer rpath than system default for seach library image

Reported by: obache Owned by: bonefish
Priority: normal Milestone: R1
Component: System/runtime_loader Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Has a Patch: no Platform: All

Description

Currently, library images will be searched from

  1. LIBRARY_PATH environment variable
  2. system default paths (now %A/lib:/boot/home/config/lib:/boot/common/lib:/boot/system/lib)
  3. rpath

(source:/haiku/trunk/src/system/runtime_loader/runtime_loader.cpp)

Is it possible to prefer rpath than system default paths?

I want to use shared libraries with some applications and specify the location with rpath. But if same name, but incompatible shared libraries are in both rpath (own) and system default, it result in following situation:

  • Even LIBRARY_PATH is empty, system default one will be picked up, my applications will be broken.
  • If adding my own library path to LIBRARY_PATH, my applications will work as expected, but others may be result in broken.

I believe changes of library search order resolve the situation, but break nothing.

Change History (1)

comment:1 by bonefish, 8 years ago

Resolution: fixed
Status: newclosed
Version: R1/alpha2R1/Development

Searching DT_RPATH before LIBRARY_PATH is also required by the System V ABI specs. Fixed in hrev41903.

Note: See TracTickets for help on using tickets.