설치 명령 automake를 사용하여 실행할 스크립트를 지정합니다.

설치 명령 automake를 사용하여 실행할 스크립트를 지정합니다.

저는 현재 automake를 사용하여 처리되는 대규모 소프트웨어 패키지를 구축 중입니다. 패키지는 C, C++ 및 Python으로 구성됩니다. 지금까지 C/C++를 사용하여 좋은 결과를 얻었지만 Python 종속성과 관련하여 장애물에 부딪혔습니다.

make install저는 개인적으로 설치 시 스크립트를 실행하고 호출 시 이를 실행 하고 싶습니다 . 현재는configure.ac에 의해 호출되지만 불필요한 시간 동안 실행됩니다.

이 스크립트는 세 가지 작업을 수행합니다.

  • 일부 Python 파일을 /usr/local/lib/python2.7/(dist|site)-packages에 넣습니다.
  • 직접 만든 Python 모듈 설치
  • Python 및 프로그램 종속성(예: geckodriver)을 확인하고 필요한 경우 설치하십시오.

나는 automake에 의해 생성된 makefile이 예제에서 install또는 uninstall예제를 통해 트리거되는 "create 명령"이라는 것을 알고 있습니다. install이 호출될 때 makefile.am이 호출되고 제거될 때 someOtherscript.sh가 호출되도록 지시하는 방법을 알고 싶습니다. 내 프로그램 설치 내용을 삭제하세요.

데비안 패키지의 preinst 스크립트와 약간 비슷합니다.

답변1

마침내 Python용 자동화 도구를 사용하는 방법을 찾았습니다. Makefile.am을 사용하면 다음과 같이 설치 및 제거를 재정의할 수 있습니다.

install-exec-local:
    cd src/ && python setup.py install --record $(pythondir)/installed_files.txt

uninstall-local:
    cat $(pythondir)/installed_files.txt | xargs rm -rf \
    rm -r $(sysconfdir)/nina

훌륭한 튜토리얼을 제공한 Kevin Brown에게 특별히 감사드립니다.

https://blog.kevin-brown.com/programming/2014/09/24/combining-autotools-and-setuptools.html

관련 정보