2013年4月7日日曜日

FuelPHP 1.5.2と1.5.3の差分

2013/3/8にFuelPHP 1.5.3が出てたので内容を確認してみた
セキュリティー関連の設定に変更があったようです。



手元の1.5.2とdiffしてみた。

Files fuelphp-1.5.2/docs/assets/js/combined.js
Only in fuelphp-1.5.3/fuel/app/cache: fuel
Files fuelphp-1.5.2/fuel/app/config/config.php
Only in fuelphp-1.5.3/fuel/app/logs: 2013
Only in fuelphp-1.5.3/fuel/app/views: person
Files fuelphp-1.5.2/fuel/core/classes/fuel.php
Files fuelphp-1.5.2/fuel/core/classes/security.php
Files fuelphp-1.5.2/fuel/core/config/config.php


差分確認して該当のファイルを置き換えればよさそうです。

2013年2月12日火曜日

FuelPHP 1.5.1と1.5.2の差分

FuelPHP 1.5.2が出たので内容を確認してみた。

・Hotfix release v1.5.2
・fixed autoloader not properly loading and initializing classes are an…

autoload関連のバグフィックスらしい
手元の1.5.1とdiffしてみた。

diff -qr fuelphp-1.5.1 fuelphp-1.5.2
// パスは省略
Only in fuelphp-1.5.2: .gitignore
Only in fuelphp-1.5.2: .gitmodules
Only in fuelphp-1.5.2/docs: .gitignore
docs/assets/js/combined.js
docs/installation/download.html
fuel/core/base.php
fuel/core/bootstrap.php
fuel/core/classes/autoloader.php
fuel/core/classes/session/driver.php
fuel/packages/log/classes/log.php


アップデートした方がよさそう。
coreとlog.phpはコピーしておこう。

2012年11月19日月曜日

MAMPにApacheモジュール追加してみた

ことの始まりは、MAMPのapacheにapxsコマンドでモジュール追加しようとしたら、config_vars.mkが無いという警告が出てビルドできないじゃないですか・・・。
というわけで、メモ

config_vars.mkが無いよ・・・

cannot open /Applications/MAMP/Library/build/config_vars.mk: No such file or directory at /Applications/MAMP/bin/apache2/bin/apxs line 217.


そんなわけで、いろいろ試したところapacheをソースからビルドして、
関連ファイルをコピーという、結局MAMPを使う意味が半減する罠にはまりました。

MAMPのapacheバージョン確認



/Applications/MAMP/bin/apache2/bin/httpd -v

Server version: Apache/2.2.22 (Unix)
Server built: Jul 4 2012 16:45:07


Apacheのソースからビルド



先ほど確認したバージョンと同じソースコードをダウンロードする

cd /usr/local/src
curl -L -O http://archive.apache.org/dist/httpd/httpd-2.2.22.tar.bz2
tar jxfv httpd-2.2.22.tar.bz2
cd httpd-2.2.22
./configure --enable-so --prefix=/tmp/httpd-2.2.22


errorが出ております・・・

configure: error: in `/usr/local/src/httpd-2.2.22':
configure: error: C compiler cannot create executables
See `config.log' for more details.


config.log見ると、ccが無くてNo such file or directoryが多数あるんですが、

./configure: line 4709: /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.8.xctoolchain/usr/bin/cc: No such file or directory


MountainLionだから?かわかりませんが、パスが変わったみたいですね。
XcodeDefault.xctoolchainというパスがあったのでとりあえずシンボリックリンク張って対応

cd /Applications/Xcode.app/Contents/Developer/Toolchains
sudo ln -s XcodeDefault.xctoolchain OSX10.8.xctoolchain


気を取り直して再実行

cd /usr/local/src/httpd-2.2.22
./configure --enable-so --prefix=/tmp/httpd-2.2.22
make
make install


必要なファイルおよびディレクトリーをコピーします。

cp -r /tmp/httpd-2.2.22/build /Applications/MAMP/Library/
cp -r /tmp/httpd-2.2.22/include /Applications/MAMP/Library/


必要に応じてconfig_vars.mkの中身のパスを書き換え

cd /Applications/MAMP/Library/build
perl -i -p -e 's/\/tmp\/httpd-2.2.22/\/Applications\/MAMP\/Library/g' *

環境により微調整が必要です。
vi /Applications/MAMP/Library/build/config_vars.mk
exp_sysconfdir = /Applications/MAMP/conf/apache
sysconfdir = /Applications/MAMP/conf/apache


これでApacheモジュール追加できるようになりました。

