Author Archives: admin

wxWidgetsの使い方 その2 MingWとEclipseCDT

連載

その1
その2
その3

環境

Windows 8 32bit

MingWのインストール

公式からインストール、ここではC:\local\MinGWにインストール。パッケージは以下
clipshot-2016-12-03-00-01-05

wxWidgetsのビルド

公式からwxWidgets-3.0.2.7zをダウンロードして、C:\local\wxWidgets-3.0.2に展開。

C:\local\MinGW\msys\1.0\msys.batを実行しmsysを開く。

Debugでビルドする。

成功すればC:\local\wxWidgets-3.0.2\lib\gcc_lib以下にファイルができる。

EclipseCDTのインストール

公式からダウンロード、ここではeclipse-cpp-neon-1a-win32.zipをダウンロードし、C:\local\eclipseに展開。

起動用バッチC:\local\eclipse\start.batを作成。

start.batから起動し、C++プロジェクトを作成
clipshot-2016-12-03-00-23-24

C++ソースhello.cppを追加し以下のように作成。

ここではプロジェクトのパスなどの設定は環境変数で行う。このプロジェクト自体をLinuxでも開きたいのでそうする。start.batを以下のように書き換える。

ビルド確認のため、-Wl,–start-group-Wl,–end-groupを指定している。このフラグはライブラリの循環参照をしてくれるため記述の順番を考慮しなくていい。しかし遅くなるとのことなのでいったんビルドが成功したら外したほうがいいがその時リンクエラーになるかもしれない。

ここで作成したCPPFLAGSWXLIBFLAGSをプロジェクトの設定で追加する。
clipshot-2016-12-03-18-54-56

clipshot-2016-12-03-18-56-38

ビルドして実行

clipshot-2016-12-03-19-30-20

リリースバージョンも含めてちゃんとつくる

wxWidgetsのビルド

start.bat編集

プロジェクトの設定でCPPFLAGSとWXLIBFLAGSを変えてDやRをつける。デバッグはD、リリースはR

デバッグしてみるとデバッガのステップがおかしい、-O2でビルドされているかもしれないがスルー

wxWidgetsの使い方

連載

その1
その2
その3

wxWidgetsはクロスプラットフォームなGUIライブラリ、ここではWindowsでアプリをつくってみる。

環境

Windows 10
Visual C++ 2008 Express

インストール

公式からwxWidgets-3.0.2.7zをダウンロードして、C:\local\wxWidgets-3.0.2に展開。
VC2008でC:\local\wxWidgets-3.0.2\build\msw\wx_vc9.slnを開く。
Debugでビルドする。
成功すればC:\local\wxWidgets-3.0.2\lib\vc_lib以下にファイルができる。

アプリ作成

VC2008を新規に起動し、新しいプロジェクトを作成、場所や名前は任意。
clipshot-2016-12-02-06-05-36

空のプロジェクトを選択
clipshot-2016-12-02-06-06-56

新しい項目の追加でmain.cppを追加
clipshot-2016-12-02-06-07-53

プロジェクト設定

追加のインクルードディレクトリで
C:\local\wxWidgets-3.0.2\includeC:\local\wxWidgets-3.0.2\lib\vc_lib\mswudを追加。
clipshot-2016-12-02-06-12-13

追加のライブラリディレクトリでC:\local\wxWidgets-3.0.2\lib\vc_libを追加
clipshot-2016-12-02-06-13-22

コマンドプロンプトで以下を実行してインポートするライブラリ一覧を得る。今はデバッグビルドしかしてないので全部デバッグライブラリ。リリースライブラリも同じディレクトリにできるのでリリースの設定の時はいったん全部削除したほうがいい。

上記のライブラリと、Rpcrt4.libComctl32.libを追加のライブラリに加える。(上記のライブラリは本当に全部必要かは分からないが面倒なので全部指定した。)
clipshot-2016-12-02-06-22-04

main.cpp

以下を作成。

ビルドして実行

clipshot-2016-12-02-06-25-16

fedoraでデスクトップ環境を変える

fedora25で実験。デフォルトはすごく重かったので変えようと思ったけどいつの間にか普通になったけど。

一覧の列挙

インストール

デスクトップの変更

ログアウトしてから選択できる。

a

ループバックオーディオでPCから出ている音を録音する

XPで実験

VB-Audio Virtual Cableをインストールしてリブート

デフォルトのオーディオの出力を「VB-Audio Point」にする。
clipshot-2016-11-30-06-29-08

audacityをインストールして実行
入力デバイスで「VB-Audio Point」を選択
%e3%82%af%e3%83%aa%e3%83%83%e3%83%97%e3%83%9c%e3%83%bc%e3%83%89

録音ボタンを押して録音を開始、次に再生するアプリを起動して音を出す。正常に録音されていれば波形が流れる。
clipshot-2016-11-30-06-34-19

終わったら停止ボタンを押してから、[ファイル][オーディオの書き出し]で各種フォーマットで保存する。

Windows + MingW + Eclipse CDTでWindowsアプリをつくる

WindowsXPだとできない。Windows8.1でやる

MingWをインストール

http://www.mingw.org/
ここではC:\local\MingWにインストールする。

clipshot-2016-11-28-08-16-22

clipshot-2016-11-28-08-20-47

Eclipse CDTをインストール

makeにパスを通すため以下のバッチファイルを作成してこれで起動する。

パスが通ってるかはProcessHackerなどのツールで確認する。
clipshot-2016-11-28-08-32-28

XPだとメモリ問題で起動しないのでeclipse.iniを開いて-Xmx1024mを削除して起動。
[File]→[New]→[C++Project]を選択
clipshot-2016-11-28-08-34-48

Cross Compiler Pathを設定
clipshot-2016-11-28-08-36-31

プロジェクトができるので[Project]→[make all]でビルドする。
成功するとDebugディレクトリに実行ファイルができる。

デバッグの設定

RunDebug Configurationsを選択して以下のように設定
clipshot-2016-11-28-08-40-24

Debugボタンをクリックするとmainで止まってデバッグできる。

Win32アプリ

ソースファイルを以下のように変える。

コンソールを出力させないようにリンカオプションに-mwindowsを加える。
clipshot-2016-11-28-09-27-07

Debug Configurationを開いてmainで止まらないようにする。

xfceのアプリメニューにランチャーを登録

環境

Xfce Version 4.12
Ubuntu 16.04.1 LTS
kernel 4.4.0-45-generic

.desktopファイルを作る

~/.local/share/applications/v2c.desktop をテキストファイルとして作成し、以下を入力

これはv2cというアプリを登録した場合の例。Categoriesがサブメニューのどれかになる。NetworkにするとメニューのInternetに登録される。詳しいことは不明