Wrong libudev version
Suvayu Ali
fatkasuvayu+linux at gmail.com
Tue May 13 05:11:36 UTC 2014
Hi TC, and Ralf,
On Mon, May 12, 2014 at 06:56:45PM -0700, T.C. Hollingsworth wrote:
> On Mon, May 12, 2014 at 4:13 PM, Suvayu Ali <fatkasuvayu+linux at gmail.com> wrote:
> > Hi,
> >
> > I'm trying to compile an application[1]. The compilation succeeds, but
> > fails at the last linking step like this.
> >
> > LINK(target) out/Release/Brackets
> > /usr/bin/ld: warning: libudev.so.0, needed by Release/libcef.so, not found (try using -rpath or -rpath-link)
> > LINK(target) out/Release/Brackets: Finished
> >
> > When I search with `repoquery -f \*/libudev\*', I get back systemd-libs
> > and systemd-devel; both of which are installed. systemd-libs provides
> > /usr/lib64/libudev.so.1, and systemd-devel provides
> > /usr/lib64/libudev.so, which is a symlink to the actual library. I'm
> > not sure what I'm doing wrong.
>
> CEF in this case seems to be the Chromium Embedded Framework. The
> buildsystem for brackets grabs a binary version of CEF from an Adobe
> server. Presumably this is built on one of Debian or Ubuntu with
> libudev.so.0.
>
> The "proper" way to fix it would be to build CEF on your own [1],
> which would give you a copy of CEF linked to the proper version of
> udev. You can then plop the libcef.so you built in place of the
> Adobe-provided binary and use that, and linking should work as normal.
That makes perfect sense with what I'm seeing.
> However, building anything chromium-related is...fun to say the least.
> I wouldn't judge you if you just ran 'ln -sf libudev.so.1
> libudev.so.0' and hoped it doesn't segfault. :-)
In the end I resorted to extracting the deb, and moving the compiled
binaries to /opt, followed by symlinking libudev; no segfaults. Since
it is in /opt, I do mind the symlink as much.
Cheers,
--
Suvayu
Open source is the future. It sets us free.
More information about the users
mailing list