Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I know this tool exists, but I can't remember the search terms for google.

I'm looking for a tool which takes a binary on linux with dynamic library dependencies and wrappers that binary with some chroot'ing into a local copy of the environment such that I can copy that directory onto a new machine and all the dynamic libraries are in that directory and the binary can find them.

What tool am I looking for?

share|improve this question

closed as off topic by Canadian Luke, Brad Patton, Tog, 8088, Ƭᴇcʜιᴇ007 May 11 '13 at 1:27

Questions on Super User are expected to relate to computer software or computer hardware within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here.If this question can be reworded to fit the rules in the help center, please edit the question.

    
Requests for software recommendations or even a particular tool can be regarded as off-topic here so your question could be closed. Try changing it to "how do I" format, the answer could well include the tool you are looking for, or a better way of doing it. –  Tog May 9 '13 at 6:45

2 Answers 2

up vote 2 down vote accepted

What you are probably looking for are Statifier (http://statifier.sourceforge.net) and Ermine (http://www.magicermine.com).

Statifier is free software whereas Ermine is proprietary.

If you only want to use it on the same distribution you created the file, you might also take a look at AppImageKit (http://www.portablelinuxapps.org)

share|improve this answer
    
Bingo! I just couldn't remember which terms to search for. Thanks! –  Ross Rogers May 9 '13 at 16:33

The tool to show you "all" of the dependencies is called 'ldd'. I don't know of anything that combines ldd and a packager.

Why the quotes around all? Because ldd shows you the dependencies on startup. It shows the ones that were satisfied by checking the binary to see which are hard coded into the binary as needed libs. But the binary can always ask for other libs while it's running.

Besides that, the binary may be calling for config files that are compiled into specific known locations. Ldd can't do anything for you here.

You probably need something more like strace and see every file your app touches, not just the dynamic line.

share|improve this answer
    
I'm aware of ldd as well as what dlopen does, but this is a class of tool that cuts the gordian knot of dependency hell by simply including all the included shared objectsin a container and then chroot'ing so that the binary finds all the libraries underneath that directory. There are two implementations of this tool but the name escapes my memory. It is like creating a psuedo-static binary after the binary has already been created. It can make a binary portable between distros where LD_LIBRARY_PATH is different. –  Ross Rogers May 9 '13 at 3:16
1  
@RossRogers "across distros" do you mean alien? –  Rich Homolka May 9 '13 at 14:11
    
alien is interesting. Thanks for bringing that to my attention. I was actually looking for Statifier and Ermine per FSMaxbB. –  Ross Rogers May 9 '13 at 16:36

Not the answer you're looking for? Browse other questions tagged or ask your own question.