2009年8月アーカイブ

ls ~

| コメント(0) | トラックバック(0)
Mac OS X 10.5.8 / 1.8GHz Intel Core 2 Duo / Memory 2GB

% ls ~
Desktop/        Library/        Music/          Sites/          public_html/    work/
Documents/      Mail/           Pictures/       dev/            shipit-dist/
Downloads/      Movies/         Public/         local/          tmp/
tmpの中はカオスです。 あと仕事系は work/ に、自分で小ネタとかは dev/ に収めてます。
% ls ~/dev
AppleScript/    apache/         c/              elisp/          github/         quicksilver/
SIMBL/          appengine/      chumby/         flashlite/      iPhoneApp/      ruby/
actionscript/   arduino/        coderepos/      flex/           oauth/
android/        as2/            ec2/            gisty/          perl/
こっちもややカオスですね。
自分用メモ

共有メモリ
→複数のプロセスやスレッドから扱うことのできるメモリ空間のこと。本当であれば後述するsemaphoreやmutexで排他処理をすべきだが、しなくても大丈夫という報告もある。要確認。
semaphore(セマフォ)
→排他処理のこと。ある処理をする際に、セマフォのフラグを取得したプロセス(又はスレッド)のみが扱うことができるようにする機構で、そのフラグの数は1から設定することが可能。
mutex(ミューテックス)
→排他処理のこと。簡単に言うと先のセマフォのフラグを1に設定したのと同じ。
mod_rounded_cornersという角丸を生成するための
Apacheモジュール(Apache2系用)を作りました。

というか会社のなんかのミーティングで誰かが
言ってたので勉強がてら作ってみた。

http://github.com/yoshiki/mod_rounded_corners/tree/master

インストールは下記のようにすればOK。

% autoconf
% ./configure
% make
# make install

設定はhttpd.confに

<VirtualHost *:80>
ServerName rounded-corners.example.com

<Loction />
SetHandler rounded-corners
</Location>
</VirtualHost>

て感じで書けばOK。
今のところはLocationが「/」以外だとうまく動かないよ。

で、Apacheを再起動したら

http://rounded-corners.example.com/ffffff/000000/20.gif

にアクセスすると、bgが黒(000000)でfgが白(ffffff)の
半径20pxのGIF画像が生成されるはず。

これをCSS Spriteでごにょれば角丸なテーブルとかに
使えるような使えないような。

あまり処理速度とか考えずに作ったんですが、
前段にプロキシとかかませてキャッシュしてやれば
ちょっとサイトでも使えなくもない。

Apacheモジュールの練習で作った簡単な物なので
煮くなり焼くなり、ご自由にどうぞ。

TODO:
・bgを透明化できるようにする
・「/」じゃなくても使えるようにする
・blah blah blah

Androidの開発環境を構築して、HelloAndroidするまで。

  1. JDK 6、antをインストール

    Mac OS XだとDeveloper Tools入れてると
    Javaとantは既にインストールされてるかも?


  2. Android SDKをインストール(といっても解凍して適当な場所に置くだけ)

    以下のようにtools/をPATHに追加(↓はtcsh用のもの)。
    .bashrcとか.tcshrcとかに書いとけばOK。
    あと場合によってはJava用にCLASSPATHの設定が必要かも。
    % setenv PATH ${PATH}:/path/to/android-sdk-linux_x86-1.5_r3/tools

  3. avdを作成(なんかよくわからんけど、開発環境のプロファイルっぽい)

    なんか聞かれるけど、とりあえずデフォルトの[no]のままでいいのでリターン
    % android create avd --target 2 --name my_avd
    Android 1.5 is a basic Android platform.
    Do you wish to create a custom hardware profile [no]
    Created AVD 'my_avd' based on Android 1.5

    これで環境は整った。

  4. HelloAndroidプロジェクトを作成

    % android create project --target 2 --path HelloAndroid --activity HelloAndroid --package com.example.helloandroid

  5. なにもコードは付け加えないで、とりあえずantでビルド(デバッグモード)

    % ant debug
    Buildfile: build.xml
          [setup] Project Target: Android 1.5
          [setup] API level: 3
    
      dirs:
           [echo] Creating output directories if needed...
          [mkdir] Created dir: /path/to/HelloAndroid/bin/classes
    
      resource-src:
           [echo] Generating R.java / Manifest.java from the resources...
    
      aidl:
           [echo] Compiling aidl files into Java classes...
    
      compile:
          [javac] Compiling 2 source files to /path/to/HelloAndroid/bin/classes
    
      dex:
           [echo] Converting compiled files and external libraries into bin/classes.dex...
    
      package-resources:
           [echo] Packaging resources
       [aaptexec] Creating full resource package...
    
      debug:
      [apkbuilder] Creating HelloAndroid-debug.apk and signing it with a debug key...
      [apkbuilder] Using keystore: /home/username/.android/debug.keystore
    
      BUILD SUCCESSFUL
      Total time: 7 seconds

    最近のマシンだったら数秒でビルドが完了するはず。

  6. エミュレーターを起動

    % emulator -avd my_avd &

    A N D R O I D _
    って画面に出る。

    で、しばらくすると(だいぶ待ちます)、Androidが起動します。
    最終的にデスクトップっぽいのが表示されるまで待つ。
    (マシンによっては5分とかかかりますので辛抱強く待ちます…)

    ちなみに自分はnetbookでやったんですが、ウィンドウの大きさがデカすぎて
    縦が画面から飛び出ちゃったのですが下記のように「-scale」って
    オプションを指定することでウィンドウの大きさを変えられます。
    % emulator -avd my_avd -scale 0.8 &


    起動するとアラートでるので「Force close」で無視する android_sdk01.png

  7. エミュレータ上のAndroidにHelloAndroidをインストール。

    % adb install bin/HelloAndroid-debug.apk


    HelloAndroidがインストールされた android_sdk02.png

  8. あとはAndroid上でアプリ実行すると

    文字が表示された android_sdk03.png

エミュレータが激重以外はすんなりここまでできる。
エミュレータだけはどうにかして欲しいです。ほんとに。
YAPC::Asia 2009のチケット販売が開始したようです。

詳しくはこちらをご覧になってみてください。

受領書に配送先って書いてあるんだけど、
なんか配送されてくるのかしら。
間違って旧住所で購入しちゃったのでちょっとドキドキしている。

検索

広告

月別 アーカイブ

OpenID対応しています OpenIDについて
Powered by Movable Type 5.12