2012年9月27日木曜日

プラグインのインストールについて

最近問い合わせが来るものの大半が以下の内容なので、それについて回答を載せておきます。

プラグインをやみくもに入れると起動時に以下のエラー表示がされることがあります。

ID confliction : ProductID:********  PluginID:********
    used: C:\Users\****\AppData\Roaming\Metasequoia\Plugins\******\******.dll
    ignored: C:\Program Files\Metaseq30\Plugins\******\******.dll

******.dll : Failed to load.
  Not loaded normally. Maybe a required runtime is not installed, or the file is broken.


上側については表示されている2つのフォルダに同じプラグインが重複して存在しています。ignoredのほうのファイルを消してください。

下側は英文で表示されている通りですが、必要なランタイムがインストールされていません。ダウンロードサイトか当該プラグインに添付のドキュメントに記載されているインストール方法に従って、必要なランタイムを入手してインストールしてください。

ランタイムが既にインストールされているのにメッセージが表示される場合、ファイルが壊れている可能性があります。プラグインを再度入手してインストールし直したり、ハードディスク・SSDの物理的故障がないかディスクチェックで調べるなどしてください。

いずれにせよ、プラグインは一つずつインストール方法を確認しながら入れるようお願いします。

2012年9月24日月曜日

新BBSの仕様案

Ver3.1のリリース準備もしないといけないのですが、並行してBBSの作り直しを行っています。会社勤めしてた頃も含めてWebプログラミングって既存のコードをちょっと改造するくらいしかしたことないので、ちょっと手間取ったりもしていますが、既存のBBSに近いくらいの機能はだいたい出来てきました。

仕様としてはだいたいこんな感じを予定。(○は既存からあるもの、●が新規追加機能)
○通常表示、ツリー表示の切り替え
○記事の投稿、ファイルのアップロード
○記事の削除(管理者のみ可)
○「対応済み」「対応不要」などのステータス管理(管理者のみ変更可)
○ステータスでの絞込み表示
●タイトル・本文・投稿者での検索
●レスがついたときの投稿者へのメール通知(任意)

BBSとしては基本的な機能くらいは備えていると思いますが、他のBBSだとこんな機能があって便利とかそういうのがあれば教えてください。

あと、今はBBSを要望・不具合報告用に限定していますが、普通の質問や雑談に使えるものもあったほうがいいでしょうか?管理の面倒を増やしたくなかったのと、昔だとStudioMOMOなどの外部サイトで人が集まるところがあったので、わざわざ公式のものを設ける必要もないかなと思っていたのですが、最近はそういうサイトが見当たらない気がします。2ch/mixiもすっかり閑古鳥ですし、単に需要がないのか、それとも適した場所がないのか、あるいは自分が知らないだけなのか。(MOMOってまだあるのかなと思って探してみたら跡形もなくなってますね・・・)

9/28追記:記事を書いた時点でアクセスできなかっただけで、まだ残っているようです。

2012年9月22日土曜日

Qtの32bit/64bit版両方をビルド

Webで探すとQtのビルドの方法はいろいろ見つかるけれど、微妙に書いてあることが食い違っていたり、さらに64bit版のビルドについてはあまり詳細に書いてないことが多いので、自分がやった内容をまとめてみた。

目標は統合開発環境であるQt Creatorは使わず、Visual Studio 2010上でQtを使ったプロジェクトをビルドすること。

まず、Qtのダウンロード。古い記事にはNokiaのサイト内にリンクされているものが多いが、これはもう古い。オープンソース版は下記URLからダウンロードする。
http://qt-project.org/downloads

ダウンロードするものは以下。(執筆時の最新版は4.8.3)
・Qt SDK
・Qt librariesのソースコード(zipまたはtar.gz)
・Qt Visual Studio Add-in

Qt SDKのインストール
Qt SDKは一式が揃ったものだが、今回は自前でビルドするので本当は必要ない。ただ、サンプルをビルドして確認するのに便利だったり、あと後述で使うjomツールが入っているので、ダウンロードしてインストールする。

ソースコードを展開
Qt librariesのソースコードを「C:\Qt\4.8.3」に展開。展開の際に「C:\Qt\4.8.3\bin」などのフォルダが生成されるようにする。

