PRJosh / lz4

Automatically exported from code.google.com/p/lz4
0 stars 0 forks source link

sudo make install does not cp files to /usr/local #152

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
0. svn checkout http://lz4.googlecode.com/svn/trunk/ lz4-read-only
1. cd lz4-read-only/
2. make 
3. sudo make install

What is the expected output?
That the binaries and man pages be put in /usr/local

What do you see instead?
The binaries and man pages are left in ~/lz4-read-only/programs

What version of the product are you using?
126

On what operating system?
Xubuntu 14.04

Please provide any additional information below.

Original issue reported on code.google.com by ronljohnsonjr on 23 Jan 2015 at 9:10

GoogleCodeExporter commented 9 years ago
Ok, now I see that they're put in /usr/bin & /usr/man.

That's still wrong, since s/w installed locally from source should go in 
/usr/local.

Original comment by ronljohnsonjr on 23 Jan 2015 at 9:15

GoogleCodeExporter commented 9 years ago
Hi Ron

The current make install process was defined by the Linux Fedora team, with the 
kind support from ArchLinux community.
It's likely that different distributions adopt different policies when it comes 
to target directories.

In any case, most of the effort went into making "make install" highly 
configurable.

The standard environment variables DESTDIR and PREFIX can be used to select 
where to install the files.
In your case, I guess setting :

export PREFIX=/usr/local

would produce the desired result.

Regards

Original comment by yann.col...@gmail.com on 23 Jan 2015 at 10:29

GoogleCodeExporter commented 9 years ago
I was reading a document on FHS (File Hierarchy Standard)
which seems to be the directory organisation for *all* standard compliant Linux 
distros.

My understanding is the same as yours :
An administrator typing
sudo make install
should rather end up installing software into /usr/local.

I'm a bit surprised, I was trusting the team which created the initial 
installation script to be expert at such stuff. But it could be that they were 
seeing the process from their side, meaning software managed by distrib do end 
up into /usr.
This is basically why there is this separation between /usr and /usr/local.
/usr/local is for administrator installing their own software not provided by 
distro.

I will try to sort this out with them.

Original comment by yann.col...@gmail.com on 23 Jan 2015 at 10:48

GoogleCodeExporter commented 9 years ago
After verification, this is correct : install from source should end up into 
/usr/local by default, whereas /usr is reserved for install from distrib's 
package manager.

I'll modify the Makefile appropriately.
Thanks for reporting !

Original comment by yann.col...@gmail.com on 23 Jan 2015 at 4:48

GoogleCodeExporter commented 9 years ago
Latest "dev" branch of lz4, at
https://github.com/Cyan4973/lz4/tree/dev
supports /usr/local installation directory by default.

Original comment by yann.col...@gmail.com on 15 Mar 2015 at 7:50

GoogleCodeExporter commented 9 years ago
Integrated into r128

Original comment by yann.col...@gmail.com on 31 Mar 2015 at 1:37