[mac] 패키지 매니저, MacPort
이전에 포스팅했던 HomeBrew가 교체하고 싶어했던 macport이다. 현재 MacPort는 15,915(2012–11–01 현재)의 패키지를 관리하고 있다. 이렇게 많는 패키지를 체제적으로 관리하면 있는 것을 쉽지 않다. 이런 서비스를 이용할 수 있는 것에 감사할 따름이다.
이 문서에는 macport을 설치하고 사용하는 것에 대해서 정리해 볼 것이다.
설치
아래 명령을 통해서 서버에서 소스를 받을 수 있다. ( 여기서는 2.1.2를 사용했다.)
$> curl -O https://distfiles.macports.org/MacPorts/MacPorts-2.1.2.tar.gz
$> tar xvfz Macports-2.1.2.tar.gz
$> cd MacPorts-2.1.2
$> ./configure
$> make
$> sudo make install
이렇게 macport를 설치하면 /opt에 실행파일 및 필요한 파일들이 생성된다. macport로부터 컴파일되는 실행파일들이 이 경로에 들어가기 때문에 이것을 path에 추가 해야 한다. ( ~/.bash_profile )
# set path for MacPort >>
export PATH=/opt/local/bin:/opt/local/sbin:$PATH
export MANPATH=/opt/local/share/man:$MANPATH
이용
이렇게 설정이 끝났다면 이제 macport를 사용해 보도록 하자.
Mac Port 자체 업데이트
$> sudo port selfupdate --nosync
selfupdate는 macport 자제를 업그레이드하는 것이다. 옵션으로 –nosync가 있는 이 옵션을 주면 mac port의 package tree를 업데이트하지 않는다.
Mac Port의 package tree 업데이트
$> sudo port sync
앞에서도 설명했지만 Mac Port는 1만 5천개 이상의 패키지를 가지고 있다. 이 패키지 정보들이 update될 수 있다. 따라서 이를 주기적으로 업데이트해야 한다.
Mac Port의 패키지 리스트 및 검색
MacPort에서 자신이 원하는 패키지를 찾아야 한다. 웹사이트를 이용하는 것도 있고 command로 찾는 방법도 있다.
$> port list | grep <pacakge name>
port list를 하면 가지고 있는 패키지를 검색해서 출력한다. 이것을 grep으로 검색할 수 있다. 혹은 port의 search 명령을 사용해도 된다.
$> port search <package name>
search 명령을 사용하면 좀더 쉽게 패키지를 검색할 수 있다.
설치
패키지를 설치하기 위해 install를 명령을 사용해야 한다.
$> sudo port install <package name>
위 명령처럼 install 명령뒤에 package name을 써주면 된다. package name은 앞에서 설명한 패키지 검색 방법을 사용해서 원하는 패키지를 찾는다.
제거
이미 설치된 패키치를 삭제할때 이렇게 사용한다.
$> sudo port uninstall <pacakge name>
설치된 패키지 보기
이미 설치된 패키지를 보고 싶다면 다음과 같다.
$> port installed
Macport 제거
Macport 및 설치 패키지 모두를 삭제할 수 있다.
$> sudo port -fp uninstall installed
$> sudo rm -rf /opt/local /Applications/DarwinPorts /Applications/MacPorts /Library/LaunchDaemons/org.macports.* /Library/Receipts/DarwinPorts*.pkg /Library/Receipts/MacPorts*.pkg /Library/StartupItems/DarwinPortsStartup /Library/Tcl/darwinports1.0 /Library/Tcl/macports1.0 ~/.macports
이외에 많은 명령들이 있다. 나머지 명령들은 MacPort 매뉴얼을 통해서 더 알아볼 수 있다.
참고
번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|---|
935 | Develop | [ios] Xcode의 디버그 모드에서 콜스택 | hooni | 2015.01.03 | 1280 |
» | System/OS | [mac] 패키지 매니저, MacPort | hooni | 2015.01.03 | 1444 |
933 | System/OS | [mac] Mac OS 패키지 매니저, HomeBrew | hooni | 2015.01.03 | 1764 |
932 | Develop | [ios] binary를 C코드로 변환 | hooni | 2015.01.03 | 1761 |
931 | Develop | [ios] APNS에 사용할 인증서 만들기 (KeyChain에 있는 인증서 Export) | hooni | 2015.01.03 | 1137 |
930 | Develop | [ios] iOS앱의 Xcode 빌드 과정 | hooni | 2015.01.03 | 2520 |
929 | Develop | [ios] Xcode를 사용해서 Static Library 만들기 (시뮬레이터 + 디바이스) | hooni | 2015.01.03 | 3577 |
928 | Develop | [ios] Thread Loop 내에서 UI 업데이트 방법 | hooni | 2015.01.03 | 1070 |
927 | Develop | [ios] UIView 계층구조 | hooni | 2015.01.03 | 1349 |
926 | System/OS | [linux] CentOS 에 APM 설치하기 | hooni | 2015.01.02 | 2151 |
925 | Develop | [ios] UIWebView를 이용한 로컬 HTML 파일 표시 | hooni | 2015.01.02 | 1469 |
924 | Develop | [android] 안드로이드 동영상 스트리밍 예제 2 | hooni | 2015.01.02 | 5079 |