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

2015年3月4日水曜日

初めてMacを購入したDeveloperがすること

0. はじめに

プログラミングの言語は色々あります。Macは、購入した時点でPHPやRuby, Perl, Pythonのコマンドは入っており、開発可能です。以下、C, C++, Objective-C, Python, PHPの開発について、環境の構築について書きます。
ブラウザからダウンロードしても使えるのですが、あとあとバージョン管理とかでちょっと困ると思うので。
5までは全員すべきことで、それ以降はOptionalです。

1. Xcodeのインストール

まずはXcodeをインストールしましょう。Appleで開発者登録をすると、ダウンロードできます。iPhone/Mac開発には必須のツールです。また、他の言語の開発にも使える統合開発環境(IDE)です。
Xcode

2. Command Line Tools for Xcode

次にCommand Line Tools for Xcodeをインストールします。
xcode-select --install
もしくは
Downloads for Apple Developers(要ログイン)
からダウンロード&インストールします。

ここまでで、C, C++, Objectice-C, Swift(Mac, iPhone)の開発環境は整っています。iPhoneはエミュレータもついてきます。
iPhoneの実機で実行するためのiOS Developer Programについては
はるふ's Innovation!!ーiOS Developer Programへの参加
をご参照ください。

3. Javaのインストール

Homebrewをインストールしたいのですが、その前に、Javaを入れる必要がある?(どちらかわからない)

Androidの開発にも必須です。

java -version
を実行したとき、インストールされていたらバージョンが、されていなければインストールするかきかれる(らしい)です。

インストールされてないのに聞かれなければ、
Oracle-JavaからJDKのMac OS Xをダウンロード&インストールします。

参考→QiitaーMacでJDKのバージョンを切り替える

4. Homebrewのインストール

インストールパッケージ管理に利用します。色々ブラウザからダウンロードするとバージョン管理が大変だったり、./configure;make;でエラーがでたらどうしようもなかったりと、homebrewを使うと便利です。

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
これを実行
これにより、brewコマンドが使えるようになります
まずは指示に従い、
brew doctor
特に問題なければ、完了です。

基本のbrewコマンドは、

Homebrewのアップデート&再ビルド
brew update
brew upgrade

パッケージ名(formula)を検索
brew search (キーワード)

パッケージのインストール
brew install (パッケージ名)

パッケージのアンインストール
brew remove wget

インストールされたパッケージ一覧を表示
brew list

です。
※Homebrew派とMacPorts派といて、Homebrew派の方が多いイメージがあります。ただ、共に入れるのはよくないようです。

参考→Qiitaーパッケージ管理システム Homebrew

5. gitのインストール

最近のプログラマはとりあえずみんあGitを使っています。

brew install git
これだけでOKです。
gitの基本的なコマンドについては
はるふ's Innovation!!: サルでも分かるgit入門がわからない

6. お好みのエディタ

vimやemacsといったgeekなエディタは標準搭載しています。 Xcodeでの開発ならXcodeで開発できます。
その他で有名なのは、Sublime Text
やAtom
です。
お好みに合わせて。
※Sublime Textは無料で”つかう”ことができるのは事実ですが、長期利用は、有料です。

7. Pythonの開発

Pythonのバージョン管理ツールとして、Pyenvがよく使われます。
brew install pyenv
でインストール。 その後、
pyenv install -l
でインストール可能なパッケージ一覧が表示されます。

自然言語処理や科学計算などを行う場合は、anacondaをインストールすると、その他様々なモジュールを同時にインストールできて便利です。

2.7.9や3.4.3、anaconda-2.1.0やanaconda3-2.1.0など、
pyenv install 2.7.9
みたいな感じで、一覧の時に表示された時の名前を使ってインストールします。

Python 2.xとPython 3.xでわりと差があるので、どちらを使うかは、場合によります。そのため、anacondaもanaconda(2.x系)とanaconda3(3.x系)で分かれています。Pyenvを使っているなら、どっちもいれて、切り替えても問題無いです。
参考→Python 2 と Python 3 のどちらを使って開発すべき?

anacondaについて、詳細は以下のリンクをご参照ください
参考→QiitaーMacでPython3系ベースの機械学習環境設定(Python2系との共存)

