|
注目!
テレビや雑誌でも紹介されているペン型ICレコーダー |
Delphi/C++Builder 2009 において、簡単にSQLiteを使う方法を記載しておく。
エンバカデロ/CodeGear のサイトからDbExpress用ドライバをダウンロードする。 ID: 18385, SQLite DbExpress driver ダウンロードしたファイル「18385_sqlite_dbexpress_driver.ZIP」を解凍すると、以下の6つのファイルが展開される。 DbxSQLite3.dll インストール方法は上記のファイル「install.txt」の記述に従えばよい。これを簡単に日本語で記載しておく。 ※Delphi/C++Builder 2009がインストール済とする。 ①解凍したファイルをプログラム用のフォルダに適当に配置する。 例えば、以下のようなフォルダを作成し上記のファイルを配置する。 「C:\Program Files\CodeGear\RAD Studio\6.0\sqlite」 ②ローカルマシン内の dbxdrivers.ini ファイルを探す。 WindowsXp であれば C:\Documents and Settings\All Users\Documents\RAD Studio\dbExpressなどのフォルダに配置されている。 見つからなければ「C:\」直下から「dbxdrivers.ini」を探す。 ③上記の dbxdrivers.ini ファイルを編集する。 以下の2つの定義を追加する。 [Installed Drivers] ④Delphi/C++Builder 2009 を立ち上げ直す。 「TSQLConnection」コンポーネントの「Driver」プロパティの中に「SQLite」が含まれるようになる。 その他にも方法があるので、必要に応じて検討する。
| IT-ソフトウェア関連::Delphi/C++Builder | 10:16 PM | comments (x) | trackback (x) |
|
調査目的で、Win32 環境でPostgreSQLをソースコードからコンパイルしようとしている。
PostgreSQLサイトの「Native Windows FAQ」や、「PostgreSQL 8.3 Press Kit」を参考にしつつ、コンパイル環境(開発環境)を準備する所からはじめる。 以下の条件で行う。 ■実行環境 ●MinGWとMSYSのダウンロード コンパイラ「MinGW」と作業環境「MSYS」について、それぞれのセットアップ・ファイルをダウンロードする。 MinGWは「SOURCEFORGE.NETのMinGWサイト」のMinGW 5.1.4の「Download リンク」から、セットアップファイル「MinGW-5.1.4.exe」をダウンロードする。 また、MSYSはSOURCEFORGE.NETのCOREを使ってもよいのだが、今回はMSYSダウンロードサイトから「MSYS DTK (developer tool kit)」のセットアップファイル「msysDTK-1.0.1.exe」をダウンロードする。 ページ中央付近で「Install MSYS DTK 1.0 in C:\msys\1.0.」のように記述されている場所が、リンクになっている。 ※08.12.09時点では「MinGW」の最新版が「5.1.4」、「MSYS」の最新版が「1.0.11」である。 念のためこのバージョンの直リンクを作っておく。 ・MinGW 5.1.4 : MinGW-5.1.4.exe ・MSYS DTK 1.0 : msysDTK-1.0.1.exe ●MinGWとMSYSのセットアップ 上記でダウンロードしたファイルを実行し、それぞれセットアップする。 ちなみにMSYSのコンソール画面では「コピー&ペースト」が使えない。これが結構不便なので「05.ffmpegコンパイル(Win):msys.batの変更」を参考にしながら、「コピー&ペースト」できるようにしておく方がよい。 ●PostgreSQLのソースファイルのダウンロード 日本PostgreSQLユーザー会よりPostgreSQLのソースファイルをダウンロードする。 ※08.12.09時点では「8.3.5」が最新版のため、アーカイブ・ファイル名は 「postgresql-8.3.5.tar.gz」。 ●解凍と属性変更 ダウンロードしたアーカイブ・ファイルを「Lhaplus」などを使って解凍する。 ここでは「C:\postgresql」に解凍したものとし、以下のように展開されるとする。 C:\postgresql\postgresql-8.3.5\postgresql-8.3.5 このディレクトリに「configure」や「Makefile」が展開される。 それから、このディレクトリとサブ・ディレクトリの「読み取り専用」属性を外す (Windows のエクスプローラで一括で外す)。 ※Make作業中にファイルにリダイレクトするので読み取り属性を外す必要がある。 ●コンフィギュレーション ①MSYSのインストール先(C:\msys\1.0 など)に配置されている「msys.bat」を実行し、シェル環境を立ち上げる。このMSYSのシェル環境で、 # cd /c/postgres/postgresql-8.3.5/postgresql-8.3.5として、Win32用の Makefile が作成される。 ■コンフィギュレーション・エラー コンフィギュレーションを実行した時に、 configure: error: no acceptable C compiler found in $PATHというエラーメッセージが表示される場合、 Cコンパイラのディレクトリがサーチ・パスに登録されていない、という事なので # export PATH=$PATH:/c/MinGW/binのように、サーチパスに登録してから再度 configure を実行する。 ●コンパイル # mingw32-make.exeのようにMakeする。 ■コンパイルエラー コンパイル中にエラーが発生したので記載しておく。 今回は「調査目的」のため「何はともあれコンパイルを通すのだ!」という方針の下、それぞれ以下のような措置を取った。 〇libpq-be.h のコンパイルエラー In file included from c:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/security.h:38,というエラーが発生した。 そこで「[HACKERS] 8.3 .4 + Vista + MingW + initdb = ACCESS_DENIED」を参考に、 ヘッダファイル 「c:\postgresql\postgresql-8.3.5\postgresql-8.3.5 \src\include\libpq\libpq-be.h」を以下のように変更 48: #ifdef ENABLE_SSPI ↓ #ifdef ENABLE_SSPI 〇ソースファイルの場所・名前を変更 以下の3つのファイルを、移動・リネームする必要がある。 ①「utf8_and_euc_jis_2004.c」が無い mingw32-make[3]: *** No rule to make target `utf8_and_euc_jis_2004.o', needed by `libutf8_and_euc_jis_2004.dll'. Stop.これは、 「c:\postgres\postgresql-8.3.5\postgresql-8.3.5 \src\backend\utils\mb\conversion_procs\utf8_and_euc_jis_2004」 内のソースファイル「utf8_and_euc_jis_2004.c」が、 何故か「utf8_and_euc_jis_2004.c000644」という名前になっているために発生する。 以下のように、本来のファイル名にリネームする。 # pushd src/backend/utils/mb/conversion_procs ②「euc_jis_2004_and_shift_jis_2004.c」が無い mingw32-make[3]: *** No rule to make target `utf8_and_shift_jis_2004.o', needed by `libutf8_and_shift_jis_2004.dll'. Stop.これは、ソースファイル「euc_jis_2004_and_shift_jis_2004.c」が、 本来は↓以下のディレクトリに配置されるべきなのだが、 c:\postgres\postgresql-8.3.5\postgresql-8.3.5 何故か、 c:\postgres\postgresql-8.3.5に展開されてしまっているために発生する。 これを、以下のように、本来のディレクトリにリネームする。 # mv ../backend/utils/mb/conversion_procs/euc_jis_2004_and_shift_jis_2004/euc_jis_2004_and_shift_jis_2004.c \ ③「utf8_and_shift_jis_2004.c」が無い mingw32-make[3]: *** No rule to make target `utf8_and_shift_jis_2004.o', needed by `libutf8_and_shift_jis_2004.dll'. Stop.これも②とほぼ同様で、ソースファイル「utf8_and_shift_jis_2004.c」が、 本来のディレクトリ c:\postgres\postgresql-8.3.5\postgresql-8.3.5ではなく、何故か、 c:\postgres\postgresql-8.3.5\ に展開されてしまっているために発生する。 ⇒本来のディレクトリにリネームする。 # mv ../src/backend/utils/mb/conversion_procs/utf8_and_shift_jis_2004/utf8_and_shift_jis_2004.c 〇SECURITY_STRING が定義されていない In file included from c:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/security.h:38,sspi.h のコンパイル時に、SECURITY_STRINGが定義されていないと叱られる。 原因は良く分からないが、以下のように対処する。 「c:\MinGW\include\sspi.h」を以下のように編集する。 60: #ifndef _NTDEF_H /* 以下の3行を追加 */ 以上のような方法で、postgresql.exe や libpq.dll、psql.exe などをコンパイルできた。 ちなみに、今回初めてMSYSを使ってみたが、MSYSのCOREを使えばインストールしなくても使えるので結構便利です。
| IT-ソフトウェア関連::ツール類 | 08:36 AM | comments (x) | trackback (x) |
|
Redhat Enterprise Linux 5にて、Oracle10g のPRO*C++プログラミングをしている。
「main.cc」 というC++で記述しているソースファイルをコンパイルしようとしたら、 main.cc:336: error: unknown escape sequence: '\216'というエラーが表示されてコンパイルできない。 色々調べた結果、「表示」という日本語を含んでいるためと分かった。 つまり文字コードの問題。 ソースコード内の「表示」という文字を、「表\示」のように変更して解決。
| ネット関連 | 07:19 PM | comments (x) | trackback (x) |
|
|
| |
|
|
|