言語: 日本語 English
SevenZip.Compression.Wrapper.NET を使用するためには、7-zip を適切にインストールしなければなりません。
本稿では、7-zip のインストールの方法について説明します。
以下の手順でインストールしてください。
- 7-zip の公式サイト から、あなたのコンピュータに適した 7-zip のパッケージをダウンロードしてください。
- 7-zip をインストールしてください。
- 7-zip がインストールされたフォルダ (例:
C:\Program Files\7-Zip) に7z.dllという名前のファイルがあることを確認してください。 - 7-zip がインストールされたフォルダを
PATH環境変数に追加してください。
以下のような状況の場合、2.1 標準的なインストール方法 で示した方法ではうまくいかない可能性があります。
PATH環境変数を設定したくない、あるいは設定できない場合- 複数のアーキテクチャ (
x86およびx64) でSevenZip.Compression.Wrapper.NETを利用したい場合1
手動でインストールするためには、以下の手順に従ってください。
- 7-zip の公式サイト から、7-zip をダウンロードしてください。
- 7-zip をインストールしてください。
- 7-zip がインストールされたフォルダ (例:
C:\Program Files\7-Zip) に7z.dllという名前のファイルがあることを確認してください。 SevenZip.Compression.Wrapper.NETが インストールされているフォルダを確認してください。そのフォルダにはPalmtree.SevenZip.Compression.Wrapper.NET.dllという名前のファイルがあるはずです。7z.dllをSevenZip.Compression.Wrapper.NETがインストールされているフォルダにコピーしてください。
以上でインストールは完了です。 もし 7-zip を使用しない場合はアンインストールしてもかまいません。
なお、SevenZip.Compression.Wrapper.NET を複数のアーキテクチャで利用する場合は、7z.dll をコピーする際に以下のようにファイル名を変えてください。
x86版 7-zip の7z.dllの場合 =>7z.win_x86.dllx64版 7-zip の7z.dllの場合 =>7z.win_x64.dll
Linux 版 7-zip は単一の実行可能ファイルとして提供されていて、ライブラリとしては使用できません。
そのため、SevenZip.Compression.Wrapper.NET から 7-zip を利用するためには、7-zip のソースコードを使用してビルドしなおす必要があります。
以降では、Linux 上に gcc などの開発環境があることを前提に、ビルドの手順の説明を行います。
7-zip のダウンロードページ から、7-zip のソースコードをダウンロードしてください。
".tar.xz" で圧縮されているものがいいでしょう。
例えば、カレントディレクトリ上に展開する場合は、シェルから以下のコマンドを実行します。
xz -dc 7z2301-src.tar.xz | tar xfv -
makefile を入手して、 ソースファイルのディレクトリ上にコピーします。
- コピーする makefile =>
x64用ならばmakefile_x64.gcc、x86用ならばmakefile_x86.gcc - コピー先 => ソースファイル上のディレクトリ
CPP/7zip/Bundles/Format7zF/
makefile をコピーしたディレクトリにカレントディレクトリを移動した後、make を実行します。
以下の例は x64 版のライブラリをビルドする場合のものです。
make -f makefile_x64.gcc
ビルドが完了すると、カレントディレクトリに 7-zipのライブラリ lib7z.linux_x64.so (x86 版の場合は lib7z.linux_x86.so) が出来ているはずです。
出来た lib7z.linux_x64.so (あるいは lib7z.linux_x86.so) を、SevenZip.Compression.Wrapper.NET がインストールされているディレクトリ上にコピーしてください。
Footnotes
-
使用しているコンピュータが
x64アーキテクチャであっても、SevenZip.Compression.Wrapper.NETを利用するアプリケーションが 32 ビットアプリケーションである場合は、x86用の 7-zip が必要になります。 ↩