B.2. 一般情報

B.2.1. Q: GnuCashはWindowsで動作しますか?

A: リリース2.2.0からGnuCashをWindowsで利用可能です。

他の関連するオプションとしてcolinux、VMWare、およびWindowsベースのXサーバーでリモートサーバーで提供されているGnuCashセッションを利用できます。

B.2.2. Q: GnuCashをコンパイルするのは難しすぎます!

A: 1.6.0がリリースされたとき、これはたぶん真実でした。それは今日、もう真実ではありません。ほとんどすべてのディストリビューションがすべての必要なライブラリを提供するからです。(g-wrapを除きます。GnuCashをコンパイルする前にインストールする必要がある「一つの」追加ライブラリが実際には存在します。)しかしながら、デフォルトではディストリビューションは必要なライブラリの開発パッケージをインストールしません。あなたのディストリビューションのインストーラプログラムを開始させて、ライブラリパッケージだけではなく、開発パッケージもインストールするように設定する必要があります。一般にこの問題はGnome領域の多くのアプリケーションに関係する問題です。また、これは「1個の一体構造のGnomeパッケージ」になっていないという事実まで波及します。

B.2.3. Q: GnuCashには帳票作成に利用可能なバッチモード (非対話型) などがありますか?

A: いいえ、現在のところGnuCashは対話的に実行しなければなりません。

B.2.4. Q: 複数人がGnuCashの同じデータファイルにアクセスできますか?

A: 同じデータファイルへのアクセスを複数人で行うことができます。しかし、同時にデータファイルを使用できません。

複数人でアクセスできるように設定するためにはすべての人々がファイルを含むディレクトリへの読書きアクセス権を持たなければなりません。(他の人が作ったファイルを読み込むためと、新規のファイルを作成するためです。) これを行う一つの方法は、ユーザーグループを作成しデータディレクトリをグループで共有利用可能なようにモードを2775に設定します。「2」はディレクトリのすべてのファイルのパーミッションをコピーするsetgidです。

B.2.5. Q: GnuCashはなぜCで書かれていますか?

A: GnuCashに関する中心となる機能は、Cで書かれていますが、Guile (scheme) を通してこれらの多くにアクセスできたのを忘れないでください。GnuCashがCで書かれているのは多くの理由があります。第一の理由は歴史的なものです。GnuCashは1996年(たぶんさらに早くから!)に開始しています。OOP (C++、 Java、 Python) コンパイラの多くが、その時考えられていた多種のプラットフォームで十分に成熟・標準化されていませんでした。よって、その時はCが唯一の選択肢でした。第二の理由はGnuCashが使用する標準のグラフィカルユーザーインターフェースがGTKであるからです。GTKはCで書かれています。

B.2.6. Q: 容易に貢献できるようにプログラミング言語xyzでGnuCashを書き直して頂けますか?

A: 「私たちはそうしません」と即答します。より長く答えるのは難しいです。でもやはり「私たちはそうしません」に達します。GnuCashは、CとScheme (Guile)で満足な開発者の小集団によって維持された大規模なコードの集合体です。実際のところ、およそ80%がCで書かれています。およそ13%がScheme/Lispで書かれています。新規の言語でこの分量の既存のコードを書き直すのを正当化する理由が全くありません。また、Python、Rubyまたは(あなたのお気に入りの言語)などの最近の言語に言語バインディングを作成する方が労働集約的です。私たちは、既存のコードを維持・開発しながら、少しずつ広がっていっています。

このようにも言うことができます。これはオープン・ソースプロジェクトです。あなたがそれを行うことも好きな貢献することも自由です。あなたの変更の理由があなたがCまたはSchemeを学ぶことを望んでいないということであれば、単に多くのサポートを期待しません。また、GnuCashはSWIGバインディング( http://www.swig.org )を持っており、何らかのPerlプログラミングコードのために使用されていました。メーリングリストの議論によると、これらのSWIGバインディングはまだ他の言語をGnuCashに含める方法であるかもしれません。しかし、現在それらは使用・維持されていません。

B.2.7. Q: XYZ機能が本当に欲しいです。しかしGnuCashは持っていません。

A: うまくお願いしてください :-) エンハンス要望書を http://bugzilla.gnome.org/enter_bug.cgi?product=GnuCashに発行できます。エンハンス要望を可能な限り冗長に記述することを念頭においてください。ここの手段は、あなたが提案した新機能が行わなければならないことに関して最良情報をプログラマに提供する方法を学ぶことです。開発がかなり加速するように望んでいるなら、GnuCashDevelopmentで説明してあるようにいくらかの金銭の寄付を行うことを考えてください。

B.2.8. Q: GnuCashで利用可能なウェブインターフェースがありますか?

A: いいえ

B.2.9. Q: どうしたらGnuCashデータをCFSなどを利用して安全に提供できますか?

A: 答えはありません。

B.2.10. Q: どうしたらGnuCashプロジェクトに貢献できますか?

A: 私たちは、より正式な手続きで活動していますが、当分は http://lists.gnucash.org/mailman/listinfo/gnucash-user および http://lists.gnucash.org/mailman/listinfo/gnucash-devel でメーリングリストに加入して、リストで自分が参加者と共に貢献できることについて検討しなければなりません。GnuCashがCとSchemeで書かれたコードの大規模な集合体であることを意識してください。(理由を知りたいならFAQの上部、「GnuCashはなぜCで書かれていますか?」を参照してください。) これらがあなたが扱うことを望んでいない言語であれば、他の方法で貢献することを考えてください。

B.2.11. Q: バグを見つけたようです。どうやってバグを報告しますか?

A: まず、本当に、それがバグであり、以前報告されたことがないことを確かめるようにします。メーリングリストアーカイブを検索してください (FAQの上部を参照)。後は、Gnome Bugzillaデータベースを検索します。

あなたが本当にバグを発見したと感じたら、後は http://bugzilla.gnome.org/enter_bug.cgi?product=GnuCash でそれを報告できます。可能な限り冗長に報告することを念頭においてください。ここの手段は、バグをどう再生させるかに関して最良情報をプログラマに提供する方法を学ぶことです。通常、プログラマは彼らが理解できるバグを修正できるだけです。あなたがプログラマにバグを理解させることができないなら、それは修正されません!