[Lazarus] What does make install do?

Bo Berglund bo.berglund at gmail.com
Sun Oct 18 10:40:10 CEST 2015


On Sat, 17 Oct 2015 11:13:11 +0200 (CEST), Michael Van Canneyt
<michael at freepascal.org> wrote:
>> But there is also a command
>> make install
>>
>> What exactly does this do (in a Debian Jessie derivative environment)
>
>You can see this easily for yourself by adding the -n option:
>
>
>home: >make -n install
...
>
>It seems lazarus is added to the start menu, from the line:
>
>/usr/bin/install -c -m 644 install/lazarus.desktop /usr/local/share/applications/lazarus.desktop
>

I have tested it now with the following base data:
- Lazarus sources checked out to /home/pi/development/lazarus
- time make bigide executed inside the lazarus dir
- I deleted whatever I could find that put Lazarus on the Menu
  (this included the data in /home/pi/.local and /usr/local/share)
- verified that Lazarus was now gone from the start Menu

I realized that since make install sends stuff to /usr/local/share it
needed to be run as su so I did this:

sudo make install

This ran for a while with stops at a few commands but eventually
finished.
At this point Lazarus had returned to the start Menu below Programming
as it should. It could be started and looked OK.

Then I examined what had happened and I found that the install script
had copied a number of files including lazarus executables to
/usr/local/share/lazarus and the symlinks in /usr/local/bin were
pointing to these executables effectively decoupling the lazarus
installation in the /home/pi tree from use!
The copied executables amounted to 318 MB so that is the cause for the
pauses during the script execution...

To fix this so the lazarus located in the pi home would still be used
I changed the symlinks back to point there by running these commands
from within /usr/local/bin:

sudo su
ln -sf /home/pi/development/lazarus/lazarus lazarus-ide
ln -sf /home/pi/development/lazarus/lazbuild lazbuild
ln -sf /home/pi/development/lazarus/tools/lazres lazres
ln -sf /home/pi/development/lazarus/tools/lrstolfm lrstolfm
ln -sf /home/pi/development/lazarus/startlazarus startlazarus
ln -sf /home/pi/development/lazarus/tools/updatepofiles updatepofiles
exit

Again checked that the Lazarus entry on the start Menu worked as
expected and it did.

So in essence what could be done to install Lazarus in Raspbian Jessie
is to use the make install command as su but then adjust it by
changing the symlinks back to the true installation directory in the
home tree.


-- 
Bo Berglund
Developer in Sweden





More information about the Lazarus mailing list