以降は引数なしでpythonなら対話モードで、python (ファイル名.py)ならばそのファイルが実行されます。

pythonのモジュールの追加は、pipから行います。
はるふ's Innovation!!ーTweepy+Pythonによるユーザーストリーム〜pip, tweepyのインストールから〜(Mac)
を参照してください。
pip list
でインストールしたモジュール一覧を見ることができます。

Mecabを使う場合は、
brew install mecab
brew install mecab-ipadic
でmecabを入れます。これでコマンドからmecabを使えるようになります。

pythonから使えるようにするには、
pip install mecab-python
を実行します(python3なら右をpython3にする)
これで、pythonからimport Mecabを実行できます。

8. PHPの開発(Apache, FileZilla)

PHPはサーバーで処理を実行し、するので、デバッグにはサーバーが必要ですが、いちいち送るのはとても面倒です。そのため、PC上に仮想的にサーバー環境を構築すると便利です。
Apache(仮想のサーバー)はもともとインストールされています。
sudo apachectl start
により、Apacheを起動。startの部分をstop, restartにすると、停止, 再起動を行うことができます。起動している状態で、ブラウザに
http://localhost
を入力すると、
It Works!
が表示されます。表示されれば、起動しています。

ApacheでPHPを有効にするには、httpd.confというファイルを編集する必要があります。
vimエディタを用います。ちょっと扱いが難しいので、リンクをご参照ください→vimコマンド一覧

sudo vi /private/etc/apache2/httpd.conf
でvimが起動したら、i(挿入モードへ)
#LoadModule php5_module libexec/apache2/libphp5.so
を探して、先頭の#をとる
そのご、EscまたはCtrl+C(コマンドモードへ)
:wqを入力してEnter
PHPのバージョン管理をする場合は→PHP利用のための設定

以上で設定は完了です。

http://localhostは
/Library/WebServer/Documentsの中身を示します。つまり、ここのindex.htmlが読まれているので、ここに例えばsample.phpみたいなファイルを置いて、http://localhost/sample.php
にアクセスすると、PHPのサーバーの実行結果を見ることができます。

PHPのエディタには、僕はSublimeを使っています。

サーバーをかりているとき、サーバーにファイル送るときは、FileZillaを用います。

cakePHPはフレームワークの一つです。僕は使ったことがないので、調べてみてください。

※PHPで開発する際、いわゆるたとえば$が抜けている、のようなミスの時、何も表示されなくて困ります。そういう時はphpコマンドを実行すると、pythonの実行時みたいにエラー検出できます。

9. Androidの開発

Androidの開発は、これからの時代は、Eclipseではなく、Android Studioを使うべきです。(SDKは廃止予定とのことです)
参考:第 3 回・新 IDE : Android Studio を使ってみよう!
参考:【ADB】Java(JDK)とAndroid SDKを導入してADBコマンドを使えるようにする

公式のエミュレータはとても重いので、変える必要があります。公式以外のエミュレータとしてGenymobileなどを使うのもひとつの手ですが、公式も、intelのHAXMを使うと、早くなります→参考:Android SDK の高速エミュレータ、使ってますか?

Androidアプリのファイル構成は
QiitaーHello worldで分解するAndroid Studioのプロジェクトの内容
がわかりやすいです。

10. Unityの開発

インストールしましょう。


以上がやったことのある開発環境の準備です!

2015年2月13日金曜日

Apacheの設定で失敗した時


Webアプリケーションを開発するときなど、ローカルで実行できる環境があれば、毎回サーバーに送る必要なくデバッグできて、編集→デバッグのサイクルが早くなり、効率がいいです。

Macであれば標準搭載のApache 2を使うことが多いかと思いますが、設定に失敗した時、とてもつらいです。よくわからぬままhttpd.confなどを編集すると、戻らなくなって、何もできなくなってしまいます。そうなった時の対処法(初期化の仕方)について。

まず、Apacheのの設定ファイルは、/private/etc/apache2/に格納されています。

よって、ターミナルから、
cd /private/etc/apache2/
ls
で中身を見ると、おそらくhttpd.confがあるかと思います。また、extra(フォルダ)もあるかと思います。

