パソコン・メモメモ備忘録

気の向くままパソコン関係等で気になることを書き記す。時々更新!

開発は大変

この歳にもなって、仕事でプログラムを書いていたりするのだが、最近は、他の仕事もあって、プログラミングに専念する時間は少ない。一日、日本語や英語は書いても、プログラム言語を1行も書かないことも多い。そうなると、なかなかスキルは状態しない、というか落ちていく一方な気がしたり。

ここ数日、wxWidgets を使ったプログラムを書こうとしたのだが、サンプルプログラムを実行できるようになるまで、結構な時間を掛けてしまった。それなりにユーザーのいる GUI フレームワークなのだが、Visual C++ でビルドするのに手間取った。Visual C++ で面倒なのは、同じソースコードコンパイルしても、色々な種類のバイナリができて、それらが上手くリンク出来ないことがある、ということ。

まず、Win32 か x64 か、まぁ、それはいいとして、C++ の基本ライブラリ等の マルチスレッド、マルチスレッド DLL、スタティック、スタティック DLL。後は、デバッグ用かリリース用か。後、文字コード
Unicode かマルチバイトか、みたいなのも。どんだけ種類あるねん。さらに、Visual C++ 自体のバージョンも色々、VC9 とか VC15 とか。なんだかなぁ。

その辺りがリンクする全てで揃っていたのに、今回は上手くリンクができず。結局は、プロジェクトのプロパティのリンカーのシステムのサブシステムが Console になっていて、Windows になっていたのが敗因だった。wxWidgets は、GUI のパーツ等は、そのプラットフォームのものを使うので、コンソールアプリとしてプロジェクトを作ってしまうと、駄目ってことなのかな。気づけば簡単な事だが、見つけるまではかなり大変だった。main が無い、とか、wxEntry がなんちゃらとかのエラーが出ていた。

どこかの先人の知恵で、コンソールアプリから始めていたような気がしたのだが。勘違いだったのかもしれない。こういうのに関する検索力も足りてないのかな。