<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>開発 on What's done is done</title><link>https://igawa.io/tags/%E9%96%8B%E7%99%BA/</link><description>Recent content in 開発 on What's done is done</description><generator>Hugo</generator><language>ja</language><lastBuildDate>Sat, 12 Mar 2011 06:57:00 +0900</lastBuildDate><atom:link href="https://igawa.io/tags/%E9%96%8B%E7%99%BA/index.xml" rel="self" type="application/rss+xml"/><item><title>「おはツイ」アプリ(twicca plugin)公開しました</title><link>https://igawa.io/posts/2011/03/%E3%81%8A%E3%81%AF%E3%83%84%E3%82%A4%E3%82%A2%E3%83%97%E3%83%AAtwicca-plugin%E5%85%AC%E9%96%8B%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F/</link><pubDate>Sat, 12 Mar 2011 06:57:00 +0900</pubDate><guid>https://igawa.io/posts/2011/03/%E3%81%8A%E3%81%AF%E3%83%84%E3%82%A4%E3%82%A2%E3%83%97%E3%83%AAtwicca-plugin%E5%85%AC%E9%96%8B%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F/</guid><description>&lt;p&gt;「おはツイ」というアプリ(twicca plugin)を公開しました。
PC:
h&lt;a href="//market.android.com/details?id=org.orzlabs.android.wokeup"&gt;ttps://market.android.com/details?id=org.orzlabs.android.wokeup&lt;/a&gt;
Android:
&lt;a href="//details?id=org.orzlabs.android.wokeup"&gt;market://details?id=org.orzlabs.android.wokeup&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;いつも「おはよー #5ji
#ohayo」などのツイートは手入力していたのですが、
何となく面倒になってきたので、プラグインを作ってみました。&lt;/p&gt;
&lt;p&gt;フォーマットは、java.util.Formatterの書式を使用して変更できるので、
例えば、
&amp;ldquo;おはよー。 #ohayo #hayaoki #%tkji %1$tTなう&amp;rdquo;
と、設定すれば、今が6:53:48であれば、
&amp;ldquo;おはよー。 #ohayo #hayaoki #6ji 6:53:48なう&amp;rdquo;
というメッセージがtwiccaツイートに入力されます。&lt;/p&gt;
&lt;p&gt;設定は、twiccaの
MENU -&amp;gt; その他 -&amp;gt; 設定 -&amp;gt; プラグイン設定 -&amp;gt;
ツイート編集プラグイン -&amp;gt; おはツイ -&amp;gt; ツイートフォーマット
で、変更できます。
設定を変更して、エラーが出たり、よくわからなくなってしまったら、
MENU -&amp;gt; その他 -&amp;gt; 設定 -&amp;gt; プラグイン設定 -&amp;gt;
ツイート編集プラグイン -&amp;gt; おはツイ -&amp;gt; 設定をリセット
で、元に戻せます。&lt;/p&gt;
&lt;p&gt;まだまだ至らない点が多々ありますが、生暖かい目で見守ってください。
何か、気づいた点などありましたら、お気軽にコメントいただければ幸いです。&lt;/p&gt;</description></item><item><title>Ubuntu(10.10)で最新Kernelビルド</title><link>https://igawa.io/posts/2011/01/ubuntu1010%E3%81%A7%E6%9C%80%E6%96%B0kernel%E3%83%93%E3%83%AB%E3%83%89/</link><pubDate>Sat, 22 Jan 2011 07:30:00 +0900</pubDate><guid>https://igawa.io/posts/2011/01/ubuntu1010%E3%81%A7%E6%9C%80%E6%96%B0kernel%E3%83%93%E3%83%AB%E3%83%89/</guid><description>&lt;p&gt;UbuntuでKernelをビルドしたくなり、そのときのメモ。
&lt;a href="http://dogmap.jp/2009/06/19/rebuild-kernel/"&gt;http://dogmap.jp/2009/06/19/rebuild-kernel/&lt;/a&gt;
を、参考に（ほぼそのままですが）しました。&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;/*** カーネル再構築に必要なパッケージをインストール ***/
$ sudo apt-get install build-essential
$ sudo apt-get install kernel-package libncurses5-dev libqt3-mt-dev
$ sudo apt-get install git git-core
$ sudo apt-get install fakeroot
/*** カーネルソースをインストールして展開 ***/
$ mkdir ~/src; cd src
$ git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
/*** .config ファイルの作成 ***/
$ cd linux-2.6
$ cp /boot/config-2.6.35-xx-generic .config
/*** 好きなconfigをONにする。今回は、LGUESTと
例のミラクルパッチwをONにしてみた
http://gihyo.jp/admin/clip/01/linux_dt/201011/18
***/
$ make menuconfig
/*** カーネルのリビルド ***/
$ fakeroot make-kpkg clean
$ fakeroot make-kpkg --initrd --revision=.20110121 kernel_image kernel_headers
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;今はここまで。これが終わったら、以下を実行予定。&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;/*** .deb ができるので dpkg でインストール ***/
$ cd ..
$ dpkg -i linux-image-2.6.38.xx_20110121_x86.deb
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;# スクリプト化しよう。。&lt;/p&gt;
&lt;p&gt;(2011/01/30追記)だったが、うまくいかなかった。。が、
試行錯誤し、以下のようなパッチをあててなんとかできるようになった。&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;--- /usr/share/kernel-package/ruleset/kernel_version.mk.orig 2008-05-02 07:06:28.000000000 +0200
+++ /usr/share/kernel-package/ruleset/kernel_version.mk 2010-07-08 00:02:45.316669641 +0200
@@ -62,7 +62,7 @@
@echo &amp;quot;$(strip $(EXTRAVERSION))&amp;quot;
debian_LOCALVERSION:
- @echo $(if $(strip $(localver-full)),&amp;quot;$(strip $(localver-full))&amp;quot;, &amp;quot;$(strip $(LOCALVERSION))&amp;quot;)
+ @./scripts/setlocalversion
debian_TOPDIR:
# 2.6 kernels declared TOPDIR obsolete, so use srctree if it exists
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;参考サイト：&lt;a href="http://d.hatena.ne.jp/kinneko/20110111/p53"&gt;http://d.hatena.ne.jp/kinneko/20110111/p53&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Simple Massager v1.1.1 released!</title><link>https://igawa.io/posts/2010/10/simple-massager-v111-released/</link><pubDate>Fri, 29 Oct 2010 05:19:00 +0900</pubDate><guid>https://igawa.io/posts/2010/10/simple-massager-v111-released/</guid><description>&lt;p&gt;&lt;a href="//details?id=org.orzlabs.android.massage"&gt;Simple Massager
v1.1.1&lt;/a&gt;をリリースしました。
v1.1.1:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;画面表示をよりシンプルにわかりやすくしたつもりです。
もし、バグを見つけたり、ご意見などありましたら、
下記のgithub
ウェブサイトでその問題点等の書き込みをしてくれると嬉しいです♪
&lt;a href="http://github.com/masayukig/Simple-Massager/issues"&gt;http://github.com/masayukig/Simple-Massager/issues&lt;/a&gt;
ダウンロードは、以下を読み取っても可能です。
&lt;img alt="picture" loading="lazy" src="https://masayukig.files.wordpress.com/2010/10/47385-qrcode.gif"&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Androidアプリを作って公開してみた - Simple Massager</title><link>https://igawa.io/posts/2010/10/android%E3%82%A2%E3%83%97%E3%83%AA%E3%82%92%E4%BD%9C%E3%81%A3%E3%81%A6%E5%85%AC%E9%96%8B%E3%81%97%E3%81%A6%E3%81%BF%E3%81%9F-simple-massager/</link><pubDate>Wed, 13 Oct 2010 05:59:00 +0900</pubDate><guid>https://igawa.io/posts/2010/10/android%E3%82%A2%E3%83%97%E3%83%AA%E3%82%92%E4%BD%9C%E3%81%A3%E3%81%A6%E5%85%AC%E9%96%8B%E3%81%97%E3%81%A6%E3%81%BF%E3%81%9F-simple-massager/</guid><description>&lt;p&gt;初めて、Androidアプリを作って公開してみた。
&amp;ldquo;Simple Massager&amp;rdquo;
というアプリです。&lt;/p&gt;
&lt;p&gt;機能は非常に単純で、&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;振動開始・停止&lt;/li&gt;
&lt;li&gt;ランダム振動・連続振動の選択&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;が出来るのみです。&lt;/p&gt;
&lt;p&gt;最大の欠点は、
「デバイスの振動が弱すぎてほとんど使いものにならない」
というところですw&lt;/p&gt;
&lt;p&gt;次のアプリのアイデアもあるので、それの開発に着手したいと思います。&lt;/p&gt;
&lt;p&gt;なお、ソースコードは、以下で公開しています。
&lt;a href="http://github.com/masayukig/Simple-Massager"&gt;http://github.com/masayukig/Simple-Massager&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;英語版ブログは&lt;a href="http://blog.orzlabs.org/"&gt;http://blog.orzlabs.org/&lt;/a&gt;&lt;/p&gt;</description></item><item><title>ssh git@github.comで「Agent admitted failure to sign using the key. 」と なったら...</title><link>https://igawa.io/posts/2010/10/ssh-git@githubcom%E3%81%A7agent-admitted-failure-to-sign-using-the-key-%E3%81%A8-%E3%81%AA%E3%81%A3%E3%81%9F%E3%82%89/</link><pubDate>Mon, 11 Oct 2010 05:49:00 +0900</pubDate><guid>https://igawa.io/posts/2010/10/ssh-git@githubcom%E3%81%A7agent-admitted-failure-to-sign-using-the-key-%E3%81%A8-%E3%81%AA%E3%81%A3%E3%81%9F%E3%82%89/</guid><description>&lt;p&gt;ssh &lt;a href="mailto:git@github.com"&gt;git@github.com&lt;/a&gt;で「Agent admitted failure to sign using the key.
」となったら、&lt;/p&gt;
&lt;p&gt;&lt;code&gt;ssh-add ~/.ssh/id_rsa&lt;/code&gt;
と、するとうまくいくかもしれない。&lt;/p&gt;
&lt;p&gt;参考サイト：&lt;a href="http://ripan27.wordpress.com/2010/04/01/ssh-gitgithub-com-agent-admitted-failure-to-sign-using-the-key-permission-denied-publickey/"&gt;http://ripan27.wordpress.com/2010/04/01/ssh-gitgithub-com-agent-admitted-failure-to-sign-using-the-key-permission-denied-publickey/&lt;/a&gt;&lt;/p&gt;</description></item><item><title>LinuxにXperiaをUSBデバッグモードで接続する</title><link>https://igawa.io/posts/2010/10/linux%E3%81%ABxperia%E3%82%92usb%E3%83%87%E3%83%90%E3%83%83%E3%82%B0%E3%83%A2%E3%83%BC%E3%83%89%E3%81%A7%E6%8E%A5%E7%B6%9A%E3%81%99%E3%82%8B/</link><pubDate>Sun, 03 Oct 2010 06:16:00 +0900</pubDate><guid>https://igawa.io/posts/2010/10/linux%E3%81%ABxperia%E3%82%92usb%E3%83%87%E3%83%90%E3%83%83%E3%82%B0%E3%83%A2%E3%83%BC%E3%83%89%E3%81%A7%E6%8E%A5%E7%B6%9A%E3%81%99%E3%82%8B/</guid><description>&lt;p&gt;以下、URLの情報を参考に、XperiaをUSBデバッグモードでLinux(Fedora13-2.6.36-rc6-sandbox-00084-gc6ea21e)へ接続してみました。&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.adakoda.com/android/000242.html"&gt;http://www.adakoda.com/android/000242.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://salvan-devmemo.blogspot.com/2010/04/ubuntu-1004xperiausb-debug-mode.html"&gt;http://salvan-devmemo.blogspot.com/2010/04/ubuntu-1004xperiausb-debug-mode.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.eclipse.org/"&gt;Eclipse&lt;/a&gt;と&lt;a href="http://developer.android.com/sdk/"&gt;Android
SDK&lt;/a&gt;は、インストール済みが前提。&lt;/p&gt;
&lt;p&gt;で、まずは、Xperia側の設定から。&lt;/p&gt;
&lt;p&gt;ホーム画面等から、
[設定]-[アプリケーション]-[提供元不明のアプリにチェック]-[開発]-[USBデバッグにチェック]
&lt;a href="http://www.flickr.com/photos/masayun/5045424574/" title="setting by masayukig, on Flickr"&gt;&lt;img alt="setting" loading="lazy" src="http://farm5.static.flickr.com/4090/5045424574_ebae73ab4d.jpg"&gt;
&lt;/a&gt;
&lt;a href="http://www.flickr.com/photos/masayun/5045390040/" title="application by masayukig, on Flickr"&gt;&lt;img alt="application" loading="lazy" src="http://farm5.static.flickr.com/4087/5045390040_c45179feb4.jpg"&gt;
&lt;/a&gt;
&lt;a href="http://www.flickr.com/photos/masayun/5044805141/" title="unknown_appli by masayukig, on Flickr"&gt;&lt;img alt="unknown_appli" loading="lazy" src="http://farm5.static.flickr.com/4154/5044805141_a7dc45a6d0.jpg"&gt;
&lt;/a&gt;
&lt;a href="http://www.flickr.com/photos/masayun/5045429530/" title="usb_debug by masayukig, on Flickr"&gt;&lt;img alt="usb_debug" loading="lazy" src="http://farm5.static.flickr.com/4086/5045429530_c4ee018fb6.jpg"&gt;
&lt;/a&gt;
これで、Xperia側の設定は終了。
なお、ここまでの段階ではまだXperiaをUSBで接続しない方が良い。&lt;/p&gt;
&lt;p&gt;次に、PC(Linux)側の設定。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;$ sudo vim /etc/udev/rules.d/51-android.rules
$ cat /etc/udev/rules.d/51-android.rules
SUBSYSTEM==&amp;ldquo;usb&amp;rdquo;, SYSFS{idVendor}==&amp;ldquo;0fce&amp;rdquo;, MODE=&amp;ldquo;0666&amp;rdquo;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;というようなファイルを作成し、以下を実行。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;$ sudo udevadm control &amp;ndash;reload-rules
$ adb kill-server
$ adb start-server&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;なお、adbコマンドではroot権限は不要。各種コマンドのPATHは通しておいたほうが便利。&lt;/p&gt;
&lt;p&gt;で、XperiaをUSBでLinuxマシンに接続。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;$ adb devices
List of devices attached
XXXXXXXXXX(シリアル番号？) device&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;が表示されればOK。もし、&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;$ adb devices
List of devices attached
??????????(全て&amp;quot;?&amp;quot;) device&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;の場合には、何らかの設定がおかしいか、USBを接続しながらudevのリロードをした等が考えられるので、
再度、USBケーブルの抜き差し等を行ってみる。&lt;/p&gt;
&lt;p&gt;で、さっそく適当サンプルアプリを作って動かして、画面キャプチャをとってみました。
&lt;a href="http://www.flickr.com/photos/masayun/5044752593/" title="Xperia's screen capture by masayukig, on Flickr"&gt;&lt;img alt="Xperia&amp;rsquo;s screen\ncapture" loading="lazy" src="http://farm5.static.flickr.com/4152/5044752593_1161f2882c.jpg"&gt;
&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;(たかだかスクリーンショットをとるだけなのに、結構大変。。どうにかならんのか？)&lt;/p&gt;</description></item><item><title>SQLiteでprepared statementとBLOBを使って構造体を保存(C言語)その1 #sqlite</title><link>https://igawa.io/posts/2010/06/sqlite%E3%81%A7prepared-statement%E3%81%A8blob%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E6%A7%8B%E9%80%A0%E4%BD%93%E3%82%92%E4%BF%9D%E5%AD%98c%E8%A8%80%E8%AA%9E%E3%81%9D%E3%81%AE1-sqlite/</link><pubDate>Sat, 19 Jun 2010 08:28:00 +0900</pubDate><guid>https://igawa.io/posts/2010/06/sqlite%E3%81%A7prepared-statement%E3%81%A8blob%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E6%A7%8B%E9%80%A0%E4%BD%93%E3%82%92%E4%BF%9D%E5%AD%98c%E8%A8%80%E8%AA%9E%E3%81%9D%E3%81%AE1-sqlite/</guid><description>&lt;p&gt;SQLiteのC言語APIを使ってprepared statementで、BLOBを使ってみます。&lt;/p&gt;
&lt;p&gt;基本的には、以下のサイトに書いてある方法ですが、日本語で書いてみることにします。
&lt;a href="http://www.sqlite.org/capi3ref.html#sqlite3_stmt"&gt;http://www.sqlite.org/capi3ref.html#sqlite3_stmt&lt;/a&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;sqlite3_prepare_v2()(あるいはそれに類するもの)を使って、sqlite3_stmtのオブジェクトを作る。&lt;/li&gt;
&lt;li&gt;sqlite3_bind_*() インターフェースを使ってパラメータに値をBind。&lt;/li&gt;
&lt;li&gt;sqlite3_step()を使ってSQL実行。(sqlite3_step()は何回でも実行できる)&lt;/li&gt;
&lt;li&gt;sqlite3_reset()を使ってstatementをリセットして、step
2に戻る。これは何度でもできるし、やらなくても良い。&lt;/li&gt;
&lt;li&gt;sqlite3_finalize()を使ってオブジェクトを破棄する。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;というわけで、いきなりサンプルコードw
便利だなーと思ったのは、sqlite3_errmsg()関数。dbを引数にすると、&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ gcc -o sqlite_test sqlite_test.c -lsqlite3
$ chmod 000 test.db
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;と、DBファイルを読み書き出来ないようにして、実行すると、&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ ./sqlite_test
open error:14, unable to open database file
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;と、何でエラーになったのかが表示されます。&lt;/p&gt;
&lt;p&gt;さらに、このDBファイルをsqlite3コマンドで見たときの話は次回のエントリに書きたいと思います。&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;#include
#include
#include
#include
struct human {
char name[256];
int age;
int height;
int sex;
};
int main(int argc, char *argv[])
{
struct human human[5] = {
{ &amp;#34;Isono Katsuo&amp;#34;, 32, 168, 0 },
{ &amp;#34;Isono Wakame&amp;#34;, 29, 158, 1 },
{ &amp;#34;Huguta Tarao&amp;#34;, 20, 180, 0 },
{ &amp;#34;Huguta Masuo&amp;#34;, 52, 178, 0 },
{ &amp;#34;Huguta Sazae&amp;#34;, 48, 161, 1 } };
sqlite3 *db;
sqlite3_stmt *dropStmt = NULL;
sqlite3_stmt *createStmt = NULL;
sqlite3_stmt *selectStmt = NULL;
sqlite3_stmt *insertStmt = NULL;
char *drop_tbl_sql = &amp;#34;drop table member&amp;#34;;
char *create_tbl_sql = &amp;#34;create table member&amp;#34;
&amp;#34;(id INTEGER PRIMARY KEY,&amp;#34;
&amp;#34;human BLOB NOT NULL )&amp;#34;;
char *insert_tbl_sql = &amp;#34;INSERT INTO member (id, human) values (?, ?)&amp;#34;;
char *select_tbl_sql = &amp;#34;select human from member where id = ?&amp;#34;;
char *pzTail;
int rc = 0;
int exitcode = 0;
rc = sqlite3_open(&amp;#34;test.db&amp;#34;, &amp;amp;db);
//rc = sqlite3_open(&amp;#34;:memory:&amp;#34;, &amp;amp;db);
if (rc != SQLITE_OK) {
printf(&amp;#34;open error:%d, %s\n&amp;#34;, rc, sqlite3_errmsg(db));
exitcode = 1;
goto end;
}
/* cleanup. ignore error. */
sqlite3_prepare_v2(db, drop_tbl_sql, -1, &amp;amp;dropStmt, NULL);
sqlite3_step(dropStmt);
rc = sqlite3_prepare_v2(db, create_tbl_sql, -1, &amp;amp;createStmt, NULL);
if (rc != SQLITE_OK) {
printf(&amp;#34;create error:%d, %s\n&amp;#34;, rc, sqlite3_errmsg(db));
exitcode = 1;
goto end;
}
rc = sqlite3_step(createStmt);
if (rc != SQLITE_DONE) {
printf(&amp;#34;create error:%d, %s\n&amp;#34;, rc, sqlite3_errmsg(db));
exitcode = 1;
goto end;
}
rc = sqlite3_prepare_v2(db, insert_tbl_sql, -1, &amp;amp;insertStmt, NULL);
if (rc != SQLITE_OK) {
printf(&amp;#34;insert error:%d, %s\n&amp;#34;, rc, sqlite3_errmsg(db));
exitcode = 1;
goto end;
}
rc = sqlite3_prepare_v2(db, select_tbl_sql, -1, &amp;amp;selectStmt, NULL);
if (rc != SQLITE_OK) {
printf(&amp;#34;select error:%d, %s\n&amp;#34;, rc, sqlite3_errmsg(db));
exitcode = 1;
goto end;
}
int i = 0;
for (i = 0; i &amp;lt; 5; i++) {
sqlite3_reset(insertStmt);
sqlite3_bind_int(insertStmt, 1, i);
sqlite3_bind_blob(insertStmt, 2, &amp;amp;human[i], sizeof(struct human), SQLITE_STATIC);
rc = sqlite3_step(insertStmt);
if (rc != SQLITE_DONE) {
printf(&amp;#34;insert error:%d, %s\n&amp;#34;, rc, sqlite3_errmsg(db));
exitcode = 1;
goto end;
}
}
printf(&amp;#34;-------------------------------------\n&amp;#34;);
for (i = 0; i &amp;lt; 5; i++) {
sqlite3_reset(selectStmt);
sqlite3_bind_int(selectStmt, 1, i);
rc = sqlite3_step(selectStmt);
//printf(&amp;#34;select result:%d\n&amp;#34;, rc);
if (rc == SQLITE_ROW) {
struct human *t = (struct human*)sqlite3_column_blob(selectStmt, 0);
printf(&amp;#34;ID: %d\n\t name: %s\n\t age: %d\n\t height: %d\n\t sex: %s\n&amp;#34;,
i, t-&amp;gt;name, t-&amp;gt;age, t-&amp;gt;height, t-&amp;gt;sex == 0 ? &amp;#34;M&amp;#34; : &amp;#34;F&amp;#34;);
printf(&amp;#34;-------------------------------------\n&amp;#34;);
}
}
end:
sqlite3_finalize(selectStmt);
sqlite3_finalize(insertStmt);
sqlite3_finalize(createStmt);
sqlite3_finalize(dropStmt);
return exitcode;
}
&lt;/code&gt;&lt;/pre&gt;</description></item><item><title>make oldconfigで全ての問い合わせ項目にEnterするスクリプト #Linux</title><link>https://igawa.io/posts/2010/06/make-oldconfig%E3%81%A7%E5%85%A8%E3%81%A6%E3%81%AE%E5%95%8F%E3%81%84%E5%90%88%E3%82%8F%E3%81%9B%E9%A0%85%E7%9B%AE%E3%81%ABenter%E3%81%99%E3%82%8B%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%97%E3%83%88-linux/</link><pubDate>Sat, 05 Jun 2010 14:25:00 +0900</pubDate><guid>https://igawa.io/posts/2010/06/make-oldconfig%E3%81%A7%E5%85%A8%E3%81%A6%E3%81%AE%E5%95%8F%E3%81%84%E5%90%88%E3%82%8F%E3%81%9B%E9%A0%85%E7%9B%AE%E3%81%ABenter%E3%81%99%E3%82%8B%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%97%E3%83%88-linux/</guid><description>&lt;p&gt;Linux
kernelのmakeのターゲットでありそうな気もするんですが、見つからなかったので。&lt;/p&gt;
&lt;p&gt;$ cat make_oldconfig_auto.sh&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;#!/usr/bin/env expect
set timeout 10
spawn make oldconfig
while {1} {
expect {
&amp;#34;] (NEW)&amp;#34; { send &amp;#34;\n&amp;#34; }
&amp;#34;# configuration written to .config&amp;#34; {break}
}
}
interact
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;見てわかるとおり、expectを使って、&amp;quot;]
(NEW)&amp;ldquo;というのが出てきたら、Enter入力。
&amp;ldquo;# configuration written to .config&amp;quot;が出てきたらおしまい。&lt;/p&gt;
&lt;p&gt;というスクリプトです。&lt;/p&gt;</description></item><item><title>Valgrindの使い方</title><link>https://igawa.io/posts/2010/05/valgrind%E3%81%AE%E4%BD%BF%E3%81%84%E6%96%B9/</link><pubDate>Thu, 20 May 2010 21:43:00 +0900</pubDate><guid>https://igawa.io/posts/2010/05/valgrind%E3%81%AE%E4%BD%BF%E3%81%84%E6%96%B9/</guid><description>&lt;p&gt;&lt;a href="http://kzk9.net/column/valgrind-memcheck.html"&gt;http://kzk9.net/column/valgrind-memcheck.html&lt;/a&gt;
自分用にメモメモ。
メモリリークを検出出来るらしい。&lt;/p&gt;</description></item><item><title>Linux(Ubuntu)で、Objective-C</title><link>https://igawa.io/posts/2009/08/linuxubuntu%E3%81%A7objective-c/</link><pubDate>Sat, 15 Aug 2009 05:54:00 +0900</pubDate><guid>https://igawa.io/posts/2009/08/linuxubuntu%E3%81%A7objective-c/</guid><description>&lt;p&gt;iPhoneアプリを作るなら、Objective-Cという言語を知っておく必要が
ありそうなので、とりあえず、LinuxでObjective-Cをやってみる。
参考にしている書籍は、以下。
&lt;a href="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=hughundercons-22&amp;amp;o=9&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=1X69VDGQCMF7Z30FM082&amp;amp;asins=4797346809"&gt;http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&amp;amp;bc1=000000&amp;amp;IS2=1&amp;amp;bg1=FFFFFF&amp;amp;fc1=000000&amp;amp;lc1=0000FF&amp;amp;t=hughundercons-22&amp;amp;o=9&amp;amp;p=8&amp;amp;l=as1&amp;amp;m=amazon&amp;amp;f=ifr&amp;amp;md=1X69VDGQCMF7Z30FM082&amp;amp;asins=4797346809&lt;/a&gt;
私は、とりあえず、図書館で借りました。
が、図書館に無かったり、近くに図書館が内容な場合は、上記からご購入ください
:-)&lt;/p&gt;
&lt;p&gt;Apple製品専用言語なのかと思ったが、ググったら、Linuxでも動きそうだったので、
挑戦してみる。&lt;/p&gt;
&lt;p&gt;以下、その内容。
まずは、Objective-Cの環境をインストール。
&lt;a href="http://d.hatena.ne.jp/elm200/20080426/1209211127"&gt;Linux で Objective C
を走らせてみた&lt;/a&gt;
の記事を参照して、以下の様にインストール。&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ sudo aptitude install gobjc
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
拡張状態情報を読み込んでいます
パッケージの状態を初期化しています... 完了
拡張状態情報を書き込んでいます... 完了
以下の新規パッケージがインストールされます:
gobjc gobjc-4.3{a} libobjc2{a}
0 個のパッケージを更新、 3 個を新たにインストール、 0 個を削除予定、1 個が更新されていない。
3700kB のアーカイブを取得する必要があります。 展開後に 9478kB のディスク領域が新たに消費されます。
先に進みますか? [Y/n/?] Y
拡張状態情報を書き込んでいます... 完了
取得:1 http://jp.archive.ubuntu.com jaunty/main libobjc2 4.3.3-5ubuntu4 [160kB]
取得:2 http://jp.archive.ubuntu.com jaunty/main gobjc-4.3 4.3.3-5ubuntu4 [3538kB]
取得:3 http://jp.archive.ubuntu.com jaunty/main gobjc 4:4.3.3-1ubuntu1 [894B]
3700kB を 2s 秒でダウンロードしました (1552kB/s)
未選択パッケージ libobjc2 を選択しています。
(データベースを読み込んでいます ... 現在 250930 個のファイルとディレクトリがインストールされています。)
(.../libobjc2_4.3.3-5ubuntu4_amd64.deb から) libobjc2 を展開しています...
未選択パッケージ gobjc-4.3 を選択しています。
(.../gobjc-4.3_4.3.3-5ubuntu4_amd64.deb から) gobjc-4.3 を展開しています...
未選択パッケージ gobjc を選択しています。
(.../gobjc_4%3a4.3.3-1ubuntu1_amd64.deb から) gobjc を展開しています...
libobjc2 (4.3.3-5ubuntu4) を設定しています ...
gobjc-4.3 (4.3.3-5ubuntu4) を設定しています ...
gobjc (4:4.3.3-1ubuntu1) を設定しています ...
libc6 のトリガを処理しています ...
ldconfig deferred processing now taking place
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
拡張状態情報を読み込んでいます
パッケージの状態を初期化しています... 完了
拡張状態情報を書き込んでいます... 完了
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;で、まずは、お約束Hello Worldからw（インターネットはどれくらい&amp;quot;Hello
World&amp;quot;であふれているのだろうか..）&lt;/p&gt;</description></item><item><title>twitter2mixi.rbの改良は、後回しにしようかな(Twitter対抗、mixi「エコー」 正式サービスに APIも公開へ)</title><link>https://igawa.io/posts/2009/08/twitter2mixirb%E3%81%AE%E6%94%B9%E8%89%AF%E3%81%AF%E5%BE%8C%E5%9B%9E%E3%81%97%E3%81%AB%E3%81%97%E3%82%88%E3%81%86%E3%81%8B%E3%81%AAtwitter%E5%AF%BE%E6%8A%97mixi%E3%82%A8%E3%82%B3%E3%83%BC-%E6%AD%A3%E5%BC%8F%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9%E3%81%AB-api%E3%82%82%E5%85%AC%E9%96%8B%E3%81%B8/</link><pubDate>Sat, 01 Aug 2009 04:48:00 +0900</pubDate><guid>https://igawa.io/posts/2009/08/twitter2mixirb%E3%81%AE%E6%94%B9%E8%89%AF%E3%81%AF%E5%BE%8C%E5%9B%9E%E3%81%97%E3%81%AB%E3%81%97%E3%82%88%E3%81%86%E3%81%8B%E3%81%AAtwitter%E5%AF%BE%E6%8A%97mixi%E3%82%A8%E3%82%B3%E3%83%BC-%E6%AD%A3%E5%BC%8F%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9%E3%81%AB-api%E3%82%82%E5%85%AC%E9%96%8B%E3%81%B8/</guid><description>&lt;p&gt;「Twitter対抗、mixi「エコー」正式サービスに　APIも公開へ」&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.itmedia.co.jp/news/articles/0907/31/news085.html"&gt;&lt;img alt="http://www.itmedia.co.jp/news/articles/0907/31/news085.html" loading="lazy" src="http://kwout.com/cutout/7/gk/fz/8pm_bor.jpg" title="Twitter対抗、mixi「エコー」正式サービスに\u3000APIも公開へ - ITmedia News"&gt;
&lt;/a&gt;
&lt;a href="http://www.itmedia.co.jp/news/articles/0907/31/news085.html"&gt;Twitter対抗、mixi「エコー」正式サービスに　APIも公開へ - ITmedia
News&lt;/a&gt; via
&lt;a href="http://itmedia.kwout.com/quote/7gkfz8pm"&gt;kwout&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://kwout.com/cutout/7/gk/fz/8pm_bor.js"&gt;http://kwout.com/cutout/7/gk/fz/8pm_bor.js&lt;/a&gt;
ということらしいです。&lt;/p&gt;
&lt;p&gt;今、twitter2mixi.rbというスクリプトをcronで動かして、twitterつぶやきをmixiエコーへ投げているのですが、
このスクリプトは、最新の1件だけ取ってきて、mixiエコーへ投げています。
これを、最新つぶやき全部を取ってきて、全部投げることができるようにしようかなと
思っていたのですが、APIが公開されるのであれば、それを待ってからの方が良いかなと、
思ったり、思わなかったり。&lt;/p&gt;</description></item></channel></rss>