Use the right method to resolve symlinks

Just checked with absolute, it doesn't always resolve symlinks. canonical is supposed to do that according to https://www.boost.org/doc/libs/1_48_0/libs/filesystem/v3/doc/reference.html#Canonical-path.
This commit is contained in:
TheAssassin
2019-12-13 17:53:28 +01:00
parent 2b13c52452
commit 652ef5a215

View File

@@ -146,7 +146,7 @@ namespace linuxdeploy {
// when you pass an absolute path to ldd, it can find libraries referenced in the rpath properly
// this bug was first found when trying to find a library next to the binary which contained $ORIGIN
// note that this is just a bug in ldd, the linker has always worked as intended
const auto resolvedPath = bf::absolute(d->path);
const auto resolvedPath = bf::canonical(d->path);
subprocess::Popen lddProc(
{"ldd", resolvedPath.string().c_str()},