Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 3404344
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 18, 20262026-05-18T05:22:18+00:00 2026-05-18T05:22:18+00:00

I have a system fsimage.so that requires mkdirp, which just happens to live in

  • 0

I have a system “fsimage.so” that requires mkdirp, which just happens to live in libgen.so. But fsimage.so does not know this. For example:

# ldd /usr/lib/python2.4/vendor-packages/fsimage.so
    libfsimage.so.1.0 =>     /usr/lib/libfsimage.so.1.0
    libxml2.so.2 =>  /lib/libxml2.so.2
    libgcc_s.so.1 =>         /usr/sfw/lib/libgcc_s.so.1
    libpthread.so.1 =>       /lib/libpthread.so.1
    libz.so.1 =>     /lib/libz.so.1
    libm.so.2 =>     /lib/libm.so.2
    libsocket.so.1 =>        /lib/libsocket.so.1
    libnsl.so.1 =>   /lib/libnsl.so.1
    libc.so.1 =>     /lib/libc.so.1
    libmp.so.2 =>    /lib/libmp.so.2
    libmd.so.1 =>    /lib/libmd.so.1

# ./test
Traceback (most recent call last):
  File "./test", line 26, in ?
    import fsimage
ImportError: ld.so.1: isapython2.4: fatal: relocation error: file /usr/lib/python2.4/vendor-packages/fsimage.so: symbol mkdirp: referenced symbol not found

# LD_PRELOAD=/usr/lib/libgen.so ./test
Usage: ./test

Naturally, if I had the sources etc, I could simply link it again, and add “-lgen”, and it will add libgen.so as a dependency.

But as an exercise in hackery, say I do not have any sources, and simply wanted to add that fsimage.so needs to also load libgen.so. Using elfedit/objcopy etc, is this not possible? I don’t suppose I can use “ld” to use .so as input, and write a new .so with extra library?

# elfdump /usr/lib/python2.4/vendor-packages/fsimage.so|grep NEEDED
   [0]  NEEDED            0x5187              libfsimage.so.1.0
   [1]  NEEDED            0x5152              libxml2.so.2
   [2]  NEEDED            0x5171              libgcc_s.so.1

First attempt at stackoverflow, go easy on me 🙂

  • 1 1 Answer
  • 3 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-18T05:22:18+00:00Added an answer on May 18, 2026 at 5:22 am

    Thank you “Employed Russian”, you gave me the information needed to search deeper. Solaris already ships with “elfedit”, so if others wants to know, these are the instructions

    # elfedit libfsimage.so.1.0.0 libfsimage.so.1.0.0-new
    > dyn:value DT_NEEDED
     index  tag                value
       [0]  NEEDED            0x4f81              libpthread.so.1
       [1]  NEEDED            0x4fac              libxml2.so.2
       [2]  NEEDED            0x4fc2              libgcc_s.so.1
    > dyn:value -add -s DT_NEEDED libscf.so
     index  tag                value
      [35]  NEEDED            0x500d              libscf.so
    > dyn:value DT_NEEDED
     index  tag                value
       [0]  NEEDED            0x4f81              libpthread.so.1
       [1]  NEEDED            0x4fac              libxml2.so.2
       [2]  NEEDED            0x4fc2              libgcc_s.so.1
      [35]  NEEDED            0x500d              libscf.so
    > :write
    > :quit
    
    # ldd libfsimage.so.1.0.0-new
        libpthread.so.1 =>       /lib/libpthread.so.1
        libxml2.so.2 =>  /lib/libxml2.so.2
        libgcc_s.so.1 =>         /usr/sfw/lib/libgcc_s.so.1
        libscf.so =>     /lib/libscf.so
        libz.so.1 =>     /lib/libz.so.1
        libm.so.2 =>     /lib/libm.so.2
        libsocket.so.1 =>        /lib/libsocket.so.1
        libnsl.so.1 =>   /lib/libnsl.so.1
        libc.so.1 =>     /lib/libc.so.1
        libuutil.so.1 =>         /lib/libuutil.so.1
        libgen.so.1 =>   /lib/libgen.so.1
        libnvpair.so.1 =>        /lib/libnvpair.so.1
        libsmbios.so.1 =>        /usr/lib/libsmbios.so.1
        libmp.so.2 =>    /lib/libmp.so.2
        libmd.so.1 =>    /lib/libmd.so.1
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

We have system here that uses Java JNI to call a function in a
I have a system that takes dynamic data, puts it in HTML for layout
I have big system that make my system crash hard. When I boot up,
I have a system sitting on a Master Server, that is periodically transferring quite
I have a system which is receiving log files from different places through http
I have a system that runs like this: main.exe runs sub.exe runs sub2.exe and
I have system-generated links which I hide manually. Now I want to remove the
Consider that you have System_A which is a web application. And System_A has simply
I know I just missing something simple, but when I try pulling the connection
I have system that install via internet several MSI products and I have a

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.