타사 패키지 설치

타사 패키지 설치

저는 Ubuntu를 사용하고 있으며 리포지토리를 통해 패키지를 설치하는 것은 쉽습니다. APT가 모든 것을 대신해 주지만 때로는 인터넷을 통해 무언가를 설치해야 할 때도 있습니다.

99%의 경우 이러한 패키지는 타르볼입니다. 내가 읽은 모든 내용은 아카이브 관리자나 tar 명령 자체를 사용하여 아카이브를 추출한 후 구성을 실행한 다음 make를 실행하고 make install을 실행하여 빌드하라고 알려줍니다.

그러나 지금까지 다운로드한 모든 것에는 구성 스크립트가 작성되어 있지 않습니다. 아니면 적어도 그렇게 보입니다.

예를 들어, 브라우저 플러그인을 사용할 수 있기를 바라면서 Java 웹사이트에서 JRE를 다운로드했습니다. 그러나 다운로드 지침에는 파일 압축을 풀고 플러그인에 액세스할 수 있도록 심볼릭 링크를 만드는 내용만 포함되어 있습니다.

이제 /opt 디렉토리에 이 거대한 파일이 생겼습니다. 그 내용은 다음과 같습니다. 여기에 이미지 설명을 입력하세요

나에게는 bin, lib 등이 서로 다른 디렉토리에 있어야 할 것 같은 느낌이 듭니다. 이것이 사실입니까, 아니면 아니오입니까?

내가 다운로드하는 거의 모든 타르볼에서 동일한 상황이 발생합니다. 이것은 적용되지 않지만 다른 파일의 경우 프로그램을 내 데스크탑의 링크로 사용할 수 있도록 하고 싶습니다. 그러나 설치 지침에서는 압축 풀기만 다루며 위와 같은 단일 디렉터리만 남겨 둡니다.

아이콘을 원할 경우 데스크탑 폴더에 있는 적절한 파일에 대한 링크를 직접 만들어야 합니까?

추가 구성이 필요한 파일이 설치 지침에 언급되거나 구성 스크립트와 함께 제공된다고 가정해야 합니까?

편집하다: Repositories에 JRE가 있는 것으로 알고 있는데 이는 문제의 예시이므로 JRE에 대한 부분만이 아닌 일반적인 질문도 봐주시길 바랍니다.

답변1

간단한 타르볼을 사용할 때와 컴파일할 때(그리고 모든 것이 무엇을 하는지) 이해하는 것이 유용합니다.

구성 스크립트는 컴파일하는 소프트웨어용이며 추가 라이브러리와 관련된 컴파일 옵션이나 접두사 선택 옵션이 있을 수 있습니다. 또한 실제로 스크립트를 컴파일하고 makefile을 생성하는 데 필요한 모든 것이 갖추어져 있는지 확인합니다. make는 makefile을 사용하여 프로그램을 컴파일합니다.전통적으로make install은 컴파일된 프로그램과 관련 파일을 올바른 위치에 복사하지만 저는 deb를 생성하여 설치하는 checkinstall을 사용합니다. 이를 통해 라이브러리 및 기타 깔끔한 것들을 공유할 수도 있습니다. 'deb' 또는 'RPM'은 정상적인 설정 세트와 필요한 공유 라이브러리 및 종속성을 자동으로 가져올 수 있다는 지식을 갖춘 특정 배포판 및 버전용으로 컴파일된 소프트웨어입니다.

이미 컴파일했고 옵션이 없으며 일반 사용자로 소프트웨어를 실행하는 경우 정적으로 컴파일된 모든 것을 패키지화할 수 있습니다. 이것은 '휴대용' 소프트웨어에 해당하는 Linux입니다(1회 쓰기가 아닌 썸드라이브 의미에서 거의 모든 곳에서 컴파일 가능). 이는 사용자에게 추가 옵션이 필요하지 않고 모든 것이 제대로 작동한다고 가정합니다(또는 너무 게으르기 때문에 적절하게 패키징할 수 없습니다. 그런 일이 발생합니다.)

HFS는 유닉스 계열에 일종의 필수이지만 모든 사람이 이를 존중하는 것은 아닙니다. 이에특정한경우에 따라 이 패키징 스타일을 사용하면 상대 파일 경로를 간단하게 사용할 수 있고, JAVA_HOME 접두사 등을 사용하여 다양한 버전의 Java를 나란히 설치할 수 있다고 생각됩니다. 전적으로 의도적입니다.

관련 정보