で、実は、これらにはバックアップファイルが用意されています。originalフォルダの中身を見てみると、httpd.confとextra(フォルダ)が存在します。この中身を必要に応じてコピーしましょう。すなわち、(上のコマンドの実行後、)
sudo cp original/httpd.conf httpd.conf
他のファイルについても同様です。書き換えたと思うファイルをoriginalの中身のファイルで書き換えましょう。(originalの内部を荒らしたら終わりです) 最後は
sudo apachectl restart
でApacheを再起動

これで設定書き換える前の状態に戻り、ブラウザでhttp://localhostをみると、It Works!が表示されるかと思います。

検索用↓
httpd: Syntax error on line 58 of /private/etc/apache2/httpd.conf: Cannot load libexec/apache2/mod_authn_default.so into server: dlopen(/usr/libexec/apache2/mod_authn_default.so, 10): image not found
com.apple.xpc.launchd[1]: (org.apache.httpd[670]) Service exited with abnormal code: 1

2015年1月21日水曜日

文字のエンコードについて〜Python with Xcode 6 補足〜

先日の記事

Xcode 6でPythonの開発を行う(Mac)

の補足です。

文字エンコードについて。
ソースのエンコード、システムのエンコード、ファイル入出力のエンコードなどそれぞれありますが、たぶん、こんがらがらないためには、統一しておくのが一番かと思います。もちろん合わせなきゃいけない場面もあるでしょうが、自分で使う分には統一が一番ですよね!?
Defaultは基本的にPython 3系では標準がUnicode形式になりましたが、Python2.x系ではUS-ASCIIになっており、日本語を入力できなかったり非常に不便ですので、変更方法などご紹介します。プログラムで処理することもできますが、コーディングしやすくなります。

以下、Python2.x系に向けた記事です。

<ソースコードのエンコード>
Pythonでソースコードを書くときは、基本的に、1行目でエンコード形式を指定します。ASCIIでは、たとえコメントにでも日本語を入力したとき、そのままの設定ではエラーになってしまいます。

僕の場合は、Xcodeの標準に合わせ、
# coding: UTF-8
にしました。Xcode側からも、右側のText Encodingから変更などできます。
(vim形式、emacs形式など、表記法にも複数あるようです。大文字・小文字は区別されません。)
これで、日本語も記述できるようになります。

ただ、例えば文字列の長さを取得したいとき、len(u'日本語')=3ですが、len('日本語')は3ではありません。こういう点ではやはりunicodeが便利で、Python3系が羨ましくなります。また、どの文字コードがいいのかわかりません・・・

<システムのエンコード>
次に、デフォルトのエンコードについて。デフォルトでは、入出力もUS-ASCIIになっており、不便です。よって、これをUTF-8に書き換えたいところです。(ただ、設定の書き換えなので自己責任で!)

方法は、sitecustomize.pyというファイルを作り、
import sys
sys.setdefaultencoding("utf-8")
を入力して保存。
Macintosh HD->ライブラリ->Python->2.7->site-packages->にファイルをコピーすれば完了です。
確認は、Pythonを対話モードで起動して、
import sys
sys.getdefaultencoding()
を実行すれば、defaultencodingを表示させることができます。utf-8になっていれば設定完了です。

<ファイル入出力のエンコード>
今回僕が躓いたのは、Excelで適当に出力したCSVファイルをMac上でのPythonで動かそうとした時です。CSVファイルは、表などを特定の文字で区切って保存する形式です。Pythonの標準モジュールCSVを使うと、簡単に読み込めます

まず、プレビューで見ても、日本語に対し、文字化けが発生しました。これは、そのCSVファイルをテキストディットで開き、何もしないまま保存すると、なおります。
見るだけならこれで十分ですが、これでは文字エンコードが何かわからなくて、プログラムで読むにはこまります。

そこで、文字コード統一のメリットを活かして、文字化けしなくなったファイルをNumbersで開き、ファイル→書き出す→CSVから、テキストエンコーディングを「Unicode (UTF-8)」を選択し、書き出します。
これで、そのまま読めるようになります。



以上書いたのは、とても基本的なことですが、プログラム(encode, decode)で処理するよりも外部で処理したほうが簡単で、コーディングがとてもしやすくなりますよ!

リストの中の文字列を表示する方法など、こちらで紹介されています→japaneseCharset

2015年1月17日土曜日

Yorufukurouで画像を投稿する



