投稿

Ubuntu 10.4 Netbook edition EeePC900HAへインストール

USBメモリ(SDメモリ)を準備 1G以上 Ubuntuからインストール、netbook-edition.isoをDL( WindowsでUSB転送できたがインストーラ起動失敗) usb-creator-gtkから作成、一度USB(SD)の内容を消してから、転送 EeePCのBIOS(900HA)はBootシーケンスにくせがあり、HDDでUSB Memoryを1、HDDを2した後、ブートシーケンスにUSBが現れるのでそれのみにする。 起動するとインストーラーが立ち上がる。 e.g ex4:65G sqa:1.6G インストール後、BIOS:HDD設定でHDDを1にし正常に戻す。 起動後 Language Supportで日本語をインストール

QtとMFC

1年前からライセンスの変更を元に使い易くなったQt。 DesktopアプリでWindows用をつくる。 もしくはMFCを使うという開発を過去のものにしたのかもしれない。 まぁ、時勢でしょう。(それに.NETは将来不安かも!?) ところでMFCで作られたソースをQtへ移植したい、という要望があると思います。 テストをしながら少しずつ移行するのが一番安全な方法でしょう。 以下のQtのサイトにひとつのアプリケーションでMFCやWin32とQtが使えるフレームワークが提供されています。 もちろん、MFCやWIN32が存在する限りLinuxやMacOSX(将来はandroidやiphone?)では動作しませんが、移行期間としては仕方がないでしょう。 Qt/MFC Migration Framework

Qtについて

ディスクトップ向け開発でクロスプラットフォームといえばNokia  Qt(キュート) 興味ある開発フレームワークだが、しかし、現時点ではホットなプラットフォームであるAndroidやiPhoneに対応していないのが残念である。 iPhoneはある程度実現できても(AppleやNokia自身が邪魔しなければ、だが)、JAVA VM上であるAndroidへの開発は時間がかかるかもしれない。(あるとすればNDK経由か?) 参考:Qt for android (NDK使用) ついでだが。。。。   Qt CreatorというQt専用の軽いIDEがあるがTutorialをおこなうときに   英語で実行したい。 そのときはQtCreatorの実行コマンドラインの頭にLANGを英語に、   指定するといつも英文で開発ができる。ただし、現時点1.3.1(64bits)では日本語入力ができなくなる。 e.g.   env LANG=en /home/develop/qtsdk-2010.02/bin/qtcreator PS1 QtをINSTALLの際、コンパイルで2,3度止まることがあるが、エラーをサーチするとコンパイルを再開する方法がみつかるので焦らないこと。 コンパイルは2,3時間かかる。 PS2   クロスプラットフォームでは wxWidgets も有力

Goolge Testを3プラットフォームへ

Windows, Linux, MacOSXでGoogle Testを試した。 (すべてOS64bits環境) Google Test 1.5.0 WindowsはVisual Studio 2005 Linux(Ubuntu)はautomake MacOSはXcode3.2.2 で動作した。 しかし、それぞれプロジェクトに組み込むのには癖がある。   ボクはWindowsに慣れているため、比較的スムーズにいき、   automakeも、あまりハマることもなる組み込めた。が、   Xcodeには苦労した。 理由はドキュメントが英文なのだが、   肝心のXcodeは日本語表示のため、ドキュメントがすんなりと、   わからない。また、Xcode特有のライブラリ管理を理解するのに、   苦労したためである。 解決の糸口はXcodeを英語化した     (OSの言語を英語を最優先へ)のが大きかった。  やはり、どんな環境でも開発ツールの表示は英語が一番と、 再認識した。 3つの開発環境で、JavaのようにUnitテストが、 しやすいのはXcode(動作するのに一番手間取ったがそれは僕の無知)の、 印象があるが、これは使いこなしていく上で印象がかわるかもしれない。  

開発言語を知る

「開発言語」知るというのは、そのまわりのライブラリや開発環境をある程度使いこなせて、初めて知った。と言える。 条件文やテンプレート、抽象化クラスを覚えたって、単に土台を知っただけのことである。 そこからが長い。 ボクはJAVAやPAYTHONの文はある程度覚えたが、単に土台だけである。 JAVAでいうとantなどのTaskカスタマイズができるかといえば、できないし、UnitTestを組み込むのもテンプレートなしではままならない。 mavenなどもモノマネの範囲である。 そのため、深く理解する時間が欲しい、休日が少ないのは当たり前。

GoogleTestとVisual C++ (VC++)

Google TestをVC++と使う上で注意。 DLLとして利用する場合、staticとして利用する場合、linkerよって、それぞれ破棄されないように注意。 see   staticとして利用する場合、 参照されないデータを保持する (/OPT:NOREF) を設定せよ。 シンボルが破棄されない。 gtestのライブラリをDLLとしたら、使う側もDLLとする。  gtestのライブラリをstaticとしたら、使う側もstaticとする。 以下はついで、プロジェクト->プロパティ->構成プロパティの全般->共通ランタイムサポートを使用しない /clrオプションを無効にし、  C++ -> コード生成、ランタイムライブラリ(/MT or /MTd)を指定。 移植性と管理の簡単さのため、C++のオプションに/FI stdafx.hを追加し、各ソースから#include "stdafx.h"を取り除く      PS  gtest.slnとgtest-md.slnの違いは、 両者はともにスタティックライブラリとして作られるが、コンパイル・コード生成の違いで、 Cランタイムライブラリを前者はスタティックライブラリ、後者はDLLライブラリとして使用するようだ。

SWIGとpython2.6.5

SWIGのサイトにあるtutorialがそのままでは動作しなかったのでメモ  gcc -fPIC -c example.c example_wrap.c  -I/home/userp/develop/Python-2.6.5 -I/home/userp/develop/Python-2.6.5/Include/  ld -shared example.o example_wrap.o -o _example.so 以上で動作した。 PS OS Ubuntu 10.4Beta2(64bits) SWIG  1.3.40