関数hogehogeが現在のスコープから参照できねー!(意訳)
とエラーが出る。
当該関数のプロトタイプ宣言を上の方へ追加すればOK(pulseの直後とか)。
2013年3月13日水曜日
Arduino.mk on Ubuntu 12.04 LTS
環境
arduino-1.0.3
for YAML.pm
sudo apt-get install libconfig-yaml-perl
for Device/SerialPort.pm
sudo apt-get install libdevice-serialport-perl
配置
~/.arduino フォルダを拡張する
~/.arduino
|- preferences.txt
|- arduino-1.0.3/
|- arduino-mk-0.10/
ln -s arduino-1.0.3 arduino
ln -s arduino-mk-0.10 arduino-mk
Makefile
MakefileはTARGET環境変数の設定が無い場合はカレントディレクトリ名をターゲット名にするようになっているので、フォルダの中に入れる。
例:IRrecvDemoサンプルをコンパイルするMakefile
ARDUINO_BASE = $(HOME)/.arduino
ARDMK_DIR = $(ARDUINO_BASE)/arduino-mk
ARDUINO_DIR = $(ARDUINO_BASE)/arduino
AVR_TOOLS_DIR = $(ARDUINO_DIR)/hardware/tools/avr
AVRDUDE = $(ARDUINO_DIR)/hardware/tools/avrdudeよ
AVRDUDE_CONF = $(ARDUINO_DIR)/hardware/tools/avrdude.conf
BORD_TAG = uno
ARDUINO_LIBS = IRremote
ARDUINO_PORT = /dev/ttyACM0
include $(ARDMK_DIR)/arduino-mk/Arduino.mk
make
- depend.mkが無いと怒られるが無視してよい。
- build.pid, build.vidが無いと怒られるがLeonardo用なのでunoでは無視して良い。
再度makeしたときに「ターゲットがありません」と怒られたらカレントディレクトリがbuild_unoに切り替わってないか注意する。
arduinoへ転送
arduino unoを接続してから make upload
2013年3月1日金曜日
msysgitとPuTTYでリモートのリポジトリにアクセス
- private key/public keyをkeygenで作成する。
- private keyをPuTTYのppk形式に変換して保存。
- public keyはkeygenで作ったままリモートのauthorized_keysに加える。
- PuTTYでpublic key/private key使ってログインできることを確認。
- PuTTYのplink.exeにpathを通しておく
- PuTTYのpagentを起動し、2のキーを登録(とパスワード入力)
- 環境変数 GIT_SSHを設定 set GIT_SSH=plink.exe
- 持ってきてみる。 git clone ssh://user@srver:/path/to/git_repos/hoge.git
- ローカルにhogeディレクトリが出来る。
2013年2月28日木曜日
gitコマンドで転送せずにgitリモートリポジトリを作る
ローカル側からsshで送りたい。
git clone --bare /path/to/hoge ssh://foo@server:22/path/to/reposと書いてみたがダメだった。
- ローカルのリポジトリを丸ごとzip圧縮
- scpで転送してリモートでテンポラリの場所に解凍。
- git clone --bare
- ローカルでリモートから取りなおす。
- 取りなおしたところにworkingの内容を(.gitディレクトリ以外)コピー
- リモートのテンポラリに解凍したのは削除。
2012年4月16日月曜日
linux 3.0.0-15 generic いれたらXが上がらなかった件
nvidia のドライバが無いと怒られる(recovery modeで立ち上げて見て)。
.....マシンのGPU切替スイッチがOFFになってた orz.
2012年3月7日水曜日
androidアプリ開発環境設定 on ASUS N10Jc (3.root化編)
入手した原道N50は既にroot化されていたが、onda vi30豪華版 はそうではなかったのでroot化する。
root化 on Windows
Tasselhof-RootScript.batと言うのが定番らしいのでWindowsで作業する。今回はWindows XP Home。- 実機をUSBで認識する必要がある。まずはgoogle usb driverを有効にするために android sdk をインストール(当然 jdk もインストール)
- onda vi30を有効にするためandroid_winusb.infに記述を追加する。
[Google.NTx86]
;
;onda vi30
%SingleAdbInterface% = USB_Install, USB\VID_【VenderID】&PID_【PID】E&【Rev】
%CompositeAdbInterface% = USB_Install, USB\VID_【VenderID】&PID_【PID】&MI_01
- Windows用のスクリプト[ROOT] - MID816R2 - Tasselhof - ROOT - Script & Toolsが定番らしいのでこれを使う。
- !RUN-ME-Tasselhof-RootScript.batを走らせたらメニューになる。1を選んでデバイスが表示されたら2以降を使える。表示されなかったらUSBが認識されていない。
- メニューの2番でroot化可能であることを確認
- 3でroot化
- adb shellでプロンプト#が表示されれば成功
USB認識 on ubuntu
普段作業するのはubuntuなのでubuntu上で認識させる方法。 Using Hardware Devices | Android Developersを参考にした。vendor IDはwindowsで調べてもいいが、ubuntu上で調べるならlsusb。2012年3月6日火曜日
タグ区切り文字の見分け方(?)
firefoxのブックマークのタグはカンマで区切る。
bloggerのラベルはカンマで区切る。
picasaのタグはスペースで区切る。
yahoo bookmarkのタグはスペースで区切る。
とメモしても忘れてしまうので簡単な見分けかた:
「スペースをたくさん入れてそのままの間隔で登録されたらスペースが区切りではない。」
bloggerのラベルはカンマで区切る。
picasaのタグはスペースで区切る。
yahoo bookmarkのタグはスペースで区切る。
とメモしても忘れてしまうので簡単な見分けかた:
「スペースをたくさん入れてそのままの間隔で登録されたらスペースが区切りではない。」
2012年3月5日月曜日
android アプリ開発環境設定 on ASUS N10Jc (2.eclipse導入編)
eclipseをダウンロード
ubuntuのパッケージの中にもあるが、openJDKとか持ってこようとするので、sun javaと同様 パッケージによらず導入する。- Eclipse Downloadsから "Eclipse IDE for Java Developers"を選んでダウンロード。落としたと時はEclipse Indigo (3.7.2) Packagesとなっていた。 sun javaと同様に入れたいので/opt以下に展開(/opt/eclipse)する。eclipseはインストーラが無くて展開したものがそのまま動く
- これでインストールは完了。先にJAVA_HOMEを設定済なのでこのままeclipseを起動できる。起動は
/opt/eclipse/eclipse
でOK。起動時にワークスペースを聞かれるので ~/work/eclipse/workspace とした。
cd /opt
sudo tar xvf eclipse-java-indigo-SR2-linux-gtk.tar.gz
日本語化
ちと重いが最新版でも日本語化できると言うことでPleiades(プレアデス)を利用する。Linuxはインストーラが無いので手動導入。 【Ubuntu 9.10】Eclipse 3.5.1 Galileo 日本語化 by Pleiades 1.3.1 を参考にさせて頂いた。
Android開発用のプラグインADT導入
続けてAndroid開発用のプラグインADTを入れる。同じく参考【Ubuntu 11.04】 Eclipse 3.7M6(Indigo) + Android SDK r10 + ADT Plugin インストール
ここでちょっと嵌った。リストボックスに何も現れない。 結論から言うと画面の高さが600しかないネットブック固有の問題だった。 画面の縦幅が足りなくてリストボックス領域の高さが0になっていた。 下のワークスペースへはみ出させて表示して作業続行。試してないけど、他の方法としては外部ディスプレイを接続するとかx11vnc使うとか。
ThisWorkbookとActiveWorkbookの違い
Excel VBAのメモ。
ThisWorkbookはself相当。コードの属するワークブックを示す。
ActiveWorkbookは現在アクティブなWorkbookを示す。
アドイン内でワーク的に使うシートはThisWorkbookでアクセスし、操作対象のWorkbookはActiveWorkbookでアクセスできる。
ThisWorkbookはself相当。コードの属するワークブックを示す。
ActiveWorkbookは現在アクティブなWorkbookを示す。
アドイン内でワーク的に使うシートはThisWorkbookでアクセスし、操作対象のWorkbookはActiveWorkbookでアクセスできる。
2012年3月1日木曜日
android アプリ開発環境設定 on ASUS N10Jc (1.コマンドライン編)
ふとandroidアプリが作りたくなり、いわゆる中華タブレットを買い込む。
そうすると次は当然ながらandroidアプリ開発環境を設定しなければならない。
そうすると次は当然ながらandroidアプリ開発環境を設定しなければならない。
環境
- PCはネットブック。非力(Atom)、狭い(1024x600) 今のところ開発環境として持ち歩けるのはこれしかない。これでもネットブックとしては(少なくとも発売当初は)マシな方。ASUS N10Jc
- OSはUbuntu11.10
設定したいもの
- 手元にあるandroid2.3用の開発環境
- eclipseは重いのでできればemacs
調べた手順
- ubuntuパッケージ sun-java6-sdk と ant をインストール
- android sdkをインストール
- emacs設定
- 実機接続して Hello world
実態
- sun-java6-sdkパッケージのインストールでいきなりつまづく。○racleとか○racleのせいでディストリビューターがバイナリパッケージを配布できなくなったとかで、Oracleのサイトから持ってくる必要がある。ubuntuのパッケージ管理外orz. 詳しくは[ubuntu-jp:3967] Sun JDKパッケージをお使いの方はご注意ください参照。
((続報) Ubuntu 11.10 "Oneiric Ocelot" での sun-java6-jdk パッケージについて を参考にさせて頂いた。) - antを持ってくる。調べたらこちらはずばり sudo apt-get install ant でOKなのかな?と思って実行してみると sun-java じゃないjavaもごっそり入れようとする(そもそも1で入れたsun-javaはパッケージの管理外なのでパッケージマネージャとしてはjavaが入ってないと判断し、標準のjava(openjdk?)を入れようと.....だろう。たぶん)。なのでantも別途バイナリを取ってきてインストールする。
- http://ant.apache.org/ より apache-ant-1.8.2-bin.tar.bz2
- mkdir /tmp/ant
cd /tmp/ant - mv ~/download-folder/apache-ant-1.8.2-bin.tar.bz2
- tar jxvf apache-ant-1.8.2-bin.tar.bz2
- sudo cp -rp apache-ant-1.8.2 /opt/
- /tmp/antはもう要らないので削除
- そして環境変数ANT_HOMEを設定しPATHに加える。~/.profileに追加
# apache ant see https://forums.ubuntulinux.jp/viewtopic.php?id=2791
ANT_HOME=/opt/apache-ant-1.8.2
PATH=$PATH:$ANT_HOME/bin
- 参考にした資料にはbuild.xmlを変更してデプロイまで一発でできるようにしてあったが、記述当時とbuild.xmlが変わっているのか単純にパッチ当てでは済みそうになかった。なのでここは標準のまま。
- adb installでインストール。ターゲットIDは自分で調べて変更する必要があった。複数のバージョンのSDKを共存させることができるが、idは入れた順番で違うようだ。
2012年1月27日金曜日
The Node Beginner Book てきとー訳
Node.js 日本ユーザグループのページから辿れるThe Node Beginner Bookをてきとー訳してみました。
The Node Beginner Book(てきとー訳)
- それなりに意訳しています。正確な内容は原文を参照下さい。
- 明らかに反対の意味であるような部分等ございましたら御連絡頂けると幸甚です。
2011年11月16日水曜日
Thinking Forth の Latexソースを取得
アーカイブにはイメージファイルが含まれていないのでCVSリポジトリから取得する
export CVS_RSH=ssh
cvs -z3 -d:ext:developername@thinking-forth.cvs.sourceforge.net:/cvsroot/thinking-forth co thinking-forth
2011年11月15日火曜日
google code の wiki 飛ばした
google code のwikiはリポジトリに格納されているのでリポジトリの種類を変更すると無くなってしまう。
もちろん事前にバックアップしておけば問題ない。またはfront pageに全部書いとく。
もちろん事前にバックアップしておけば問題ない。またはfront pageに全部書いとく。
2011年11月11日金曜日
JavaScript typo onlaod
ブラウザ上でJavaScriptがさっぱり動かなかったのでよくよく見たら
文法上はなんの問題も無いのでjslint掛けても検出できない。皆どうやってチェックしてるんだろう?
window.onlaod = function() {onload を onlaod と typo。
hogehoge....
}
文法上はなんの問題も無いのでjslint掛けても検出できない。皆どうやってチェックしてるんだろう?
node-jslint
$ npm install jslint -g
npm WARN jslint@0.1.0 package.json: bugs['web'] should probably be bugs['url']
/home/hideo/.node/v0.6.0/bin/jslint -> /home/hideo/.node/v0.6.0/lib/node_modules/jslint/bin/jslint.js
abbrev@1.0.3 /home/hideo/.node/v0.6.0/lib/node_modules/jslint/node_modules/nopt/node_modules/abbrev
nopt@1.0.10 /home/hideo/.node/v0.6.0/lib/node_modules/jslint/node_modules/nopt
jslint@0.1.0 /home/hideo/.node/v0.6.0/lib/node_modules/jslint
nvm インストール
$ sudo apt-get install curl
インストール後、ログインしなおす必要がある。
$ sudo apt-get install build-essential libssl-dev
$ git clone git://github.com/creationix/nvm.git ~/.node
.bashrcに
. $HOME/.node/nvm.shを追加(ドットはsouceと同意だそう)
初回は . ~/.node/nvm.sh と手動実行してもよい。
$ nvm install v0.6.0
atom 2GHz だと 15分ぐらい? screen,byobu等を介して実行した方が幸せかも。
$ nvm use v0.6.0
$ node -v
v0.6.0
2011年11月7日月曜日
Google 翻訳者ツールキット Tips?
場所
Googleで翻訳を選び、下のメニューから翻訳者ツールキットを選ぶ操作補足
些か癖のある操作となっている。- 翻訳メモリの新規作成→翻訳メモリのアップロード画面でファイルを選択せずに名前だけ入力して「TMの追加」ボタンを押す
- 出来上がったものを得る→ダウンロードする
使い方(自己流)
- 別画面でGoogle翻訳を開いておく。ツールキット表示すると下部に機械翻訳を表示するが、エディットは出来ない。よって原文をGoogle翻訳に貼り付けていろいろ試してみる。
Web画面をURL指定で持ってこれない。ブラウザの保存を使うと画像とかまで引っ張ってきてしまうのでwget等で当該のhtmlファイルのみを取得する→Webはアップロード画面でウェブページタブを選択。
2011年10月28日金曜日
Using ediff as git mergetool
実際には各行の末尾に継続行 \ を付加する必要があった。
[mergetool.ediff]
cmd = emacs --eval \"
(progn
(defun ediff-write-merge-buffer ()
(let ((file ediff-merge-store-file))
(set-buffer ediff-buffer-C)
(write-region (point-min) (point-max) file)
(message \\\"Merge buffer saved in: %s\\\" file)
(set-buffer-modified-p nil)
(sit-for 1)))
(setq ediff-quit-hook 'kill-emacs
ediff-quit-merge-hook 'ediff-write-merge-buffer)
(ediff-merge-files-with-ancestor \\\"$LOCAL\\\" \\\"$REMOTE\\\"
\\\"$BASE\\\" nil \\\"$MERGED\\\"))\"
参考:emacs - Using ediff as git mergetool - Stack Overflow
登録:
投稿 (Atom)