MacのTwitterクライアントとして有名なYorufukurou、使いやすいのに、全然更新されていなくて、最近では画像の投稿すらできなくなって、困っていました。

そこで調べていると、なんとサービスを自ら作っている方が・・・!

Twitpic API to twitter media upload gateway(beta)

です。

設定方法などは、作った方がリンク先で説明されています。注意点も書かれていますので、よく読んでから利用しましょう!

こういうサービスを作れるようになりたい……

2015年1月15日木曜日

Xcode 6でPythonの開発を行う(Mac)



Swiftを書いてから、統合環境Xcodeでの開発に慣れてしまい、vimやemacsが使えなくなりました・・・


PythonもXcodeで開発するための方法を示します。ただし、Pythonのインストールについては省略します

Pythonはインタープリター型の言語であるので、プログラムを逐次翻訳していきます。つまり、ほかの言語でいうコンパイルの操作が不要であることを意識しながら作業を進めましょう。

satomacoto - 「Xcode 4でPythonの開発環境を整える」
を参考にしました。
画像を多く使い、わかりやすく解説してくださっています。

pyファイルを実行するときには、
$ python (ファイルパス).py
を実行します

つまり、Xcodeのビルドボタンを押した時にこのコマンドが実行されるようにすればよいです

ファイルの作成は不要なtargetを削除して、Schemeの設定をしっかりすれば、Command Line ToolでもEmptyでもなんでもいいです。不安な方は上のリンクから参照してください。

ここでは、Xcode4と6とで見た目が違う、Schemeの設定について書きます
(僕の場合、プロジェクト名をpythontest、ファイル名はsource.pyにしました)


上のメニューのProduct→Scheme→Edit SchemeからRunタブのInfoタブをひらき、設定を画像のようにします。
"Executable"は"Other"を選択し、⇧⌘G (shift + command + g)で¥usr¥bin¥を入力して移動し、pythonを選択します。
それと、"Debug Executable"のチェックを外します。

終われば、Argumentsタブに移動します



"Arguments Passed On Launch"の"+"から
$(SOURCE_ROOT)/実行したいファイル名.py
を入力します。これがつまりコマンドライン引数になります。別の場所に.pyをおいている場合はそちらを指定します。

以上でSchemeの設定は完了です!



あとはコードとして、

print "hello world!"

とでもかいて、実行してみましょう!




ちゃんと実行できました!!

※2015/1/19追記
標準入力が動作しないことがわかりました。原因究明中です。

※2015/1/21追記
文字エンコードについて補足しました。コーディングしやすくなる方法です。
→<http://ha1f-blog.blogspot.jp/2015/01/python-with-xcode-6.html>
標準入出力については変化がありません。

2014年11月14日金曜日

Macでscilabを使う(グラフの描画)

複雑な関数のグラフを描くとき、困ります。



wolfarmなど専用のソフトを持っていれば良いですが、非常に高価で、個人で持つには難しいです。かと言って、無料版では制限が多すぎます。

そこでscilabというソフトウェアがあります。WinもMacもLinuxもここからダウンロードできます。

今回は、Macについての記事です。

まず、scilabをダウンロードして実行してみます。これで動けば記事などいりません。
僕の場合、2つほど問題がありました。

1つ目は、Yosemite版が何故かダウンロードに何度も失敗し、6度目でようやく成功しました。Yosemite以外版はすぐにダウンロードできたので、そちらを使ってもいいのかもしれませんが、何度もチャレンジしているとダウンロードできたので、数が大事です(?)

2つ目は、やっとのことでダウンロードできたにも関わらず、Java Runtime Environmentが必要とのメッセージが出てきて起動できず、これは公式ページからJavaをダウンロード&インストールしても治りません。

解決方法は、AppleのストアからJava for OSXをダウンロードすることです。(こちらのページ)

これをダウンロード&インストールすると、晴れてscilabを使えるようになります。

今回は、グラフの書き方(プログラムの書き方)については省略させていただきます。

じゃんじゃん使いましょー!


2014年10月28日火曜日

iPhoneのスクリーンを録画する ー Yosemite , iOS8

iOS 8 と Mac OSX Yosemiteがリリースされました。

様々な隠し機能が、と話題になっていますが、パズドラをしている人であれば一度はしてみたくなるのがiPhoneのスクリーンの録画です。今回はこれについて紹介します。

