:::: MENU ::::
Browsing posts in: Mac

dyld: Library not loaded: /usr/local/opt/jpeg/lib/libjpeg.8.dylib

久しぶりにHomebrewでUpgradeかけたら、下記のエラーが出た

dyld: Library not loaded: /usr/local/opt/jpeg/lib/libjpeg.8.dylib

ほぼ、下記の記事が参考になる

http://qiita.com/maimai-swap/items/9ba6e5f877274079d755

私の環境の場合、jpegのバージョン8d,9bが混在しているようなので、下記のコマンドで戻せばOKでした。

# brew switch jpeg 8d

HomebrewでGUIなWiresharkをインストール

Mac上でWiresharkを使う仕事があったので、Homebrewでインストールしてみた。

$ brew wireshark

ところが、CUIなtsharkがインストールされただけで、グラフィカルなWiresharkではありません。

GUIなWiresharkをインストールするには、オプション(引数)指定してインストール必要があるようです。
一旦、インストールしたwiresharkをアンイストールして、再インストールです。

$ brew remove wireshark
$ brew install wireshark --with-qt
$ brew cask install wireshark-chmodbpf
$ brew linkapps wireshark

これで、/Applicationsフォルダにもリンクされたwiresharkが置かれるので、通常のアプリのようにGUIでwiresharkが起動します。


Mac OS Xでcronが使えない

Mac OS X上でcronを使う場合、Unix/Linux同様に、下記コマンドで編集・設定が出来ます。

$ crontab -e

デフォルトのエディタが起動し、編集画面となりますが、エディタがvimの場合で、保存しようとすると、下記のエラーが表示されることがあります。

crontab: no crontab for foo – using an empty one
crontab: temp file must be edited in place

どうやら、tempファイルを作成する場所に問題があるようなので、.vimrcに下記を追加

