OSDN Git Service

2013.10.24
[uclinux-h8/uClinux-dist.git] / user / p7zip / README
1         p7zip 4.30
2         ==========
3
4 Homepage : http://p7zip.sourceforge.net/
5
6 p7zip is a port of the Windows programs 7z.exe and 7za.exe provided by 7-zip.
7
8 7-zip is a file archiver with the highest compression ratio.
9 Homepage : www.7-zip.org
10
11 7z uses plugins to handle archives.
12 7za is a stand-alone executable.
13 7za handles less archive formats than 7z.exe.
14
15
16 CAUTION :
17 ---------
18
19 - FIRST : DO NOT USE the 7-zip format for backup purpose on Linux/Unix because :
20   - 7-zip does not store the owner/group of the file
21
22   On Linux/Unix, in order to backup directories you must use tar !
23   to backup a directory  : tar cf - directory | 7za a -si directory.tar.7z
24   to restore your backup : 7za x -so directory.tar.7z | tar xf -
25
26 - if you want to send files and directories (not the owner of file)
27   to others Unix/MacOS/Windows users, you can use the 7-zip format.
28
29   example : 7za a directory.7z  directory
30
31   do not use "-r" because this flag does not do what you think
32   do not use directory/* because of ".*" files
33    (example : "directory/*" does not match "directory/.profile")
34
35
36 BUILD :
37 -------
38
39   If you have downloaded the "bin" package,
40         use directly the program bin/7za.
41         (tested on Redhat 9.0, Fedora 2, Mandrake 10.0, Debian 3.0)
42         As the program is statically linked, its should
43         run on many x86 linux.
44
45   If you have downloaded the "source" package,
46         According to your OS, copy makefile.linux,
47         makefile.freebsd, makefile.cygwin, ...
48         over makefile.machine
49
50         make clean : to clean all directories
51         make       : to build bin/7za
52         make sfx   : to build bin/7zCon.sfx (7za can now create SFX archive)
53         make 7z    : to build bin/7z and its plugins
54         make all   : to build bin/7za and bin/7zCon.sfx
55         make all2  : to build bin/7za, bin/7z (with its plugins) and bin/7zCon.sfx
56
57   this procedure has been tested on :
58    - x86 CPU :
59         Linux - Redhat 9.0 Standart
60         Linux - Fedora 2 (Redhat) (gcc 3.3.3 and gcc-3.4.1 with 
61                 stack-smashing protector from www.trl.ibm.com/projects/security/ssp/)
62         Linux - Mandrake 10.0 Official
63         Linux - Debian 3.0 Stable
64         FreeBSD 5.2.1 (gcc 3.3.3)
65         NetBSD 
66         CYGWIN_NT-5.1 1.5.9(0.112/4/2) 2004-03-18 23:05 i686 Cygwin
67         Solaris 9 (x86) with gcc 3.3.2
68
69    - alpha CPU :
70         Linux - Debian 3.0 (alpha) with gcc 2.95.4
71
72    - AMD64 CPU :
73         Linux - SuSE 8 ES (AMD64 Opteron) with gcc 3.2.2
74         Linux - Fedora 4  (AMD64 Turion)  with gcc 4.0.1
75
76    - sparc CPU :
77         Solaris 8 (sparc) with gcc 2.95.2
78         Solaris 9 (sparc) with gcc 3.3.2
79
80    - powerpc CPU :
81         MacOS X 10.1/darwin 5.5 with gcc 932.1 (gcc 2.95.2)
82
83
84 INSTALL :
85 ---------
86
87   method 1
88   --------
89   - edit install.sh to change DEST_HOME
90   - ./install.sh : to install
91   Remark : you must be "root" to install 7za in the directory "/usr/local"
92
93   method 2
94   --------
95   - 7za is a stand-alone program, you can put this program where you want.
96   example :  cp bin/7za /usr/local/bin/7za
97
98   - 7z needs its plugins. You must copy the file 7z and the two directories
99   Formats and Codecs in the same destination directory.
100
101   - if you want to be able to create SFX archive, copy bin/7zCon.sfx
102   to the directory where 7za or 7z can be found.
103   
104
105 USAGE:
106 ------
107   Remark : you can replace 7za with 7z.
108
109   7za t archive.7z  : tests files in the archive archive.7z
110   7za l archive.7z  : lists all files from archive archive.7z
111   7za x archive.7z  : extracts all files from archive archive.7z
112                    to the current directory
113
114   7za a archive.7z file1 fileN : add files to the archive archive.7z
115
116   7za a archive.7z  dir1 :  add all files and subdirectories from directory "dir1" to archive archive.7z 
117
118   CAUTION : do not use the flag "-r" unless you know what you are doing ...
119
120   7za a -sfx archive.exe dir1 : add all files from directory "dir1" to SFX archive archive.exe 
121   (Remark : SFX archive MUST end with ".exe")
122
123   You can also add or extract files to/from .zip or .tar archives.
124   You can also compress/uncompress .gz or .bz2 files.
125
126   7za a -tzip   archive.zip file file2 file3
127   7za a -ttar   archive.tar file
128   7za a -tgzip  file.gz     file
129   7za a -tbzip2 archive.bz2 file
130
131   You can use password for archives:
132   7za a -pmy_password archive.7z  dir1
133
134   For more, see the documentation of 7za.exe in DOCS/MANUAL directory
135   7za a -t7z  -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on archive.7z  dir1 :
136       adds all files from directory "dir1" to archive archive.7z
137       using "ultra settings".
138       -t7z     : 7z archive
139       -m0=lzma : lzma method
140       -mx=9    : level of compression = 9 (Ultra)
141       -mfb=64  : number of fast bytes for LZMA = 64
142       -md=32m  : dictionary size = 32 megabytes
143       -ms=on   : solid archive = on
144
145 LIMITATIONS from 7-zip :
146 ------------------------
147
148   - does not support uid/gid for the .tar format (so, use tar on Unix)
149
150 LIMITATIONS for Unix/MacOS X version only :
151 ------------------------------------------
152
153   - can handle properly UNICODE filenames only if the environment is UTF-8.
154   Example : export LANG=en_US.UTF-8 ; unset LC_CTYPE
155   Remark  : see the possible values for LANG in the directory 
156             - /usr/lib/locale   : Fedora 2 / Solaris 8
157             - /usr/share/locale : OpenBSD / Debian / FreeBSD / MacOS X / Mandrake 10.1 / NetBSD
158   p7zip relies on LC_CTYPE and then on LANG to convert name to/from UNICODE.
159   the command "locale" should display these environment variables.
160   you can also do "echo $LC_CTYPE" and "echo $LANG".
161
162   If you do not plan to export your archive, you can use the flag "-no-utf16".
163   Usage :
164     7za a -no-utf16 archive.7z dirOrFile1 ... dirOrFileN
165     7za t -no-utf16 archive.7z
166     7za l -no-utf16 archive.7z
167     7za x -no-utf16 archive.7z
168  
169   - ignores Windows file access permissions (files are created with default permissions)
170
171   see also TODO file.
172
173 DEVELOPPER CORNER:
174 ------------------
175
176   - WaitForMultipleObject has no equivalence on Unix.
177   - Events don't exist.
178   - sizeof(wchar_t) = 4 with GCC (2 with MS VC++)
179   - "FIXME" in source code indicates that you should add codes to better handle all cases.
180
181   - "FIXED" in source code indicates that the original code has been
182     changed to work in Unix environment.
183
184   see also TODO file.