有料ソフトでは今まででもWi-Fi経由のものがメジャーだったようですが、今回のアップデートからは有線ながら、無料で公式に録画することができるようになりました。



方法を簡単に示します。(以下、iOS 8 と Mac OSX Yosemiteが前提となります)


1. iPhoneを接続した状態で、MacのアプリケーションメニューからQuick Time Playerを開く
2. (上のメニュー)ファイル→新規ムービー収録を選択
3. 録画ボタン横の下矢印マークをタップし、****のiPhoneを選択

これだけで接続できるので、録画ボタンを押すと録画が開始されます。

録画終了後は、忘れずにファイル→保存として、はじめて保存されます。(これをしないとせっかくとった動画も消えてしまうのでご注意を!)

とても簡単ですね!うまくいけたら、YouTubeとかにプレイ動画あげてみたいものです・・・

これだけでは音声合成などはできないのですが、方法もあるようで、詳しくはこちらのサイトにわかりやすくまとめておられました。

2014年9月14日日曜日

Windows 8 on Mac を快適に (Bootcamp)

kinect v2を使うにあたって非常に困ったのは、Windows 8以降にしか対応していないことです

いままでMacbook AirにBootcamp環境でWindows 7を構成していましたが、プロジェクトのため、windows 8.1への換装を強いられました。

未だにWindows8の操作に不慣れで使い勝手が悪いですが、なんとかなると信じて・・・

久々に再設定したので、手順を簡単にまとめておきます


<Bootcampを用いてMacにWindowsをインストールする>

必要なもの=USBメモリ、DVDドライブ

1.Bootcampアシストを起動する(システムユーティリティにある)

2.下2つ(ファイルのダウンロード、Windowsのインストール)にチェックを入れ、続行
    一時ファイルを保存するため、USBメモリを接続しておく
    ドライブにディスクを入れておく
 ダウンロードがわりと時間かかります。気長に待ちましょう。

3.そのまま流れに沿って行う



<キーボードをカスタマイズする>

・@をうてるようにする

1.コンピュータで右クリック→管理を開いて、左上からデバイスマネージャを選択し、表示させます

2.キーボード→HIDキーボードを右クリックして、「ドライバー ソフトウェアの更新」→「コンピュータを参照して~~」→「コンピュータ上のデバイス上の一覧から~」を選択します

3.「互換性のあるハードウェアを表示」のチェックを外し、「ALPS」→「ALPS Japanese USB Keyboard」を選択し、適用させます。警告は無視して大丈夫です。

4.@もうてるようになります


・英数ボタンで直接入力、かなボタンでひらがな入力になるようにする

1.Google日本語入力をインストールしていることが前提

2.IMEマークをおして、Google日本語入力をアクティブにする

3.タスクバー上の入力状況のアイコンのうえで右クリックし、オプションを表示させ、プロパティを開く

4.「一般」タブのキー設定で「カスタム」を選択し、すぐ右の編集ボタンで編集

5.左下の編集ボタンから「定義積みのキーマップからインポート」→「MS-IME」を選択

6.上のタブで「入力キー」をクリックしてソートし、意味を考えながら置き換えていく。入力キーの欄をダブルクリックしたあと、さらにクリックすれば新しく設定ウィンドウが出てくるので、設定したいキーを入力する
基本的には右側が「IME無効化」になっているところに「Muhenkan」キーを設定していけばOK

7.同じ状況に対して、同じキーが設定されている場合、片方削除する(Muhenkanキーにはもともとひらがな/カタカナ変換が対応されているので、それを削除する)

8.変換がおもいのまま!



って感じで設定してもなおあまり使いこなせない・・・


※仮想環境のWindowsのライセンスについて

今までずっとVMWare fusion(有料)を使用して、Mac上の仮想環境としてWindowsを起動させていたのですが、今回はスペックが必要なため、Bootcampを利用しました。
VMware自体、BootcampのWindowsも仮想環境として起動することができるので、またそうやって利用しようと考えていたのですが、できないことがわかりました。
Windowsのライセンスは、たとえ同じファイルであっても、Bootcampと仮想環境で使う場合は別々にライセンスが必要と発表されています。

そこまでお金出すのは・・・厳しいですね。残念です。