$ cat ~/.vimrc
 set backupskip=/tmp/*,/private/tmp/*

再度、crontabで設定し、反映されていることを確認

$ crontab -l

また、デフォルトのエディタがvimでなはく、viになっている場合には下記のエラーが出ることもあります。

crontab: no crontab for username – using an empty one crontab: “/usr/bin/vi” exited with status 1

この場合には、環境でエディタを別のエディタに指定しましょう。
vimである必要がなく、nanoでもemacsでも良いでしょう。

export EDITOR=/usr/bin/vim

一時的に環境変数を変更しても良いですが、頻繁に使用するのであれば、~/.bashrcや.zshrcなどに明記しておくと良いでしょう。


1Passwordの警告によるブラウザーの設定

しばらく前から、Google Chrome上に、Macアプリの1Password機能拡張を入れていたら、下記の警告が出るようになっていたので対処。

1Password can’t verify the identity of your web browser

ヘルプを参照記事を見れば、対処方法が載っています。
https://support.1password.com/code-signature/

私の環境の場合は、Homebrew caskによるGoogle Chromeを起動していたからでした。

アプリケーションフォルダにブラウザーアプリを入れろとの事ですので、Homebrewではなく、正式にGoogle Chromeをダウンロードして、アプリケーションフォルダに入れて解決です。

尚、アプリを変更しても、タブやクッキー、機能拡張などの全ての設定は、~/Library/Application Support/Google/Chrome内に保存されていますので、安心して引き継がれます。


SSH接続後にCan’t open display等でXが起動出来ない

sshで接続先のX Windowsを利用したGUIアプリを起動すると、よく下記のエラーなどで陥る罠

Error: Can't open display:
unable to open X server `'
unable to open display :0.0
Warning: No display specified. You will not be able to display graphics on the screen.

Xの環境変数やら、ディスプレイ番号も絡んで来ると思いきや、SSH接続でX転送が有効になっていない事が多々あるのでメモ

$ ssh -Y <remote_host>

接続後に、リモートホスト側のXアプリを起動。


Homebrewでwarning: Insecure world writableが出るようになった

ここ最近、Homebrewでまた下記のパーミッション警告が出るようになった。

/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/universal-darwin13/rbconfig.rb:213: warning: Insecure world writable dir /usr/local in PATH, mode 040777

下記のコマンドで警告は出なくなった。

$ sudo chown $(whoami):admin /usr/local && sudo chown -R $(whoami):admin /usr/local
$ sudo chmod go-w /usr/local
$ brew update

homebrewのアップデートで失敗は、phinzeが原因

久しぶりにbrewの更新をかけたら、下記のエラー

$ brew update
==> Tapping homebrew/core
Cloning into '/usr/local/Library/Taps/homebrew/homebrew-core'...
....
Error: Could not link phinze/cask manpages to:
  /usr/local/share/man/man1/brew-cask.1

Please delete these files and run `brew tap --repair`.

どうやらphinzeは、しばらくメンテされていないようで、uptapしてあげれば良さそうです。

$ brew untap phinze/cask
$ brew update; brew cleanup; brew cask cleanup

Macのディスクユーティリティでマウント解除できない時の対処

私の使っているiMac内蔵のSSDがよく壊れます。
ディスクユーティリティで検証・修復しようとしても、”修復できません”との警告で、よく復旧作業を行うことがあります。

通常だと、「⌘(コマンド)+ R」のリカバリモードで起動し、ディスクユーティリティを起動して、壊れたSSD/HDDを消去するのですが、時々、”マウント解除できませんでした”と消去すらできない症状に遭遇します。
おそらく、リカバリーモードで起動しても、消去対象のSSD/HDDに何らかのアクセスがあるからマウント解除できないのでしょう。

ディスクユーティリティを抜け、コンソールで調べてみても良いかと思いますが、面倒臭いので、USBディスクで起動するとあっさり消去できますので、緊急起動用にインストールUSBを作成しておくと良いです。
ちょっと情報古いですが、インストールUSBの作り方はこんな感じで↓

OS X 10.8 Mountain Lion インストールUSBの作り方

コンソールで作業したい方は、psやlsofで消去対象のSSD/HDDを探して、プロセスを殺すと上手く行くかと思います。


$ sudo lsof /Volumes/<HDD名や共有名>
mds 60 root 50r DIR 48,12 16384 2 /Volumes/share
Finder 360 hoge 26r DIR 48,12 16384 2 /Volumes/share
zsh 75882 hoge cwd DIR 49,10 1554 2 /Volumes/share

この場合は、shareがFinderとzshで利用されているので、Finderで開いていないか、zshでshare内にいないか確認すればOKですね。

偶に、Finderが全て閉じているにも関わらず、アンマウントできないことがあるので、その場合には、FinderをOption+右クリックで「再度開く」により、Finderを再起動しましょう。

http://blog.fkoji.com/2013/03200100.html


Error: uninitialized constant Formulary::HOMEBREW_CORE_FORMULA_REGEX

MacのHomebrewでアップデートをかけると、またもや下記のエラー

Error: uninitialized constant Formulary::HOMEBREW_CORE_FORMULA_REGEX

$ brew update
Error: uninitialized constant Formulary::HOMEBREW_CORE_FORMULA_REGEX
Please report this bug:
    https://git.io/brew-troubleshooting
/usr/local/Library/Homebrew/formulary.rb:227:in `loader_for'
/usr/local/Library/Homebrew/formulary.rb:176:in `factory'
/usr/local/Library/Homebrew/cmd/update.rb:173:in `block in report'
/usr/local/Library/Homebrew/cmd/update.rb:159:in `each_line'
/usr/local/Library/Homebrew/cmd/update.rb:159:in `report'
/usr/local/Library/Homebrew/cmd/update.rb:24:in `update'
/usr/local/Library/brew.rb:140:in `<main>'

gitのトラブルシューティングを見ろとの事で、https://github.com/Homebrew/homebrew/issues/42553に書いてありました。

もう一度、brew updateをかければ良いみたいです。

$ brew --version
0.9.5
$ brew update
Already up-to-date.

Macでjavaのjarファイルを実行

時々、Mac上のターミナルで、Javaのjarファイルを実行したい時があるのでメモ。

javaの起動には、Java Developer Kitが必須のようなので、下記のアドレスからMac版をダウンロードして、インストールしておく。


http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
ちなみに現時点だとjdk-8u40-macosx-x64.dmg

その後に、下記コマンドで実行

$ java -jar jarfile.jar

ページ:1234567