Created
September 10, 2015 10:34
-
-
Save oglops/f314b39856fdbc35ff57 to your computer and use it in GitHub Desktop.
I call it cpld a simple utility for copying shared library dependencies to a given folder
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# Author : Hemanth.HM | |
# Email : hemanth[dot]hm[at]gmail[dot]com | |
# License : GNU GPLv3 | |
# | |
function useage() | |
{ | |
cat << EOU | |
Useage: bash $0 <path to the binary> <path to copy the dependencies> | |
EOU | |
exit 1 | |
} | |
#Validate the inputs | |
[[ $# < 2 ]] && useage | |
#Check if the paths are vaild | |
[[ ! -e $1 ]] && echo "Not a vaild input $1" && exit 1 | |
[[ -d $2 ]] || echo "No such directory $2 creating..."&& mkdir -p "$2" | |
#Get the library dependencies | |
echo "Collecting the shared library dependencies for $1..." | |
deps=$(ldd $1 | awk 'BEGIN{ORS=" "}$1\ | |
~/^\//{print $1}$3~/^\//{print $3}'\ | |
| sed 's/,$/\n/') | |
echo "Copying the dependencies to $2" | |
#Copy the deps | |
for dep in $deps | |
do | |
echo "Copying $dep to $2" | |
cp "$dep" "$2" | |
done | |
echo "Done!" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment