ラベル Libraries の投稿を表示しています。 すべての投稿を表示
ラベル Libraries の投稿を表示しています。 すべての投稿を表示

2015年9月24日

GetIt経由でインストールしたTurboPack LockBox 3.5がRAD Studio XE8と10 Seattleで干渉する問題とその暫定解決策

RAD Studio XE8で導入されたGetItパッケージマネージャは、簡単にコンポーネントなどのパッケージをIDEに登録することができる便利なツールです。ところがここに登録されているTurboPack LockBox 3.5のパッケージ名がXE8のものと10 Seattleのもので同一("LockBox3DR.bpl"、"LockBox3DD.bpl")となっており、パッケージは環境変数PATHに従って検索されるため、同一環境上のXE8と10 Seattleの両方にLockBoxを入れると先にインストールしたIDEが誤って別のバージョンのbplファイルを読み込んでしまいエラーになる、という現象があります(2015/09/24現在)。この問題、既にTurboPackのメンテナであるRomanさんのほうでは認識しており、GitHub上のリポジトリではXE8のほうのLIBサフィックスには220、10 Seattleのほうには230がつけられているのですが、GetItで配布されるものにはまだこれらの変更が反映されていないようです。

ということで暫定解決策ですが、次の3つが考えられます。
  1. GetItを使わずGitHubから最新のもの(XE8、10 Seattle)をチェックアウトしてインストールする。
  2. 誤動作するほうのバージョンのIDEのショートカットの作業フォルダにbplの保存先を明示的に指定する(XE8なら"C:\Users\Public\Documents\Embarcadero\Studio\16.0\Bpl"、10 Seattleなら"C:\Users\Public\Documents\Embarcadero\Studio\17.0\Bpl")。
  3. 自分でLIBサフィックスを指定しなおす。具体的には
    1. "ファイル"→"プロジェクトを開く"でXE8なら"C:\Users\<username>\Documents\Embarcadero\Studio\16.0\CatalogRepository\LockBox-3.5.0\packages\Delphi"、10 Seattleなら"C:\Users\<username>\Documents\Embarcadero\Studio\17.0\CatalogRepository\LockBox-3.5.0\packages\Delphi"にあるDelphi.groupprojを開く
    2. プロジェクトマネージャでLockBox3DD.bplを右クリック→アンインストール
    3. 当該バージョンのbplフォルダにある"LockBox3DR.bpl"と"LockBox3DD.bpl"を削除する
    4. LockBox3DD.bpl、LockBox3DR.bplのプロジェクトオプションでターゲットを"すべての構成 - すべてのプラットフォーム"にしておいて、"説明"のLIBサフィックスを220(XE8)または230(10 Seattle)に変更する
    5. "プロジェクト"→"すべてのプロジェクトをコンパイル"でコンパイルする(DEBUGビルドのみでいいようです)
    6. LockBox3DR220.bpl(XE8)またはLockBox3DR230.bpl(10 Seattle)を右クリック→インストール
    という手順になります。この場合、GetItからLockBox 3.5をアンインストールしたときに完全に削除されなかったりするかもしれませんが、その場合はアンインストール後にマニュアルでbplフォルダの下のLockBox*.*とCatalogRepositoryフォルダ(C:\Users\<username>\Documents\Embarcadero\Studio\XX.X\CatalogRepository)の下のLockBox-3.5.0フォルダを削除すればいいようです。
(C++Builderをお使いの方は"packages\CBuilder\CBuilder.groupproj"だったり"LockBox3CR.bpl"だったり"LockBox3CD.bpl"だったりしますが、適当に読み替えてください)

休日にもかかわらず鋭い指摘をいただいた、おに(@onimaro2010)さんに感謝いたします。とりあえずまとめました。

2012年12月24日

[eBook]Parallel Programming with OmniThreadLibrary

LeanpubでPrimoz GabrijelcicさんによるDelphi上のマルチスレッドライブラリOmniThreadLibrary(OTL)の解説書である

Parallel Programming with OmniThreadLibrary/Primoz Gabrijelcic著/Leanpub/30.00USD

を購入(PDF/EPUB/MOBIをダウンロード可能)。