参考



  • http://zuzara.com/blog/2010/04/08/compiling-php5-3-2-on-mamp/

  • https://groups.google.com/forum/#!msg/phusion-passenger/5trJ1eoN6cE/phDt_M-UKIYJ
  • 2012年10月15日月曜日

    gettextインストールするのにこんなに時間かかるはずがない for MacPorts - その後cmakeも

    久しぶりにosxにMacPortsでphpをインストールしようとしたら、
    なぜかgettextがインストールできないすてきな罠に出会いましたのでメモを残します。

    環境
    OSX 10.8 (Mountain Lion)
    MacPorts 2.1.2

    お急ぎの方に先に結論を申し上げると、次の2行でインストールできました。

    export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework
    port install gettext

    ログなど


    sudo port install gettext
    途中省略
    ---> Fetching archive for gettext
    ---> Attempting to fetch gettext-0.18.1.1_2.darwin_12.x86_64.tbz2 from http://packages.macports.org/gettext
    ---> Attempting to fetch gettext-0.18.1.1_2.darwin_12.x86_64.tbz2 from http://mse.uk.packages.macports.org/sites/packages.macports.org/gettext
    ---> Attempting to fetch gettext-0.18.1.1_2.darwin_12.x86_64.tbz2 from http://lil.fr.packages.macports.org/gettext
    ---> Fetching distfiles for gettext
    ---> Attempting to fetch gettext-0.18.1.1.tar.gz from ftp://ftp.dti.ad.jp/pub/GNU/gettext
    ---> Verifying checksum(s) for gettext
    ---> Extracting gettext
    ---> Applying patches to gettext
    ---> Configuring gettext

    このまま数時間放置していたのに状況変わらず・・・
    CPU利用率を見ても動いている気配がない・・・
    ターミナルのメニューにjavacの文字が見えているので少し調べると

    https://trac.macports.org/ticket/34221
    どうもJAVA_HOME設定するとよいらしい。

    export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework
    port install gettext
    ---> Computing dependencies for gettext
    ---> Configuring gettext
    ---> Building gettext
    ---> Staging gettext into destroot
    ---> Installing gettext @0.18.1.1_2
    ---> Activating gettext @0.18.1.1_2
    ---> Cleaning gettext
    ---> Updating database of binaries: 100.0%
    ---> Scanning binaries for linking errors: 100.0%
    ---> No broken files found.

    インストールできましたよ。

    参考まで

    ちなみにMac Developer Libraryを参考にした下記のパスでは動作しませんでした。


    export JAVA_HOME=`/usr/libexec/java_home`

    java_homeコマンドで設定されたパス
    echo $JAVA_HOME
    /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home

    その後cmakeもインストールできなかった・・・

    次のようにmysql5.5をインストールしようとしたが、cmakeのビルドで止まり同様に動かない様子。

    sudo port install mysql55-server

    こちらもJAVA_HOMEと関係しているか不明のままですが、
    次の手順でいったんcmakeを削除してから再度インストールできました。

    参考
    http://stackoverflow.com/questions/5576785/problem-installing-cmake-with-macports


    sudo port clean cmake
    sudo port install cmake

    2012年10月1日月曜日

    そろそろ通信回線について言っておくか



    iPhone5の到来によりコスト配分が変わったので、
    通信回線について言っておきます。

    通信回線
    以下、最近使っていた通信回線ですが、iPhone5が加わったのでこれを整理したいと思います。




































    通信回線電波状況通信速度コストコメント
    docomo 3G◎◯◯バランスが良い。
    いろんな場所で使える安心のドコモ。
    IIJmio◎×◎月額945円でdocomo回線なのが最大の魅力。
    通信速度が128kbpsなのでメールとtwitterだけなど
    使うものを限定するかWifiと併用すればコスト面で最強。
    オプションでLTEも使える。
    WiMAX△◎◯テザリングで通信データ量の上限がないのはこれだけ。
    PCを使う場合はとくに制限がないのは安心です。
    建物に囲まれた場所や地下などで
    使えないことが多い。
    au LTE◎(3Gも含む)◎△iPhone5を購入しなければ使うことはないと思いますが、
    LTEでテザリングできるのは魅力です。
    まだLTEが普及していないので来年以降に期待。


    docomo 3G


    とにかくバランスがいいけど、これと言う売りがないのがドコモです。
    あえて言うなら地方へ行った時の安心感ですね。
    LTE(Xi)への移行はコスト面でデメリットが大きいので、もう少しがんばってほしい。
    今後は、できるだけ安く運用できるようにプランやオプションの見直しを行い、
    電話、メールなどはすべてiPhone5に転送するように設定。
    塩漬け状態ですね。

    IIJmio


    私の場合は、ウェルカムパック for イオンを購入しました。
    通信速度が128kbspなので用途が限られます。
    追加料金でLTEも使えるのですが、コストを下げるがの目的であれば使わないと思います。
    自宅、職場、駅、カフェなどでWifiが使えればこれでも十分ですね。
    テザリングはWifiルータによっては使えるらしいですが、
    128kなのであまり期待しないほうがよいかと思います。
    Wifiと併用してAndroid開発端末用かな。

    WiMAX


    通信制限なくテザリングできるのはこれだけですね。
    コスト面でもLTEと比べると安いので1年くらいお世話になりました。
    ビルで囲まれた場所や地下で使えなかったことが残念です。
    今後はLTEに設備投資していくと思われるので、どう差別化していくのかが心配です。
    iPhone5を購入したため手放すことにしましたが、今後は容量を気にする必要があるのでそれが気がかりです。

    au LTE


    auに限らずLTEの料金は高いですね。これはどのキャリアでも言えるのですが、
    LTEで通信できる場所はまだ限られているので割高感は否めません。
    良くも悪くもiPhone5のおかげでLTEの競争が激しくなるので、
    来年はLTEがどこでも使えるようになって安くなることを祈ります。
    二年縛りですが、メインのdocomoは塩漬けで残しているので、
    より良いサービスがあればすぐに解約します。

    iOS6の地図で騒がれているAppleですが、LTEだけ見てもiPhoneの影響は大きいですね。
    NFCもつけてほしかったな・・・。

    最後にこれが言いたかった。
    docomoさん、応援してます!
    ユーザーの声をもっと聞いてほしいな。

    2012年8月27日月曜日

    MacPortsインストール・アンインストール for OSX 10.8 (Mountain Lion)

    たまにしかやらないのでメモ

    MacPorts参考


  • MacPorts
  • MacPorts Guide

  • 事前準備


  • Xcode をApp Storeでインストールする
  • Command Line Tools (OSX Mountain Lion) for Xcodeをインストールする

  • MacPortsをソースコードからインストールする


  • ファイルの置き場所
  • curl -O https://distfiles.macports.org/MacPorts/MacPorts-2.1.3.tar.bz2
    tar jxvf MacPorts-2.1.3.tar.bz2
    cd MacPorts-2.1.3
    ./configure && make && sudo make install
    cd ../
    rm -rf MacPorts-2.1.3
    export PATH=/opt/local/bin:/opt/local/sbin:$PATH
    sudo port -v selfupdate
    

    MacPortsアンインストール

    sudo port -fp uninstall installed
    sudo rm -rf \
    /opt/local \
    /Applications/DarwinPorts \
    /Applications/MacPorts \
    /Library/LaunchDaemons/org.macports.* \
    /Library/Receipts/DarwinPorts*.pkg \
    /Library/Receipts/MacPorts*.pkg \
    /Library/StartupItems/DarwinPortsStartup \
    /Library/Tcl/darwinports1.0 \
    /Library/Tcl/macports1.0 \
    ~/.macports
    

    上記のコマンドをワンライナーで実行する いずれも管理者権限で実行します。
    インストール
    curl https://raw.github.com/rx93/install/master/bin/macports.sh | env VER=2.1.3 sh
    
    アンインストール
    curl https://raw.github.com/rx93/install/master/bin/macports_uninstall.sh | sh
    

    残暑お見舞い申し上げます

    残暑お見舞い申し上げます。

    少しずつ秋が近づいているような気がすると思えば、
    連日の猛暑でそんなことも吹き飛んでいますね。
    たぶん毎年思うのですが、残暑って年々厳しくなっているような気がします。

    もうすぐ9月ですが、iPhoneやらKindleやらいろいろあるのと、
    個人的にも忙しくなりそうな予感ですので、体には気をつけたいものです。

    最近、何をしているかよく聞かれるのですが、
    先月までドラゴンズドグマで今月からドラクエ10・・・ではなくて・・・、
    やっと近々お話ができるところまできましたので、
    来月あたりご挨拶に伺おうと思っております。

    仕事面では、これまではサーバサイドの開発を極めようと精進してきましたが、
    直近は主にクライアントサイドの技術を勉強しています。
    クライアントサイドの技術と言っても広範囲に及ぶのですが、
    まずは本業のプログラミングからで、地味にJavaScript、Obejctive-Cの勉強などをしています。
    また、サーバサイドですが、Rubyも始めました。
    今後も少しでも誰かの手助けになれるような技術を身につけようと思います。

    業界によっては夏期に夏期休暇を取れない方もいらっしゃると思いますが、
    夏の疲れには、充分にご注意ください。

    今後ともよろしくお願い申し上げます。