Re: [Evolution-hackers] installing evolution-data-server fails on a FHS compliant system



Hello JP,

> > When installing evolution-data-server 1.2.x on a system which has a
> > FHS [1] compliant directory structure the evolution-data-server-1.2
> > binary is copied to a wrong place so that the evolution doesn't find
> > it. This results in a not-working evolution.
> 
> Why would this cause evolution not to find it?  The .server should still
> point to the right location.

No, it doesn't.

The eds binary is intended to be %libexec/evolution-data-server-1.2.
On a FHS compliant system where %libexec is /usr/lib this is
/usr/lib/evolution-data-server-1.2.

The location in the .server file points (correctly) to
/usr/lib/evolution-data-server-1.2.

During the installation the following steps happen:
1. a directory %libdir/evolution-data-sever-1.2 is created
(extensions, caml-providers and other parts of the e-d-s package is
there)
2. the e-d-s binary is copied:

"cp evolution-data-server %libexec/evolution-data-server-1.2" is executed.

On a system with %libexec this works. The binary is created as
"/usr/libexec/evolution-data-server-1.2"


On a system where %libexec points to %libdir, the cp command is
"cp evolution-data-server /usr/lib/evolution-data-server-1.2"

Because /usr/lib/evolution-data-server-1.2 is a directory, the e-d-s
binary is not copied to the name of the secondary argument, but it is
created _in_ this directory with its previously name
(evolution-data-server) - the binary's name after the copy is
/usr/lib/evolutiion-data-server-1.2/evolution-data-server.

This filename is not the same as stated in the .server file
(/usr/lib/evolution-data-server-1.2).

That's why it is not found.


Best regards,
Christian



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]