この本は現在も執筆中で、状況はThe Delphi Geek: Parallel Programming with OmniThreadLibrary – Current Statusで確認できます。現時点(2012/12/24)ではだいたい半分ちょっとまで書き進んだ感じです。

2012年9月11日

JVCL 3.46/3.47

JVCL(JEDI Visual Component Library)がアップデートされてVersion 3.46Version 3.47(JCL Version 2.4.1)になっています。

JEDI VCL for Delphi - Browse /JVCL 3/JVCL 3.46 at SourceForge.net
JEDI VCL for Delphi - Browse /JVCL 3/JVCL 3.47 at SourceForge.net

ただしJVCLのニュースグループにはGenerateDefines.pasの46行目がDelphi 2007/2009/2010/XEでコンパイルエラーになるという問題が報告されています。

ANN: JVCL 3.46 Released!

修正はSVNにチェックインされたようですが、とりあえずは該当箇所を

{$IFDEF HAS_UNITSCOPE}
System.Types,
{$ELSE HAS_UNITSCOPE}
Types,
{$ENDIF HAS_UNITSCOPE}

とすることで回避できます。

GenerateDefines.pasの問題を修正した3.47がリリースされています。

2012年9月5日

FastMM 4.991

Delphi/C++Builder用のメモリマネージャFastMMが4.991に更新されています。Delphi XE3対応とOS Xサポートの追加が行われたようです。

元ねたはFastMM4 download available for Delphi XE3 « The Wiert Corner – irregular stream of Wiert stuff。

2012年3月27日

FastReport VCL 4 RAD Edition 4.12.2リリース

CodeCentralにアップロードされているFastReport VCL 4 RAD Edition for Delphi and C++Builder XE2が更新されているようです。

28514 FastReport VCL 4 RAD Edition for Delphi and C++Builder XE2

アップデート前はインストーラのタイムスタンプが2011/09/29でバージョンが4.11.17、アップデート後のインストーラはタイムスタンプが2012/03/26で、インストール後のバージョンは4.12.2となっています。

エンバカデロの高橋さんからの情報によると4.12.2はエージーテックから出ている製品版の日本語版の最新版と同じバージョンとのことです。

2012年3月15日

RAD Studio XE2 Update 4対応TeeChart Standardリリース

RAD Studio/Delphi/C++Builder XE2 Update 4に対応した"TeeChart Standard for RAD XE2 Update 4"がリリースされています。

28780 TeeChart Standard for Delphi, C++Builder, and RAD Studio XE2

2012年1月26日

TMS Aurelius

Delphiで使用できるORMとしてちょっと前にDORM (Delphi ORM)を取り上げましたが、TMS Softwareから

TMS Aurelius

という製品がリリースされています。Delphi 2010/XE/XE2で動作し、
  • 対応プラットフォーム: Windows x86/x64、Mac OS X
  • 対応RDBMS: Firebird、Interbase、Microsoft SQL Server、MySQL、NexusDB、Oracle、SQLite、PostgreSQL、DB2
  • 対応データアクセスコンポーネント: dbExpress、dbGo(ADO)、Interbase Express(IBX)、SQLite、AnyDac、NexusDB、SQL-Direct
となっています。ライセンスはシングルデベロッパライセンス(1ユーザ)が195EUR(=19,800JPY)、スモールチームライセンス(2ユーザ)が295EUR(=30,000JPY)、サイトライセンス(ユーザ数無制限)が695EUR(=70,600JPY)となっています(2012/02/29までの限定で20%のディスカウント中)。

2011年12月19日

FastReport 4 VCL日本語版

Delphi/C++Builder XE2ではFastReport 4 RAD Editionが標準でバンドルされるようになりましたが、先週のデベロッパーTVでもちょっと話が出ていた製品版の日本語版が2012/01/13に発売されるようです。

レポーティングソリューション FastReport VCL | 製品概要
リオスe-Shop/商品一覧ページ

エージーテックさんのページでは1月中旬以降正式リリースとなっていますが、リオスe-Shopさんでは2012/01/13発売と日付まで出ています。またリオスe-Shopさんでは2011/11/21から

キャンペーン期間中にご成約いただきますと、まずは英語版をお送りし、日本語版販売時に優先して、日本語版をお送りします。
(同じライセンス番号で動作しますので、日本語か英語のどちらかでご利用できます)
という「先行販売割引キャンペーン」(42,000円)をやっています。ちなみにこれはEnterprise Edition/Single license相当(Fast Reports Inc.から直接買えば349.00USD=27,000JPY)ですので、日本語に翻訳されていることに15,000円出せるかどうか、ということになるのかと。実際に仕事で使うなら許容範囲でしょうか。

2012/01/16追記: FastReport VCLの日本語版がリオスe-Shopで販売開始になっています。

レポーティングソリューション FastReport VCL | 製品概要
リオスe-Shop/商品一覧ページ

2012/01/18追記: 製品版のFastReportをインストールするためにバンドル版をアンインストールするとコンポーネントの登録が全て削除されるという不具合(QC102274)が報告されており、Team Japanに詳細と対応策が解説されています。

Team Japan » Delphi/C++Builder/RAD Studio XE2のUpdate3 で FastReportをアンインストールすると..

2011年12月7日

Asphyre Sphinx 2

Delphi/C++Builder上で2D/3Dグラフィックスを扱うライブラリとして以前取り上げたAsphyre Sphinxですが、メジャーバージョンアップした2.0.0がリリースされています。

Asphyre Sphinx 2

Delphi XE2 Update 1に対応しており、Windows x86/x64およびMacOS X/iOS上のDirectX 7/DirectX 9/DirectX 10/DirectX 10.1/DirectX 11/OpenGLをサポートしています。ライセンスは以前と同じくMPL 1.1です。

またVer1も最新版は1.1.0となっており、Delphi 2006/Turbo Delphi/Delphi 2007に加えてDelphi XEにも対応しています。

Asphyre Sphinx

元ねたは2ちゃんねるのくだすれDelphi(超初心者用)その53の902。

2011年11月28日

JVCL 3.45リリース

JVCL(JEDI Visual Component Library)がアップデートされてVersion 3.45(JCL Version 2.3.1)になっています。

JEDI VCL for Delphi - Browse /JVCL 3/JVCL 3.45 at SourceForge.net

またAndreas HausladenさんがコマンドラインコンパイラDCC32/DCC64が付属していないDelphi/C++Builder XE2 Starter SKUのためのコンパイル済バイナリのインストーラをCodeCentralにアップロードしています(上記のリリースバージョンそのものではなく、JCLはsvn revision 3634、JVCLはsvn revision 13184から作成したものとのことです)。

28636 Jedi Code Library 2.4.0.4198r3634 BinaryInstaller for XE2
28637 Jedi Visual Component Library 3.45r13184 BinaryInstaller for XE2

元ねたはUpdated JCL and JVCL Binary Installers for XE2 | Andy’s Blog and Tools。

2011年11月22日

DORM (Delphi ORM)

Delphi XEの新機能の新しい(拡張された)RTTIと属性の利用方法として考えられるもののひとつとしてORM(Object-relational mapping)があります。新しいRTTIでクラスの持つプロパティと型情報を参照してデータベースとのマッピングに利用し、属性で個別の細かい制御を行う、というアイデアはわりと一般的なものかもしれません。実験的な実装はいくつかあるようですが、一応実用に耐えるレベルのもの、となるといまのところDaniele TetiさんによるDORM (Delphi ORM)ぐらいでしょうか。

DORM, the Delphi ORM

Delphi XE/XE2で使用可能で、対応データベースはいまのところdbExpress経由のFirebird (2.1+)またはInterBase (2009+)です。ライセンスはApache License 2.0 (en)となっています。

先日のITDevCon 2011のDaniele Tetiさんのセッションのプレゼンテーション資料

DORM, the Delphi ORM

が参考になります。

元ねたはwhile true do; » Blog Archive » dorm, “The Delphi ORM”, officially published at ITDevCon。

2011年11月11日

Generic collections library (delphi-coll)

