なにかする。

手を動かした履歴or日記

ラズパイ3をLAN経由でセットアップしみてる

やりたいこと

  • ラズパイをディスプレイとキーボードを別途用意しないでセットアップしたかった。

用意したもの

1. ラズパイ用メディアの作成

  1. Raspberry PiのサイトからOSのイメージファイル(2017-11-29-raspbian-stretch.img)をダウンロードする。 https://www.raspberrypi.org/downloads/
  2. DD for Windowsをシリコンリナックスのサイトからダウンロードする。 http://www.si-linux.co.jp/techinfo/index.php?DD%20for%20Windows
  3. DD for Windows管理者権限で実行する。
  4. "ディスクの選択"から書き込み先のSDカードを選択する。
  5. "ファイル選択"からダウンロードしてきたOSのイメージファイルを選択する。(ファイルの選択をAll files変えると選択できるようになる)
  6. 書き込みを実行する。(警告のダイアログはすべて"はい"を選択)
  7. 書き込み完了後、フォーマットしますか?とダイアログが出た場合はキャンセルする。
  8. 書き込みしたSDカードのトップに"ssh"という名前のファイルを作成する。

2. Raspberry Pi の起動

  1. ラズパイにSDカードを挿入し、ルーターとLANケーブルで接続する。
  2. ラズパイと電源を接続する。

3. パソコンからRaspberry Pissh経由で接続する

  1. TeraTermをダウンロードしてインストールする。 http://www.vector.co.jp/soft/win95/net/se320973.html
  2. advanced ip scannerをダウンロードしてポータブルバージョンで起動する。 http://www.advanced-ip-scanner.com/jp/
  3. advanced ip scannerでスキャンを実行する。 f:id:iketta11hkd:20180124002948j:plain 左端のアイコンが青色表示かつ製造社が"Raspberry Pi Foundation"となっている行のIPアドレスを確認する。
  4. TeraTermを起動して、HOSTの項目に"pi@[3.で確認したIPアドレス]"を入力して"OK"ボタンを押す(security warningが表示されたときは"continue"を選択する)
  5. passphraseに"raspberry"と入力して"OK"ボタンを押す。

pi@raspberrypi:~ $

teratermのターミナル上に表示されていれば、起動したラズパイに接続できている

ということで、おしまい。

Qt5でhello

前回、ターミナルからqtcreatorの起動までやった。
けど、そこから先がわからなくてQt本買ってみた。

www.oreilly.co.jp

1.helloがしたい

目標:タイトルバーに"hello"と出して"終了"ボタンで終了するアプリケーション。

まずは"hello"と言う名前のディレクトリを作って、中に"main.cpp"を作る。

$ mkdir hello
$ cd hello
$ touch main.cpp

作ったmain.cppの中身を本を参考に書く。

//main.cpp
#include<QApplication>
#include<QLabel>
#include<QPushButton>

int main(int argc, char *argv[])
{
  QApplicationapp(argc, argv);
  QLabel *label = newQLabel("hello");
  QPushButton *button = newQPushButton("終了");

  QObject::connect(button, SIGNAL(clicked()), &app, SLOT(quit()));

  label->show();
  button->show();

  return app.exec();
}

2.qmakeが通らない

hello内にプロジェクトを作ろうとした。

$ qmake --project 

すると

qmake: could not exec '/usr/lib/x86_64-linux-gnu/qt4/bin/qmake': No such file or directory

とそんなものないと怒られた。

3.プロジェクトファイルを作れるようにする

必要なパッケージが無いようなので入れる。

$ sudo apt install -y qt5-qmake qt5-default

パッケージを導入してからqmake --project すると、hello.proが無事できた。

4.makeが通らない

プロジェクトファイルが無事できたので、Makefileを作る。

$ qmake hello.pro

これでMakefileができるのでmakeする。

$ make

すると

main.cpp:1:23: fatal error: QApplication: そのようなファイルやディレクトリはありません

とまたもやそんなものないと怒られた。

4.makeできるようにする

参考にした本はQt4。使おうとしている環境はQt5。
という事でQt5向けに変更する。

//main.cpp
#include<QtWidgets/QApplication>  //Qt4では#include<QApplication> 

ただ、このままビルドしても

main.cpp:2:17: fatal error: QLabel: そのようなファイルやディレクトリはありません

とさっきとは異なるものが無いと怒られる。
なので今度はプロジェクトファイルもQt5向けにも変更する。

//hello.pro
QT+=widgets  //これをプロジェクトファイルの末尾に追記

これでようやっとmakeが通った。

5.helloする

makeすると"hello"と言う実行ファイルができるので、実行する。

$ ./hello

"hello"が見つからない。
f:id:iketta11hkd:20180121023805p:plain

と思ったが、ウィンドウを右に伸ばしたら無事出てきた。
f:id:iketta11hkd:20180121023807p:plain

ということで、おしまい。

windows on ubuntu on Qt5を始めてみた

まずはプライバシーポリシーを書いてみると言ったが嘘だ。 (ただ、そのうち調べて書く。)

何故か唐突にGUIを作ってみたくなったのでQt使ってみる。
とりあえずインストールしてqtcreatorの起動まで。

1.やってみた環境

windows10 64bit上で起動した、virtualbox 5.1.22上のubuntu 16.04 LTS

2.とりあえずインストーラーを落としてくる

ターミナルを起動して以下のコマンドを実行。
ダウンロード完了を待つ。

$ wget http://download.qt.io/official_releases/qt/5.10/5.10.0/qt-opensource-linux-x64-5.10.0.run

3.インストールする

続いてインストーラーに実行権限を与えて、インストールを実行する。

$ chmod +x qt-opensource-linux-x64-5.10.0.run  
$ ./qt-opensource-linux-x64-5.10.0.run
  • ユーザーアカウントは作らなかった
  • インストール対象としたコンポーネントは、後々どれ使うかわからなかったので全て

3.インストールする

他にインストールが必要なものをインストールする(C++コンパイラ、汎用フォント設定ライブラリ、OpenGLのライブラリ、追加パッケージ)

$ sudo apt-get install -y build-essential libfontconfig1 mesa-common-dev libglu1-mesa-dev

4.ターミナルからqtcreatorを起動できるようにする

パスを通して、設定を反映する。

$ echo 'export PATH="[Qtをインストールしたディレクトリまでのパス]/Tools/QtCreator/bin/:$PATH"' >> ~/.profile
$ source ~/.profile

ターミナルからの起動は

$ qtcreator

参考にしたところ

Qtのwiki

はじめてみた

何故に始めたか

  1. 人に伝えるための文章の練習
  2. markdown書いてみたい
  3. やった事を思い出すための忘却録

方針

  1. 無理しない
  2. でも何かやったんなら書く
  3. 未完成でもとりあえず公開する

こんな感じかな。
ゆるふわで行こう。

次はプライバシーポリシーでも書いてみようかな。
あったほうがよさげだし。

おしまい