DefaultLocalizationStrategy.cppの修正
C:\Qt\4.8.3\src\3rdparty\webkit\Source\WebCore\platform フォルダにある DefaultLocalizationStrategy.cpp をエディタで開いて、325行目と327行目にある全角のダブルクォーテーションを半角の「'」に書き換える。こうしないと後のコンパイル時にエラーが発生する。(ソースを書き換えずにエンコードを変えるだけでもいいらしいが試していない)

64bit版用フォルダの用意
「C:\Qt\4.8.3」のフォルダの内容をそのまま「C:\Qt\4.8.3_x64」にコピーする。

同一のソースコードを32/64bit版で別々のフォルダに複製して用意するのはディスクスペースの無駄のように思えるが、こうしないとVisual Studio Add-inにとって都合が悪い。(他のサイトではビルド後にbinやlibフォルダを退避するだけでいいというのがあったが、これを参考にしてしまったためにかなり嵌ってしまった)

32bit版のビルド
スタートメニューからVisual Studio Tools内にある[Visual Studio コマンド プロンプト (2010)]を呼び出して、次の順に実行する。

まずbinフォルダにパスを通すため次の行を実行。このフォルダにはビルド中に必要なツール入っている。
PATH=%PATH%;C:\Qt\4.8.3\bin

それからQtの先頭フォルダに移動。
CD \Qt\4.8.3

そしてconfigureでビルド環境に応じたファイルを生成する。(Visual Studioのバージョンが違う場合、-platform以降を変更する必要がある)
configure -debug-and-release -D _CRT_SECURE_NO_WARNINGS -platform win32-msvc2010
このとき途中でオープンソースと商用版どっちを使うかを聞かれるので、oを指定。次の確認でyを指定。15分程度かかる。

そしてビルド。
 \QtSDK\QtCreator\bin\jom.exe -j 4

最後の数字は並列コンパイルを行うコア数なので、使用環境に応じて変更する。ただ、ディスクアクセスが多いので、多分これ以上の数字にしてもあまり意味がないかもしれない。

また、標準的なビルド方法としてはnmakeを使うとなっているが、これだと並列コンパイルができないので時間がかかりすぎるのでお勧めしない。ただ、jomを使って並列コンパイルしても2時間近くはかかるので注意。

これで32bit版は完成。

64bit版のビルド
「C:\Qt\4.8.3」のフォルダを「C:\Qt\4.8.3_x64」に置き換えて、32bit版とまったく同様に行う。ただし、コマンドプロンプトの呼び出しにはVisual Studio Tools内にある[Visual Studio x64 Win64 コマンド プロンプト (2010)]を用いる。

Visual Studio上での設定
Visual Studio Add-inをインストールしてからVisual Studioを起動すると、メニューに「Qt」が追加されている。この中の「Qt Options」を呼び出し、以下のように名前・パスを32bit/64bitのそれぞれで登録する。(実際は名前はなんでもいい)

Name Path
4.8.3 C:\Qt\4.8.3
4.8.3 x64 C:\Qt\4.8.3_x64

メニュー[ファイル > 新規作成 > プロジェクト]を呼び出すと、[Qt4 Projects]という項目が追加されているので、この中にある[Qt Application]を選んでそのまま進めていくと、Qt用のプロジェクトができあがる。

作成されたプロジェクトは32bit用なので、メニュー[プロジェクト > 構成マネージャー]でアクティブソリューションプラットフォームにx64を作成して、これをアクティブソリューションとして選んでおく。

