Я уже очень давно ничего не писал в блог. Теперь сложновато начать, потому я решил написать серию коротких постов с подсказками и хитростями под названием “Memo“. Сегодня я хочу поговорить о двух библиотеках (gems) Ruby, которые использую в каждом проекте на Ruby on Rails: mysql и memcached. Каждый раз, когда пытаюсь установить или обновить эти библиотеки под Mac OS X, я получаю следующую ошибку:
1 2 3 | Building native extensions. This could take a while... ERROR: Error installing mysql: ERROR: Failed to build gem native extension. |
После чего начинаю лихорадочно гуглить на тему как же мне все-таки их установить. Настало время упростить себе жизнь и описать процесс установки здесь.
Установка библиотеки mysql под Mac OS X и MacPorts
Устанавливаем mysql5 из MacPorts:
1 | sudo port install mysql5 |
Теперь мы можем поставить gem mysql:
1 2 3 4 | kpumuk@kpumuk-mbp~: sudo gem install mysql -- --with-mysql-config=/opt/local/bin/mysql_config5 Building native extensions. This could take a while... Successfully installed mysql-2.7 1 gem installed |
Уставновка библиотеки memcached gem под Mac OS X и MacPorts
Для начала нужно поставить memcached и libmemcached из портов:
1 | sudo port install memcached libmemcached |
И затем gem memcached:
1 2 3 4 | kpumuk@kpumuk-mbp~: sudo env ARCHFLAGS="-arch i386" gem install memcached --no-ri --no-rdoc -- --with-libmemcached-dir=/opt/local Building native extensions. This could take a while... Successfully installed memcached-0.12 1 gem installed |
Если у вас есть какие-нибудь вопросы, которые могут быть освещены в этой серии — спрашивайте в комментариях.

Полезная заметка, однако она не уберегла меня от плясок с бубном вокруг гема memcached… дело в том, что недавно вышла новая версия libmemcached 0.26 и версия гема 0.14… скомпилить их вместе под леопардом никак не получается… пришлось откатится до 0.25 + 0.12