Delphi 2009の新機能の一つにジェネリクスがあります。このジェネリクス機能を簡単に利用するためのジェネリクスクラスとして、Delphiには標準でGenerics.Collectionsユニットにが用意されています。しかしC++のSTL(Standard Template Library)のコンテナや.NET Frameworkのジェネリックコレクションに比べると必ずしも十分とはいえません。これを補うものとしてCiobanu AlexandruさんによるGeneric collections library (delphi-coll)というライブラリがあります。

delphi-coll - Generic collections library for Delphi 2010 and XE - Google Project Hosting

ライセンスは修正BSD (en)となっています。

delphi-collにはList、Queue、Stack、Set、Dictionary、Bag、MultiMap、BidiDictionary、BidiMapの各基本ジェネリクスクラスと、これらに対するObject、Linked、Sortedやその組み合わせなどにより修飾された多数のバリエーションがあります。詳細は

CollectionDetails - delphi-coll

を参照してください。またDelphi標準のジェネリクスクラスとの違いについては

DifferencesFromGenericsCollections - delphi-coll

に記述されています。なおdelphi-collをDelphi XE2で使用する場合は最新版(1.2)をSVNでチェックアウトする必要があるようです。またDelphi XE2 Update 2のコンパイラの変更により、一部のコードがエラーになる、という情報もありますので注意が必要です。

2011年11月7日

FastMM 4.99リリースとQC100726

Delphi/C++Builder用のメモリマネージャFastMMが4.99に更新されています。

これに関連し、FastMM 4.99で修正された不具合のうち、
- Fixed crashes in the 64-bit BASM codepath when more than 4GB of memory is allocated.
- Fixed bad record alignment under 64-bit that affected performance.
の2点がDelphi XE2 Update 2のx64用の標準メモリマネージャにも不具合として存在しており(QC100726)、FastMMのAdminであるPierre le Richeさんが非公式なfixをフォーラムに投稿しています。

Embarcadero Discussion Forums: ATTN: Piere le Riche / FastMM 4.99
Embarcadero Discussion Forums: Unofficial fix for QC#100726

なお上記の非公式fixを導入後に公式なアップデート(Update 3やHotfix for Update 2)を適用する場合は、修復セットアップやバックアップしたファイルのリストアによってこれらのファイルをインストール時のものに戻す必要があるものと思われますので注意が必要です。

ちなみにFastMMの次のバージョンは4.100になるそうです。

2011年5月25日

シリアルポートコンポーネント

シリアルポート(COM/RS-232C)はレガシーではありますが、依然として使用する機会の多いインタフェースです。そこで一般的にお勧めできそうなシリアルポートコンポーネントを探してみました(対応するDelphi/C++Builderのバージョンはあくまで目安です)。

ComPort Library
作者はDejan Crnilaさん、現在のメンテナはLars B. Dybdahlさん、Paul Dolandさん、Brian Gochnauerさんです。Delphi 3/4/5/6/7/8/2005/2006/2007/2009/2010/XE、C++Builder 3/4/5/6に対応しています。最新バージョンは4.11a(2011/05/22)、ライセンスはPublic Domainです。

TurboPower Async Professional
もともとはTurboPower Softwareの商用製品で、オープンソース化されたTurbo Powerプロジェクトの多機能通信コンポーネント群。現在のメンテナはSean B. Durkinさん、tpsfadmin(TurboPower)ことNick Hodgesさんです。Delphi 7/2005/2007/2010に対応しています。最新バージョンは5.0(2010/03/10)、ライセンスはMPL 1.1です。関連: Installing AsyncPro into Delphi XE and C++Builder XE

SynaSer serial library
Ararat s.r.o.のSYNAPSE libraryに含まれるシリアル通信コンポーネント。Delphi/C++Builder 3/4/5/6/7/2005/2006に対応しています。最新バージョンはRelease 16/Version 7.2.0(2007/12/21)、ライセンスは修正BSDスタイルです。

TksComPort
Sergey Kasandrovさんによるkstoolsに含まれるシリアル通信コンポーネント。Delphi 2007/2009に対応しています。最新バージョンは0.50(2010/04/30)、ライセンスはMIT Licenseです。

