centos - make install到底做什么操作?
曾经蜡笔没有小新
曾经蜡笔没有小新 2017-04-25 09:01:08
0
2
1119

今天在安装redis的时候发现官方的文档上没有说要执行make install,直接cd 到src 目录里面执行redis-server文件就能启动。
而看很多别人的笔记呢,则都写了make install,发现实际就是把src目录下的几个二进制文件复制到了系统的/usr/local/bin下面了而已。
查了下似乎是说make install执行的是Makefile里面的脚本。
实际的作用也就是上面说的复制二进制文件么?
只是以redis的安装为例,主要是问安装程序时候的make install

曾经蜡笔没有小新
曾经蜡笔没有小新

répondre à tous(2)
给我你的怀抱

make install (pour la commande make) signifie littéralement atteindre l'objectif install. Puisque cet objectif s'appelle install, il s'agit bien sûr d'installer le logiciel.

Dans les systèmes de type UNIX, l'installation du logiciel comprend généralement les étapes suivantes en option :

  • Copiez le fichier dans le répertoire correspondant
  • strip Supprimez les symboles inutiles des fichiers de code binaire
  • Compresser le document homme et le document d'information
  • Mettre à jour divers index, mandb, index d'informations, cache de bibliothèque de liens dynamiques, répertoire de documents propre au logiciel, etc., en fonction des besoins du logiciel

Certains logiciels pour systèmes de type UNIX ne nécessitent pas d'installation. Vous pouvez les utiliser directement en exécutant le fichier exécutable. Certains ne sont pas comme ça. Par exemple, les fichiers de configuration et les fichiers de ressources requis par le logiciel ne sont pas copiés aux emplacements correspondants. Le logiciel comprenant la bibliothèque de liens dynamiques doit mettre à jour le cache de la bibliothèque de liens dynamiques. Sinon, une erreur se produira. la bibliothèque de liens dynamiques qui vient d'être compilée est introuvable, etc. attendez.

伊谢尔伦

Extrait du README officiel :

Pour exécuter Redis avec la configuration par défaut, tapez simplement :

% cd src
% ./redis-server

De même,

Pour installer les binaires Redis dans /usr/local/bin, utilisez simplement :

% make install

Vous pouvez utiliser "make PREFIX=/some/other/directory install" si vous souhaitez utiliser un
destination différente.

Extrait de https://github.com/antirez/redis/blob/3.0/Makefile

install:
    cd src && $(MAKE) $@

Mais c'est juste pour exécuter make install sous le répertoire src.
Après avoir regardé le Makefile dans le dossier src/, j'ai exécuté la commande install avec /usr/local/bin comme paramètre de répertoire (par défaut) pour beaucoup de choses (merci de me permettre de ne pas les lister un par un).

Remarques : L'ajout d'un paramètre après make exécute généralement une cible dans le Makefile. Par exemple, make install consiste à exécuter un ensemble de commandes sous install: dans le Makefile.

Alors, quelle est la commande install ?
man installAprès un instant, vous saurez :

Cette installation copie les fichiers (généralement simplement des fichiers compilés) vers une destination de votre choix.

Obtenez vous-même les informations détaillées.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal