MacPorts 란?

MacPorts는 Command-line 에서 오픈소스 프로그램을 쉽게 컴파일, 설치, 업데이트 등을 할 수 있도록 디자인 된 X11 또는 Aqua 기반 맥 OS X 용 소프트웨어이다.
먼저 MacPorts를 설치하기 위해서 Xcode (version 4.4 or later for Mountain Lion, 4.1 or later for Lion, 3.2 or later for Snow Leopard, or 3.1 or later for Leopard) 가 필요하다. 이는 Xcode 에 있는 Command Line Tools 이(가) 필요하기 때문이다.
 

Xcode는 AppStore 또는 애플개발자 센터에서 무료로 다운받을 수 있다. 이왕 하는 김에 개발자 등록을 해 두도록 하는 것도 좋을거 같다. 매버릭스(Mavericks OX S 10.9 버젼)을 개발하기 위해서 OS X 10.9 doc set을 다운 받으려면 애플 계정이 필요하다. 개발자와 먼 분들은 상관이 없다. 필요한 것은 Command Line Tools 이거니까!

위 그림은 Xcode 를 설치 후 실행 하면 좌측 상단 Xcode/Preferences… 를 선택하면 나오는 창이다.

Command Line Tools 까지 설치 했다면 이젠 MacPorts 를 설치하면 된다. MacPorts 다운로드는 http://distfiles.macports.org/MacPorts/ 또는 http://www.macports.org/install.php 여기서 자신의 운영체제에 맞는 파일을 다운 받는다. 나는 Mountain Lion이므로 http://distfiles.macports.org/MacPorts/MacPorts-2.2.0-10.8-MountainLion.pkg 이것을 다운받아 설치했다.

설치가 완료되면 이제 터미널에서 Command line 명령으로 자신에게 필요한 프로그램을 설치 할 수 있다. 먼저 난 wget 을 설치 했다.

 

MacPorts command line 에서 사용법은 간단하다. sudo 다음 port 를 입력 후 install, update 등 우분투에서 사용하는 명령어를 그대로 사용하면 된다.

~$ sudo port install wget

위 명령어를 입력하면 다음과 같은 화면이 나오면서 wget 과 연관된 모든 프로그램을 설치한다.

---> Computing dependencies for wget
---> Dependencies to be installed: gettext expat libiconv ncurses gmp gnutls libidn libtasn1 nettle p11-kit curl-ca-bundle desktop-file-utils glib2 libffi perl5 perl5.12 gdbm zlib popt libxslt libxml2 xz libgcrypt libgpg-error pcre bzip2 libedit
---> Fetching archive for expat
---> Attempting to fetch expat-2.1.0_0.darwin_12.x86_64.tbz2 from http://jog.id.packages.macports.org/macports/packages/expat
---> Attempting to fetch expat-2.1.0_0.darwin_12.x86_64.tbz2.rmd160 from http://jog.id.packages.macports.org/macports/packages/expat
---> Installing expat @2.1.0_0
---> Activating expat @2.1.0_0
.
.
.

To customize wget, you can copy /opt/local/etc/wgetrc.sample to /opt/local/etc/wgetrc and then make changes.

---> Cleaning wget
---> Updating database of binaries: 100.0%
---> Scanning binaries for linking errors: 100.0%
---> No broken files found.