ラベル Homebrew の投稿を表示しています。 すべての投稿を表示
ラベル Homebrew の投稿を表示しています。 すべての投稿を表示

2015年5月31日日曜日

MacのMySQLが起動しないので、MariaDBに入れ替えと、パーミッション設定しなおした。


# mariaDBインストール
brew uninstall mysql
brew intall mariadb

# エラーが出て起動できない場合
# (MariaDBにしなくてもこの権限設定だけすれば解消したっぽい)
MYSQL_DIR=/usr/local/var/mysql
sudo chown -hR `whoami`:admin $MYSQL_DIR
sudo chmod -R 771 $MYSQL_DIR

# 起動
mysql.server start

# ログイン
mysql -u root



下記エラー内容


$ mysql -uroot
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

$ mysql.server start
Starting MySQL
. ERROR! The server quit without updating PID file (/usr/local/var/mysql/Retina-MacBookPro.local.pid).

$ mysql.server stop
ERROR! MySQL server PID file could not be found!

2015年2月23日月曜日

brew install openssl でエラーが出る

環境CentOS6.6 x86

linuxbrewを使って、owncloudをインストールできるのかなと思ってやっていた時に
つまずいた話、結局owncloudをインストールするまでに至らなかったが、
opensslのインストール時に発生したビルドエラー対処法だけ記載します。

linuxbrew でopensslをインストールしようとした時に、ビルドエラーで進めない時の対処法
opensslビルド動作中にこんなエラーがでる

cryptlib.c:1: sorry, unimplemented: 64-bit mode not compiled in

ググると、32-bit環境にも関わらず、64-bit環境用にビルドしようとしてるとのこと
configureしてるところにオプションを指定してやればよいよと知ったが、brewってどうやってそこんところ弄るの?

fomulaってのがあって、Rubyで書かれたスクリプトがあるんだけど、
そこでconfigure用のコマンド文字列を生成しているみたい。
brew edit openssl ってするとそれを編集できる。
58行目あたりに、32 or 64bit の判定をしている部分があるけど、おそらくここで64bitが選ばれてしまうからだろう。。。

def arch_args
  return { :i386  => %w[linux-generic32], :x86_64 => %w[linux-x86_64] } if OS.linux?
    {
    :x86_64 => %w[darwin64-x86_64-cc enable-ec_nistp_64_gcc_128],
    :i386   => %w[darwin-i386-cc],
    }
end

# -- 省略

def install
  if build.universal?
    ENV.permit_arch_flags
    archs = Hardware::CPU.universal_archs
  elsif MacOS.prefer_64_bit?
    archs = [Hardware::CPU.arch_64_bit]
  else
    archs = [Hardware::CPU.arch_32_bit]
  end

  dirs = []

  archs.each do |arch|
    if build.universal?
      dir = "build-#{arch}"
      dirs << dir
      mkdir dir
      mkdir "#{dir}/engines"
      system "make", "clean"
    end

    arch=:i386 # 無理やりここで32-bit用にしてしまう。

    ENV.deparallelize
    system "perl", "./Configure", *(configure_args + arch_args[arch])
    system "make", "depend"
    system "make"

# -- 省略

上記のarch変数を直接書き換えることで、対応できた!