Mac OS X 특정 패키지가 설치되었는지 확인하는 방법

Mac OS X 특정 패키지가 설치되었는지 확인하는 방법

gcc, g++, cpp, make, libpng devel, zlib devel, git, JavaBASH 스크립트에서는 및 (개발 파일 포함)이 Mac OS X에서 사용 ant가능한지 확인해야 하고 pkg-config, 그렇지 않은 경우 사용자에게 해당 파일을 설치하라는 메시지를 표시해야 합니다.

Linux에는 패키지 관리 도구가 있으므로 이는 쉬운 작업이지만 Mac OS X 셸에서는 이 작업을 수행하는 방법을 모르겠습니다. 예를 들어, openSUSE에서는 Debian 기반 배포판 rpm -q및 . 그런데 Mac에서는 어떻게 해야 할까요?zypper indpkg-queryapt-get install

답변1

Apple의 패키지 관리 시스템은 종종 비판을 받습니다. 이 유틸리티는 pkgutil패키지 영수증을 나열하고 쿼리하는 데 사용할 수 있습니다.

Apple 설치 프로그램을 사용하여 설치된 모든 패키지 나열

     pkgutil --pkgs

패키지 ID에 대한 정규식

    pkgutil --pkgs=.\+Xcode.\+

패키지 ID의 모든 파일 나열

    pkgutil --only-files --files com.apple.pkg.update.devtools.3.2.6.XcodeUpdate

lsbom그런 다음 /var/db/receipts에 있는 bom 파일을 다시 사용하고 읽을 수 있습니다 .

사용자는 MacPorts, fink 또는 Homebrew와 같은 다른 패키지 관리 시스템도 설치합니다. 또는 접두사를 사용하여 직접 컴파일하세요. pkgutil이러한 방법을 통해 설치된 패키지는 나열되지 않습니다.

대상 운영 체제가 OS X10.9 또는 OS X 10.10인 경우

    gcc --version

이 명령은 gcc 버전을 출력하거나 XCode 명령줄 도구를 설치하라는 메시지가 표시됩니다. gcc, g++, cpp, make, and git다른 도구와 함께 설치됩니다. Java 패키지는 Oracle에서 제공됩니다. 테스트할 수 있지만 java --version헤더 파일을 검색하려면 Apple의 프레임워크, 플러그인 및 번들에 익숙해야 합니다. pkgutil이 과정에 적합한 후보가 될 것입니다.

언급한 다른 패키지는 쉘 스크립트로 컴파일되거나 컴파일되어 Apple 설치 프로그램 패키지에 넣은 다음 쉘 스크립트를 통해 설치할 수 있습니다. 쉬운 방법은 없습니다.

답변2

패키지에 찾을 수 있는 바이너리가 있는 경우 다음을 수행할 수 있습니다.

package_name=<packge-name>
t=`which $package_name`
[ -z "$t" ] && echo "the $package_name isn't installed!"

답변3

내 마음에 가장 먼저 떠오르는 것은 다음과 같습니다 system_profiler.

system_profiler SPSoftwareDataType

위 명령의 출력은 다음과 유사합니다. yum info 이 유틸리티에는 다른 많은 옵션이 있습니다. man system_profiler당신을 올바른 길로 인도해야합니다. 이것블로그 항목더 많은 정보를 제공해드리겠습니다.

관련 정보