>  Q&A  >  본문

centos - make install到底做什么操作?

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

曾经蜡笔没有小新曾经蜡笔没有小新2733일 전1071

모든 응답(2)나는 대답할 것이다

  • 给我你的怀抱

    给我你的怀抱2017-04-25 09:03:08

    make install(make 명령의 경우) 문자 그대로 install 목표 달성을 의미합니다. 이 목표를 install이라고 하니 당연히 소프트웨어를 설치하는 것이다.

    UNIX 계열 시스템에서는 일반적으로 소프트웨어 설치에 다음 단계가 선택적으로 포함됩니다.

    • 해당 디렉토리에 파일을 복사하세요
    • strip 바이너리 코드 파일에서 불필요한 기호 제거
    • man 문서 및 정보 문서 압축
    • 소프트웨어의 필요에 따라 다양한 인덱스, mandb, 정보 인덱스, 동적 링크 라이브러리 캐시, 소프트웨어 자체 문서 디렉터리 등을 업데이트합니다

    UNIX 계열 시스템의 일부 소프트웨어는 설치가 필요하지 않으며 실행 파일을 실행하여 바로 사용할 수 있습니다. 예를 들어, 소프트웨어에 필요한 구성 파일과 리소스 파일이 해당 위치에 복사되지 않는 경우 동적 링크 라이브러리를 포함하는 소프트웨어는 동적 링크 라이브러리 캐시를 업데이트해야 하기 때문에 오류가 발생합니다. 방금 컴파일한 동적 링크 라이브러리를 찾을 수 없습니다. 등등. 기다리세요.

    회신하다
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-25 09:03:08

    공식 README에서 발췌:

    기본 구성으로 Redis를 실행하려면 다음을 입력하세요.

    으아악

    마찬가지로

    Redis 바이너리를 /usr/local/bin에 설치하려면 다음을 사용하세요.

    으아악

    사용하려면 "make PREFIX=/some/other/directory install"을 사용할 수 있습니다
    목적지가 다릅니다.

    https://github.com/antirez/redis/blob/3.0/Makefile에서 발췌

    으아악

    단, src 디렉토리 아래 make install를 실행하기 위한 것입니다.
    src/ 폴더에 있는 Makefile을 살펴본 후 여러 가지 작업에 대해 /usr/local/bin을 디렉터리 매개변수(기본값)로 사용하여 install 명령을 실행했습니다(하나씩 나열하지 않도록 해주세요).

    비고: make 후에 매개변수를 추가하면 일반적으로 Makefile에서 대상이 실행됩니다. 예를 들어 make install은 Makefile의 install: 아래에 있는 일련의 명령을 실행하는 것입니다.

    그럼 install 명령은 무엇인가요?
    man install잠시 후에 다음 내용을 알게 될 것입니다.

    이 설치는 파일(일반적으로 컴파일된 파일)을 선택한 대상에 복사합니다.

    자세한 정보는 직접 알아보세요.

    회신하다
    0
  • 취소회신하다