つまづきブログ

そのときどきのメモを残しています。

『30日で出来るOS自作入門』メモ process_begin: CreateProcess((null), copy helloos.img ..\z_tools\qemu\fdimage0.bin, ...) failed. make (e=2): 指定されたファイルが見つかりません。

2日目の アセンブラ学習とMakefile入門 の章で躓き2日間悶々としていた。

誤字、手順間違い等何度見直しても「make run」でエラーとなって失敗する問題。

 

Makefileの記述を

「copy helloos.img ..\z_tools\qemu\fdimage0.bin」

「cmd.exe /C copy helloos.img ..\z_tools\qemu\fdimage0.bin」

に変更で解決

 

Cygwinを入れているとWindowsのCopyコマンドと干渉してこのようなことが起こるとのこと。

 

今後困ったことがあったら即ググル&↓を見る

 http://hrb.osask.jp/wiki/?faq/make

 

古い本なので過去にブログ等で同じエラーに見舞われた人の記事の断片があってもブログ閉鎖されてキャッシュしか残っていないなどあるようなので一応メモを残す。

Pebble time steel 日本語化 できない

再起動したら日本語化リセットされました。

面倒なので放置してたら、お豆腐(□□□)ばかりで

LINEもメールも読めず、しょうがなく再日本語化することにしました。

 

といっても難しいことは何もなく

「pebble 日本語化」で上位に出てくる

韓国の方か日本の方かのどちらかの好みの方のpblファイルを

ダウンロードしてそのままインストールすればいいはずです。

 

しかし何度やっても「pebbleで開く」が出来なかったり

pebbleで開けてもエラーが出たりで上手くできず苦戦しました。

 

調べるとスマホのブラウザがchromeではうまくいかないとか書いてあったりしたので

firefoxを入れて試しました。でもうまくいきません。

何度アプリ再起動再インストール

ペブルのリセットを繰り返してもうまくいきませんでした。

 

えー結果。

 

firefoxでDL後、右上の三点→ツール→ダウンロード

からpblファイルを選択すると問題なくインストール出来ます。

 

それだけでした。

 

なんか本当そんな些細なことで三日くらい悶々としてたのでくやしいです。

些細な見落とし気をつけましょう。

Geany 1.29 よくわからない VTE

プログラミングの勉強の際に

RaspberryPiに最初から入っているソフト『Geany』を使っているます。

 

ビルドコマンドというのを設定してやると

ボタンを押すだけでコンパイルや実行をしてくれる便利な機能があります。

 

いままでの環境では問題なく使えていたのですが、今回新しく買ったRaspberryPiに改めて設定して使ってみると、コンパイルはできるものの実行が上手くできません。

 

 

f:id:ng-r:20171128105959p:plain

通常、画像の真ん中上辺りの赤丸ボタン(非実行時は紙飛行機マーク)が押されて実行されると、LXターミナルが起動して、「hello world!」と表示されるのですが、

「geany_run_script_○○○○(都度違う).sh」とバーに表示され、中身が何も出てきません。「ctrl+c」を押しても閉じたりもしないのです。

 

geanyにボタンからではなく、LXターミナルから実行すると問題なく「hello world!」は出てきます。

 

f:id:ng-r:20171128110702p:plain

「ビルドコマンドを設定」の「コマンドを実行」の部分が悪いのかと見てみますが、いろいろ試して見ていますが特に変化はありません。

 

f:id:ng-r:20171128110721p:plain

他をいろいろ弄くってみたところ

「編集」→「設定」→「端末」で

「VTEでプログラムを実行」にチェックを入れてみたところ

 

f:id:ng-r:20171128111035p:plain

geanyの下部にLXターミナルが埋め込まれたような形で実行され、「hello world!」が表示されました。

 

VTEってなんのこっちゃですが、検索しても

GNOME端末 その1 - GNOME環境向けのターミナルエミュレーターの紹介・ターミナルとターミナルエミュレーターの基本 - kledgeb

  VTEとは 

    VTE(Virtual Terminal Environment)とは、GUI(Graphical User Interface)環境で動作するターミナルエミュレーターウィジェット)です。
    GNOMEプロジェクトで開発されています。

    「GNOME端末」は、このVTEを利用して動作しています。

 

・・・。 

 

「仮想端末環境」ということで、バーチャルでなんかやるみたいです。

 

う~ん。。。わからん

なんかいままでと違うんだよなぁ。。。でもまぁいっか。

 

と、ひとまず動いて安心です。

でもまだまだわかんないことだらけだなぁとつくづく感じますねぇ。

 

今のところ関係あるだろうなぁってのは

 

「編集」→「設定」→「ツール」→「端末」の「x-terminal-emulator -e "/bin/sh %c"」の「 -e "/bin/sh %c"」を消すと、プログラムのある階層でターミナルが開かれる。

この「-e」「%c」とかはまぁなんかオプションてものだったりするみたいで「ターミナルを開いて -e→””の中のコマンドを実行 %cはgeanyスクリプトファイル名に置換」 というような意味のようだと思っています。

 

「VTEでプログラムを実行」をチェックしていないと「/bin/tmp」の中に「geany_run_script_○○○○.sh」と「geany_socket.○○○」が作られる

 

