‘技術メモ’ カテゴリーのアーカイブ
Boost.勉強会 #4 に行ってきました。
2011 年 2 月 26 日 土曜日
CentOS5 で最新の DBD::mysql を導入する
2011 年 1 月 11 日 火曜日
あけましておめでとうございます。またしてもブログがおざなりになってしまいました… orz
直接お金になる仕事ではないのですが、ここしばらく、某所の BBS を開発するため、 Perl をいじっております。正直、 .NET や JavaScript 、ケータイアプリの開発なんてことばかりやっておりますと、たまにいじる Perl が楽しくて楽しくて、ついついこっちばかりやってしまう、という日々がしばらく続いております。いかんですな。
で、こちらの開発がとりあえずキリの良いところまで進んだので、一旦お蔵入りにしようと思うのですが (といっても年単位で寝かせるわけではないですが)、その前にこれに関連する技術的なメモをしたためておこうかと思うのであります。
作っているのは、さくらの共有レンタルサーバーサービス上で動作する CGI なのですが、レンタルサーバの性質上、 CPAN から最新のモジュールを引っ張ってくることが出来るので、割とモダンチックなスタイルで開発できるのが強みだったりします。
ただ、レンタルサーバ上で動作確認する場合、 500 エラーになってもエラーログをすぐには参照できないので (さくらにメールで問い合わせすることは可能らしいですが…)、弊社サーバー上にも設置し、動作確認するようにしました。
弊社サーバーはさくらの VPS を利用しており、 CentOS5 で動いています。基本的にはソフトウェアの導入は yum から行っているのですが、その場合、 DBD::mysql を始めとした多くの CPAN モジュールが、かなり古いバージョンで導入されることになります。特に、 DBD::mysql は 3.0007 と極めて古く、Unicode を扱うのに必要不可欠な接続時オプション mysql_enable_utf8 が使えないといった弊害がありました。他にも、 DateTime がタイムゾーンを理解できないなど、いろいろと弊害があったため、 CPAN から最新版をインストールしようかと試みたのですが、そのままではほとんどのモジュールについてコンパイルが通らないなど、cpan コマンドからではインストールが出来ませんでした。
(続きを読む…)
Apache 周りの設定と、WebDAV 設定
2010 年 11 月 5 日 金曜日
会社サーバー絡みで最近行った設定に関するメモです。
(続きを読む…)
会社サーバーをさくらの VPS に移転しました。
2010 年 10 月 15 日 金曜日
会社サーバーとして、これまでファーストサーバさんのデルタ1 というサービスを利用させて頂いていたのですが、のっぴきならない事由 (ごくごく経済的な事情 T-T) により、さくらインターネットさんのさくらのVPS というサービスに乗り換えることにしました。そして、その移転作業が完了致しましたので、ご報告申し上げます。
と、いっても、現状何かサービスを展開しているわけでも無し、本ブログもこれまで通りそのまま閲覧できますので、「だから何?」とか言われちゃうと困ってしまうわけですが…。
今回の移転作業に於きましては、すべての作業内容を逐次メモに取り、その内容を公開しております。弊社のように、既に他社の専用サーバや VPS を用いてサーバーを構築しているものの、とっても安価でよさげなさくらの VPS に移行したいなぁなどとお考えの方々に、少しでも参考になれば幸いです。
UTF-8 もイマイチだが…
2010 年 9 月 22 日 水曜日
UTF-32 が内部文字列に使えないことがわかったので、 UTF-8 を内部文字列に使用するというルールで libiconv によるエンコーディング操作と Boost.Regex による正規表現の両方を同時に試すサンプルを作成してみました。
Makefile は作ってません\(^O^)/。試してみたい人は頑張ってコンパイルしてねw
$ g++ -std=c++0x -o regex-test regex-test.cpp EncodeString.cpp -lboost_regex
まともな環境 (Linux + GCC4.5 とか) なら上記コマンドで通るはず。libiconv を (glibc に上書きする形で) インストールしている場合は -liconv を末尾に入れる必要があるかも。そして MinGW を使う場合は更にもう一工夫必要かも (((;/^^)/
(続きを読む…)
char32_t だと regex が使えない
2010 年 9 月 22 日 水曜日
C++0x では UCS に対応し、専用の型やリテラルの記法が導入されました。その関係で、以下の点について調査を行っていました。
- C++0x で UCS を UTF-32 として扱う型
char32_t,u32stringおよびリテラルU"..."と、 libiconv の UCS-4-INTERNAL との間に互換性はあるか。 - C++0x で新たに追加された正規表現ライブラリ
<regex>は利用可能か。 <regex>が利用できない場合、 Boost.Regex を用いて UTF-32 文字列を処理することは可能か。
これらの調査は、すべて otoco のコアデータを扱うプログラム内で内部文字列に UTF-32 を採用することを前提としたものでした。
(続きを読む…)
Boost.勉強会 #2 に参加しました。
2010 年 9 月 12 日 日曜日
実に楽しいイベントでした。 5時間ほぼぶっ通しだったのでさすがにくたびれましたが… (^_^;A
自分なりにメモしたノートを公開していますので、よかったら復習にご活用ください。かなり荒いメモですが…。
(続きを読む…)
MinGW のインストール方法がガラッと変わっていた (と思ったら元に戻っていた?) 件
2010 年 9 月 2 日 木曜日
MinGW に GCC 4.4.0 を導入する
2010 年 8 月 31 日 火曜日
libiconv で文字セット自動認識
2010 年 3 月 3 日 水曜日
ご無沙汰ぶりです…。
以前、wchar_t はどうにも使い物にならないからどうしよう、といった記事を書いたのですが、その続きのお話です。
表題の通りで、 libiconv を用いて文字セットを自動認識する処理のサンプルを書いてみました。詳しい経緯はTicket 内で逐次コメントしています。
(続きを読む…)