• 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
 
 

新しい開発環境の構築をする度に引っかかるのでメモ。 sconsを使うときに、easy_install を使ってインストールすると、SCons.Script が見つからないという感じのエラーが出るようです。

sconsのサイトからソースパッケージをダウンロードして、 setup.py を使ってインストールする。

See Also

posted by Png genki on Fri 18 Dec 2009 at 17:48

http://www.opengl.org/resources/libraries/glut.html

このあたりからソースパッケージをダウンロードし、以下の手順でbuildする。

   1  % gunzip -d -c glut-3.7.tar.gz | tar xf -
   2  % cd glut-3.7
   3  % xmkmf
   4  % make Makefiles
   5  % make includes
   6  % make depend
   7  % cd lib/glut
   8  % make

生成されたlibglut.aとヘッダファイルをコピーして完了。

   1  % cp libglut.a <prefix>/lib
   2  % cp -R ../../include/GL/ <prefix>/include/

posted by Png genki on Fri 18 Dec 2009 at 16:40

NativeClientのtrunkを使っている状況で、ImageMagickやexpatなどのライブラリをビルドして使えるようにする方法のメモです。

とりあえず、ビルド用のスクリプトは nacl_trunk/src/native_client_sdk/packages/scripts/ 以下にあります。実行すると、

   1  --prefix=nacl_trunk/src/native_client/src/third_party/nacl_sdk/mac/sdk/nacl-sdk/nacl/usr 

を指定してconfigure; make; make install したような感じでインストールされます。

posted by Png genki on Tue 15 Dec 2009 at 07:35

Chrome Extensionがリリースされるという事で、 以前作っていた GoogleDocs Outliner を一般化して、全てのWebページに アウトラインを表示するExtensionを作ってみました。

Chrome Outliner

ss0

https://chrome.google.com/extensions/detail/jlppdmdapoeahlgfmioblnpfhfgcigim

もちろん、GoogleDocsのアウトラインも表示できます。

ss0

PageActionを使っているので、残念ながら現時点では Mac版のChromeでは動かないようです(※)。次回のアップデートに期待。

※開発版のChromiumでは動きます。

posted by Png genki on Wed 9 Dec 2009 at 03:02
8th Tue

git svn branch

しばらく前にインストールしていた git-1.6.0.4 には無かった機能なのですが、最近のGit (1.6.4.4で確認) には git svn branch というSVNリポジトリのブランチを作成する機能がついているようです。

   1  % git svn branch <branch name>

これで指定したbranchがリモートで作成されます。 あとは、こんな感じでリモートトラッキングブランチをチェックアウトすればOK.

   1  % git checkout -b <branch name> <branch name> --track

便利ですね。

posted by Png genki on Tue 8 Dec 2009 at 07:43 with 2 comments

subversionをソースからビルドする場合、デフォルトのconfigurationではSSLが有効化されません。SSLが使えるようにするには、neonとsubversionの双方を--with-sslオプションをつけてビルドする必要があります。

neon

   1  ./configure --with-ssl
   2  make
   3  make install

subversion

   1  ./configure --with-ssl
   2  make
   3  make install

posted by Png genki on Mon 7 Dec 2009 at 05:17

ストレージを操作するための言語として、SQLは制約が大きすぎ、MapReduceは自由すぎるので、中間ぐらいの自由度のストレージ操作言語があると良いと思う。

GIレンダリング言語(aka GIRL)の立ち位置はそのあたりかな。

posted by Png genki on Fri 4 Dec 2009 at 05:25
23rd Mon

malloc(0)の話

malloc(0)の戻り値は、NULLもしくはサイズが0のメモリ領域へのポインタのいずれかとなっています。どちらが帰ってくるかは処理系に依存するので、一見malloc(0)を使うとプログラムの移植性を損なうような気がします。

しかし、mallocで確保された領域を realloc や free で操作する場合、reallocもfreeもいずれも、サイズが0のメモリ領域へのポインタに対する操作とNULLポインタに対する操作を許容するので、実際には問題ありません。

posted by Png genki on Mon 23 Nov 2009 at 16:05

CMakeでは、親ディレクトリで設定された変数は、デフォルトでサブディレクトリから参照出来ます。しかし、逆にサブディレクトリ内で設定された変数は、そのままでは親ディレクトリ側から参照できません。 参照するためには、以下のようにget_directory_propertyを使って明示的に読み込む必要があります。

   1  get_directory_property(VAR1 DIRECTORY src DEFINITION FOO_SRCS)

posted by Png genki on Thu 12 Nov 2009 at 08:05

ditzのサブコマンド用のZsh補完関数を作ってみました。

.ditz_completion.zsh

   1  _ditz () {
   2    compadd `ditz help | grep --color=no -o "  \([a-z-]*\):" | grep -o --color=no "[^:]*" | xargs`
   3  }
   4  
   5  compdef _ditz ditz

ついでに、ditz とtypeするのが結構大変なので

   1  alias di="ditz"

しています。

posted by Png genki on Wed 4 Nov 2009 at 02:49