Develop and Download Open Source Software

OpenSource Downloads

7-Zip  (3,583)  
CrystalDiskInfo  (1,811)  
Tera Term  (1,787)  
HandBrake Japanese Language Version  (1,743)  
CrystalDiskMark  (980)  
FFFTP  (765)  
ffdshow  (719)  
mixfont-mplus-ipa  (615)  
MergeDoc  (571)  
10  TortoiseSVN  (555)  
11  Amateras  (437)  
12  BathyScaphe  (396)  
13  FreeMind  (372)  
14  Cabos  (327)  
15  ギコナビ  (316)  
More >>

巨大なバイナリ・ファイルをlfhexで編集・比較する

2008年05月29日 10:52 Ben-Martin(2008年5月27日(火)) 1 2
 多くのバイナリ・エディタは、編集を始める前にファイル全体をメモリにコピーしようとする。そのため、表示または編集できるファイルのサイズがメモリ・サイズによって制限される。 lfhex は、コンピュータのメモリに入りきらない大きさのバイナリ・ファイルを編集するために設計されたエディタである。

lfhex_thumb.png
lfhex

 メモリよりも大きなバイナリ・ファイルを操作することは通常はないだろうが、万が一の場合にバイナリ・エディタがそのような大きなファイルに対応できるとわかっていれば安心だ。lfhexは、大量のメモリを必要とせずに巨大なファイルを速やかに読み込むことができる。たとえば、lfhexのマニュアルによれば、2GBのファイルを読み込むために必要なメモリは2MB未満である。

 Ubuntu、openSUSE、またはFedoraには、lfhexのパッケージが提供されていない。この記事を書くにあたって、64ビット版Fedora 8マシンでバージョン0.4のソースからlfhexをビルドした。このビルドには、qmake、makeの手順を使用する。qmakeの実行可能ファイルは、Qt 3.xではなくQt 4のものが必要だ。どのqmakeが実行されるか確認するには、「type -all qmake」を実行してbashに認識されるqmake実行可能ファイルを表示するのが一番簡単である。

 以下の手順では、デフォルトであればQt 3.xのqmakeが実行されるため、Qt 4のqmake実行可能ファイルへの完全なパスを使用して、強制的に正しいQtバージョンをビルドに使用した。"install"ターゲットは見つからなかったが、lfhexバイナリを/usr/local/binにコピーすることで、インストールの最終ステップは完了した。

$ type -all qmake
qmake is /usr/lib64/qt-3.3/bin/qmake
$ /usr/lib64/qt4/bin/qmake lfhex.pro
$ make
$ su -l
# cp lfhex /usr/local/bin/

 lfhexの表示は、バイナリ、8進数、16進数、またはASCIIに切り替えが可能だ。列ごとのバイト数も調整できる。また、複数レベルのundoとredoの機能がある。多数のバイナリ・ファイルを部分的に比較するために、多数のエディタ・ウィンドウを同時に開くことができる。

最終更新:2008年07月29日 17:07
SourceForge.JP is a Japanese version of SourceForge.net. For developments that are not related to Japan, we recommend you to use SourceForge.net.