ComPort component
Winsoftによる商用製品(35.00-70.0USD)。Delphi/C++Builder 5/6/7/2005/2006/2007/2009/2010/XEに対応しています。最新バージョンは3.5(2010/12/01)。

nrComm Lib
DeepSoftwareによる商用製品(69.00-599.00EUR)。Delphi/C++Builder 3/4/5/6/7/2005/2006/2007/2009/2010/XEに対応しています。最新バージョンは9.17(2011/05/11)。

お勧めはComPort LibraryかTurboPower Async Professionalでしょうか。シンプルなものがよければ前者、多機能なものがよければ後者、という感じで。

元ねたはTeam Japan » Delphi XE で COMポート(RS-232C)を操作するなど。

2011年2月6日

JCL 2.3.0.374/JVCL 3.41 Binary Installer for XEリリース

Delphi /C++Builder XE Starter SKUにコマンドラインコンパイラDCC32が付属していないため、JCL/JVCLのようにインストーラがDCC32を使用してコンパイルを行うタイプのライブラリをStarter SKUにインストールできない、という問題がありましたが、この問題を回避するJCL/JVCLのコンパイル済バイナリのインストーラがCodeCentralにアップロードされています。

28222 Jedi Code Library 2.3.0.374 Binary Installer for XE
28223 Jedi Visual Component Library 3.41 Binary Installer for XE

JVCLのBinary InstallerでJVCLをインストールする場合は、事前にJCLもBinary Installerでインストールしておく必要があるとのことです。

元ねたはJCL and JVCL Binary Installer for XE and Starter Edition | Andy’s Blog and Tools。

2010年11月30日

THTMLWriter

Nick HodgesさんがTHTMLWriterというHTMLを生成するライブラリを公開しています。

Nick Hodges | Announcing THTMLWriter
delphihtmlwriter - Project Hosting on Google Code

ライセンスはMPL 1.1となっています。Generics.Collectionsに依存しているのでDelphi 2009以降の対応になると思われます(開発そのものはDelphi 2010で行っているとのこと)。

2010年10月8日

FastMM 4.97リリース

忘れかけていましたが、FastMMのVersion 4.97がリリースされています。

元ねたは公式フォーラムのThread: FastMM 4.96 available。なにやらマルチスレッド環境下のLockの問題で揉めているようですが…。

2010年10月5日

Delphiのメモリマネージャ(その2)

以前のアーティクルで標準メモリマネージャ、FastMM、中村さんのNkMMの3種類のメモリマネージャについて触れましたが、これ以外に2種類のメモリマネージャを見つけました。

TopsoftwareのIvo TopsさんによるTopMemoryManager(最新版はv3.55)は、標準メモリマネージャやFastMMに比べて特にマルチプロセッサ、マルチスレッド環境下でのパフォーマンスが優れているとのことです。ドキュメントによれば特にライセンス条件はなく、自由に使用して構わないようです。

一方でIntelのTBB(Threading Building Blocks)を使用したZach SawさんによるTBBMM(最新版は09-09-2010)というものもあります。こちらはBorlndMM.dllを置き換えてTBBを呼び出すようにするようです。TBBのライセンスは"GPL v2 with Run-time Exception"となっていて、商用製品にも組み込み可能なようです。XLsoftのIntel TBBの"お知らせ"のFAQの項にある
TBB ライブラリーのオープンソースは GNU Runtime Exception (GNU GPLv2) を採用しています。そのため、TBB ライブラリーのソースコードに何も変更を加えていない場合はソースコード開示義務は発生しないとインテル社では考えております。最終的には御社法務ご担当者のご判断に基づきます。
という表現からも特に問題にはならないと思われます。これ以外のTBBMM.dllとBorlandMM.dllは自由に配布してよい、となっています。

元ねたは公式フォーラムのThread: FastMM 4.96 available。

2010年9月13日

JVCL 3.40リリース

JVCL(JEDI Visual Component Library)がアップデートされてVersion 3.40(JCL Version 2.2.1)になっています。

Browse JEDI VCL for Delphi Files on SourceForge.net

元ねたは公式フォーラムのThread: ANN: JVCL 3.40 Released! 。