そして、ソリューションエクスプローラ内のソリューションの項目(つまり一番上のもの)上で右クリックし、[Change Solution's Qt Version]を選んで、使用するQtのバージョンに適切なものを選ぶ。この項目は32bit/64bit別々に記憶されるので、最初に一度指定すれば後でアクティブプラットフォームを切り替えても大丈夫。

これでWin32/x64それぞれのソリューションをビルドすれば32bit版/64bit版の実行バイナリがそれぞれ出来上がって完成。


お疲れ様でした。以上の工程は自分が実際に行ったもので、必ずしもこの手順が最も良いというわけではないと思いますが、せめて一助になれば幸いです。

2012年9月19日水曜日

Metasequoia Ver3.0.5 公開

シェアウェア版Metasequoiaの最新版を公開しました。このバージョンでは光源を逆光に設定して保存したmqoファイルを読み込むとエラーが発生することがある不具合、およびプラグイン実行時に関する不具合を2件、計3件の修正を行っています。

発生頻度が高いものではありませんが、不意なデータ破損につながりかねないので、できるだけ早急にアップデートしてお使いいただくようお願いします。

2012年9月17日月曜日

BBSの仕様の一部変更について

要望・不具合報告用に設置しているBBSですが、仕様を一部変更しました。削除については管理者のみが行えるようにしました。

どうも一度書き込んだ内容を安易に削除する方がいらっしゃったようですが、基本的に書き込みが無駄になることはほとんどありません。例えば不具合と思って書き込んだ内容が勘違いであったとしても、それは削除せずに訂正を入れる方が価値があります。なぜなら同じ勘違いをする人が防げるかもしれないし、またなぜ勘違いをしたかの過程がわかればもっと勘違いしにくい仕様に変更するということもできるからです。単に削除されてしまうと何の価値もなくなってしまいます。要望についても同様で、書いた後になってやっぱり必要ないと思ったとしても、なぜそう考えたのかの理由が重要だと思います。明らかに実現不可能と思える要望であっても、将来実現可能に変わることもあるので、消す理由は存在しません。

どうしても削除が必要な場合は削除依頼をお願いします。ただし内容によっては削除を断る場合もあります。また、誹謗中傷やプライバシーの侵害など、違法行為あるいは他人の気分を害するような含む内容については管理者の判断で削除することがありますので、ご了承ください。

あと、ついでのお願いですが、書き込む際は無駄に長文にせずに簡潔にまとめていただけると助かります。長文が続くと読んでるうちにだんだんしんどくなってしまいます。ただ、要望についてはその理由や使い方の説明は必ず書いてください。機能を実装するときは、なぜ必要なのか、どのように使うかをイメージするところから始まりますので。

2012年9月16日日曜日

Ver3.1以降の開発計画


LE版はようやくR3.0をリリースしたばかりですが、シェアウェア版はVer3.1の開発も最終段階に入って正式リリースが近づいてきました。4か月前の計画ほぼその通りに来ていて、それを書いた時点ではまだ目途が立っていなかった機能もいくつか実装できたので、自分としては悪くない内容だと思います。

今後についても特に変化はありません。Ver3.1リリース後はVer4.0の開発に入ります。Ver3.1の開発と並行して研究開発を進めていた機能なんかもありますが、それ以外は具体的な部分がまだ何もまとまっていないので、割と大きめの変更を伴う要望があればBBSにお願いします。もちろん些細な小変更の要望もOKです。

Qtも以前の記事を書いてから全然検証が進んでいなくて、まだ本採用できるかどうかわかってないので、やることが山ほどあるなと思ってしまいます。

MetasequoiaLE R3.0 公開

フリーソフト版LEもVer3.0をベースとしたものにバージョンアップしました。シェアウェア版と同様の表示の高速化・高品質化が行われ、複数光源も利用いただけます。その他、さまざまな改良・修正が行われていますので、R2.4など旧バージョンをお使いの方はアップデートしてご利用ください。

2012年9月13日木曜日

Metasequoia Ver3.1 Beta6

Beta6を公開しました。今回の更新では材質の複数選択ができるようになりましたが、それ以外は不具合修正などで大きな変更はありません。

本当はもう出来ているものの諸事情でまだ組み込んでいない機能が残っていますが、機能面ではこれでほぼ完成です。ベータまたはリリース候補版としてあと1回くらい更新してから、Ver3.1.0として正式公開となる見通しです。

※追記
BBSにも報告がありましたが、バージョン表記はBeta5のままになっています。開発ソフトがたまにバージョン等のリソースを更新してくれないバグっぽい?

2012年9月7日金曜日

Metasequoia Ver3.1 Beta5 公開

β版を更新しました。先月は更新しなかったので、約2ヶ月ぶりです。

今回は特筆すべき改良点というほどのものはありませんが、Beta5以前のβで完成度の低かった機能を強化したり、生じていた不具合を修正したのが中心となっています。

まだファイルの関連付けができないなど未完成機能が残っていますが、あと1回か2回くらいβ版を出してからVer3.1は正式リリースとなる見通しです。