田園都市技術屋online日記

アクセスカウンタ

zoom RSS TkSqliteをOSXアプリにビルド(でも日本語が… :追加)

<<   作成日時 : 2011/03/09 23:36   >>

ブログ気持玉 0 / トラックバック 1 / コメント 0

SqliteをOSXからいじるのに、GUIがやっぱり欲しい。

フリーの定番はSQLite Database Browserのようだが、今一つ使い勝手が悪い。検索していて候補に挙がったのはLitaSQLite Sorcererだが、プライマリキーに整数型の決め打だったり、nullを許さないときは初期値が必須だったり、もう一押しだったりする。 ともにAdobe Airが必要というのもちょっと引ける。  フリーで良いソフトが無いな〜と思っていた。

WindowsではTkSqliteが秀逸であるな〜と常々思っていた。 OSXでも動くらしいのだが、インストール事例がなかなか見つからないので、自分で調べてみた。

結果から言うと動かすまでに罠がかなりあるもののKitgen Build System(KBS)を使うと意外に簡単にできてしまうことがわかった。 KBS自体がtksqliteのビルドのための情報を持っているので、ほとんどおまかせでOKである。
Starpackerを使うと予備知識なしでOSXアプリケーションにできてしまうこともわかった。

以下OSXで実行ファイル形式に作るまでのメモ。要OSX開発環境。

  1. kbsのページからkbs.tclをダウンロードする。 作業用のフォルダ(ここではkbsosxとする)を一つ作って作業すれば、環境を汚さず作業できる。

  2. kbs.tclはオンラインでソースコードの取り寄せを行うが、取り寄せ先のwebサイトが現在は移動してしまっているため、このままではビルドの途中でエラーで止まってしまう。 そこで事前にテキストエディタでkbs.tclの修正を行う。 具体的にはkbs.tcl内の「http://www.equi4.com/」→「http://equi4.com/」の置き換えを実行すればよい。

  3. ここからはターミナルで作業する。ターミナルを開いてkbsosxにカレントディレクトリを移動

  4.  OSXのTcl/Tkでは64bit化が進んでないため、32bitのみのビルドにしないとsnow leopardではコンパイル中に途中でこける。 おまじないとしてターミナルで「export CFLAGS="-arch i386 "」を実行しておく。

  5. kbsでソースコードを取り寄せる。ターミナルで 「tclsh ./kbs.tcl -r sources tksqlite0.5.8」を実行するとsourcesフォルダが作成されて、その中に必要なソースコードを取り寄せてくれる。 -r を指定すると依存してるソースも取り寄せてくれる。
  6.  
  7. kbsでtclkitをビルドする。 ミソはあとでStarpackerに簡単にお世話になることができるように、tksqlite.tcl以外の必要なライブラリも1つの実行ファイルにビルドしてしまうこと。 ターミナルで「tclsh ./kbs.tcl -r -vq-bi -bi="sqlite3.6.20 tktable2.10 treectrl2.2.9" install kbskit8.5」を実行する。 ビルドには結構時間がかかる。

  8. buildDarwinフォルダが作成され、その中のbinフォルダにkbsvq8.5-biとsdx.kitが出来上がるのでkbsosxにファインダでコピーする

  9. sourcesフォルダのtksqlite0.5.8フォルダのtksqlite.tclをkbsosxにファインダでコピーする

  10. tksqliteの不具合をチョット修正。 コピーしたtksqlite.tcl中の 「ttk::_scrollbar」→「ttk::__scrollbar」にテキストエディタで修正する。(TkSqliteとTkでttk::_scrollbar関数がバッティングを起こすため)

  11. 修正したtksqlite.tclからtksqlite.kitファイルを作る。 ターミナルで「tclsh ./sdx.kit qwrap ./tksqlite.tcl 」を実行する。 ターミナルでの作業はここまで。

  12. OSXのアプリケーションバンドルにパックする。 Starpacker.appを起動して、Starkitの項目に先ほど作ったtksqlitekitを指定する。tclkitの方はotherにチェックをして、これまた先ほど作ったkbsvq8.5-biを指定する。 Create Mac OS X application packageにチェックを付けてPack..ボタンでアプリケーションを生成保存する。


以上の手順でmac版のtksqliteアプリケーションが入手できる。 難を言えば、kbsが結構な古いライブラリを材料に使っているのが気持ち悪い。 その辺は気が向いたらkbs用のパッケージを新しく作ってみようかとも思う。

3/17追加:aqua版tkがinput methodに対応してない(泣)。 日本語データ入力できない。

テーマ

関連テーマ 一覧


月別リンク

ブログ気持玉

クリックして気持ちを伝えよう!
ログインしてクリックすれば、自分のブログへのリンクが付きます。
→ログインへ

トラックバック(1件)

タイトル (本文) ブログ名/日時
プラダ メンズ
TkSqliteをOSXアプリにビルド(でも日本語が… :追加) 田園都市技術屋online日記/ウェブリブログ ...続きを見る
プラダ メンズ
2013/07/08 13:00

トラックバック用URL help


自分のブログにトラックバック記事作成(会員用) help

タイトル
本 文

コメント(0件)

内 容 ニックネーム/日時

コメントする help

ニックネーム
本 文
TkSqliteをOSXアプリにビルド(でも日本語が… :追加) 田園都市技術屋online日記/BIGLOBEウェブリブログ
文字サイズ:       閉じる