ということでしょうか。

もっと基礎を知らないとちゃんと設定もできないですねぇ。

大変です。

 

Raspberry pi 3 を買ってみて(Lチカ)

組み込みプログラミングの勉強にと

秋月電子通商さんにて「RaspberryPi3 B element14版」と

『RaspberryPiで学ぶ電子工作』とパーツセットを買ってみました。

 

2017年11月28日現在では、OSインストール時に日本語環境の選択をすれば

特に不便なく使えるようで、難なくインストールは完了しました。

(USB有線接続のキーボードとマウスがなく、近所の電機屋さんに買いに行きました。。。)

f:id:ng-r:20171128103412p:plain

最初のおおまかなことを済ませたら、VNCというソフトを使って

メインのwindowsパソコンから接続し、配線をスッキリさせました。

ただやはり遠隔操作なので動作はもっさりとした感じになります。

でも机の上でいろいろいじくるには大変便利ですね。

 

ひとまずはLEDをチカチカさせる「Lチカ」がハローワールド的なものらしいので

買った本と訓練校で習ったことをベースに適当に試してみました。

f:id:ng-r:20171128103616p:plain

無事成功です。

 

RaspberryPiから出ている沢山のピン、そのの真ん中の辺りから赤い線でブレッドボードにつなぎ、抵抗を通してLEDの+(長い足)へ

LEDの-(短い足)からRaspberryPiのピンの左の辺りのGNDへ戻してやるような感じとなります。

 

実はいまだに電圧がどうだとかGNDとはこういうものだとかっていうのがふわふわしています。

とりあえず『RaspberryPiで学ぶ電子工作』にその辺のことが書いてあるようなので、復習しながら取り組んでいこうかというところ。

 

LogicoolのM570のチャタリングを直す

ズボラ者の味方といえば、トラックボールですね。

私もロジクールトラックボールを愛用しています。

 

しかしコイツにチャタリング(1クリックのつもりが高速で数回分クリックされてしまう現象)が起きるようになってしまったので大変不便するようになりました。

ファイルをドラッグしようとすると意図せずダブルクリックされてしまい、まともに操作できないくらいでした。

「新製品の『MX ERGO』出たし買い換えようかなぁ…」とも思ったのですが、無職の身にはちょっと厳しい金額です。

しょうがないので手元のもので安く修理することとしました。

自宅ではんだ付けするのは初体験です。

 

必要な物

・チャタるM570

・はんだゴテ(安物でも一応出来る)

・はんだ(安物でも一応出来る)

・はんだ吸取器(吸取り線だと私は無理でした)

www.amazon.co.jp

・マイクロスイッチオムロン D2FC-F-7N)

www.amazon.co.jp

・T6 星型ドライバー

www.amazon.co.jp

・ちっちゃいプラスドライバー

www.amazon.co.jp

有るといいかもしれないもの

・ピンセット(底面のゴムをはがすのに便利)

・ゴムマット(はんだやはんだから出るフラックスが垂れるので)

・フラックス

・技術

 

やってみる

昔近所のホームセンターで買って放置していたハンダセットを使うことにしました。

f:id:ng-r:20171007144215p:plain

 

マイクロスイッチは5個入っていますが使うのは1つです。f:id:ng-r:20171007144324p:plain

底面の電源を切って電池も抜き取ります。

f:id:ng-r:20171007144329p:plain

 

底面のすべり止めゴムを外し、電池ケースの所のシールもはがしT6の星型ドライバーでネジを全て外します。

f:id:ng-r:20171007144333p:plain

f:id:ng-r:20171007144338p:plain

 

かなり綿ぼこり等溜まっていて汚いです。

f:id:ng-r:20171007144341p:plain

 

プラスドライバーで基盤を固定している4箇所のネジを外し、茶色いコードのロックを外して抜き取ります。電池の針金がひっかっているので折り曲げないよう注意です。

↓写真の左側の黒い四角いのが左クリック担当のスイッチです。コイツを交換します。

f:id:ng-r:20171007144344p:plain

 

ひっくり返してハンダ付けされている面を見ます。

↓写真の手前側にあるスイッチの足3箇所をそれぞれ熱し、はんだを溶かして吸取器でシュポンシュポン吸取ります。f:id:ng-r:20171007144346p:plain

 

安物で温度調整も出来ない針形のコテ先でしたので当てづらく、ひたすら熱してシュポンシュポン繰り返し、吸取ってはグニグニスイッチを引っ張ること1時間以上。外れたときには一箇所パターンがちょっと焦げて剥がれてしましました。

f:id:ng-r:20171007144349p:plain

 

外したら、新しいマイクロスイッチに差し替え、はんだ付けです。しかしはんだも安物のため、ヨビはんだしようにも全然ヌレずに参りました。技術もないのでちょっとイモ気味です。

f:id:ng-r:20171007144351p:plain

 

向きも間違えずになんとかはんだ完了です。

f:id:ng-r:20171007144355p:plain

 

ヨビはんだしようと足掻いた結果です。玉になってポロポロ落ちてしまい全然くっつきませでした。訓練校で使っているはんだとハンダコテでは一回もなったことないです。

f:id:ng-r:20171007144358p:plain

 

左が元々ついていたスイッチ、右が今回交換したスイッチです。

f:id:ng-r:20171007144406p:plain

 

ハンダが終わったので全部元の通りに組み上げ電源投入。無事クリックボタンの反応が回復しました!ボタンのどこを押してもしっかり1クリックです。基盤を熱しすぎたので他のスイッチの故障が心配でしたがそれも問題なしです。よかったです。

f:id:ng-r:20171007144619p:plain

 

M570はチャタリングが多いそうで、私も「m570 オムロン」「m570 修理」とかで検索して他の方の修理例を参考に修理を行いました。

はんだ付け初心者でもそれなりに出来ましたので、練習がてら挑戦してみてはいかがでしょうか。

gcc MinGW 日本語 文字化け Geany c言語

キーボードピアノ(Beep音)/C言語サンプル ソースプログラム/佐伯英子技術士事務所(情報工学)

上記サイト様のサンプルをwindows7MinGW環境にて

Geany1.29にプログラムをコピペしてビルド実行したところ

日本語部分が文字化けしてしましました。

 

考えても仕方ないのでタイトルまんまでググりました。

 

そもそもgccだとかコンパイラだとかというのをいまいちよく理解しておらず

当初cygwinを導入したのですが、MinGWのが初心者にはいいぞとか聞きまして、それぞれの区別もよくついてませんが、どうもMinGWを後から入れても大丈Vとのことでいれてみたのです。

 

結果、文字化けの原因は文字コードがCP932だのUTF-8だので云々がどうのこうのだとのことなんだそうです。

どんぴしゃ同じGeany環境でどうこうしている人はあまりいないみたいでした。

コマンドプロンプトでこうやりなさい」みたいなことを書いてあったのでテキトーにその内容を勘で当てはめ

f:id:ng-r:20170911001940p:plain

こんな感じの設定にしたら解決しました。

よかったよかった。

 

Linux Let'note S9のホイールパッド有効化をしました

ホイールパッドというのは ↓ コレ ですね。

f:id:ng-r:20170818183617p:plain

フチのメタル部分に触れながらクルクル擦ってあげると

ページをスクロールすることが出来て非常に便利です。

 

が、ubuntuを入れるだけでは使えません。

ホイールパッド使いますよーと設定に書き加える必要があります。

 

ですので、こちらのブログ様を参考に作業を行いました。

addnote.hatenablog.com

 

既に一度、Linux mintで有効化したことありまして、楽勝楽勝とテキトーに

取り掛かったところ、初っ端から「sudo vim ~~~」と入れても上手くいきません。

ubuntuに初期で入っているのは「vi」のようで、「vim」というのは進化版みたいなもんらしいです。追加で入れてやらないといけないようです。

 

しかし「vi」だか「vim」だかよくわからんけどまぁいいやと

vim」のとこ「vi」にすりゃいいんじゃないかな?とviで開き

おぼつかないコマンド操作をして内容を書き換え再起動した結果

「/dev/sda1:clean,~~/~~~ files,~~/~~~ blocks」と表示され起動しなくなりました。

 (~~部はその都度数値が違う)

 

そういえば内容書き換える時に打ち間違えて「:q!(保存せず終了)」してまた開いて編集を何回か繰り返した時、英語でよくわからない警告みたいなのでてたなぁ。

 

とりあえず「/dev/sda1:clean」辺りでググりましたところ

「インストールが上手くいっていないのでは?」

intelGPUが影響を」とか出てきてよくわかりませんでした。

 

なので

Ctrl + Alt + F1(~F6のどれか)を押して 仮想コンソール なるものを使い

先ほど書き換えてしまった箇所を消し、上書き保存、再起動してみました。

無事起動してくれました。しかしひとまず振り出しに戻りました。

 

 今度は反省して参考ブログ様の方で使われている「vim」を入れて再度挑戦。

f:id:ng-r:20170818221430p:plain

viだと全部英語だった警告文がvimだと結構日本語になってくれました。

・・・「E325:注意」でググりました。

 

こちらのブログ様より

でぃおさんの背伸びしてみる|E325: ATTENTION というエラー

スワップファイル(.swp)てのが壊れちゃってるから消したらいいよってことのよう。

なんかポチポチしてたら削除できました。

 

そして中を開いて

f:id:ng-r:20170818215804p:plain

ファイルの一番下に8行に

 

 Section "InputClass"

  Identifier "touchpad catchall"

  Driver "synaptics"

  MatchIsTouchpad "on"

  MatchDevicePath "/dev/input/event*"

  Option "CircularScrolling" "1"

  Option "CircularScrollTrigger" "0"

 EndSection

 
とだけ記述し、上書き保存。再起動。

今度は無事に起動して、ホイールパッドも使えるようになりました。

 

Linux mint の場合はその後コントロールパネルでいじくる必要があるようですが

ubuntuは設定ファイルに書き加えて再起動するだけでOKでした。

 

これでやっとlet'snote使ってるぜ感が出てきました。めでたしめでたし。