📄 install
字号:
__________________________________________________________________________ This is the Info-ZIP file INSTALL (for UnZip), last updated 28 Nov 98.__________________________________________________________________________ Yes, this is a rather long file, but don't be intimidated: much of its length is due to coverage of multiple operating systems and of optional customization features, large portions of which may be skipped.__________________________________________________________________________To compile UnZip, UnZipSFX and/or fUnZip (quick-start instructions):========================================(1) Unpack everything into a work directory somewhere, and make sure you're in the main UnZip directory (the one with this file in it). * (See note below concerning line termination format used in the source distribution)(2) Copy the appropriate makefile into the current directory, except under OS/2.(3) Run your "make" utility on the makefile (e.g., "nmake -f makefile.msc").(4) Try out your new UnZip the way you would any new utility: read the docs first. Ah ha ha ha!! Oh, that kills me. But seriously...for VMS, UnZip must be installed as a "foreign symbol"; see the Install section below or [.vms]readme.vms for details. (It basically involves adding a line sort of like this to login.com: $ unzip == "$disk:[dir]unzip.exe") For DOS and other OSes without explicit timezone support (i.e., everybody but Unix, Windows 95 and NT), make sure the "TZ" environment variable is set to a valid and reasonable value; see your compiler docs for details.(*) The unzip sources as well as other Info-ZIP source archives are packaged in Unix format. All text files use single LF (Ascii 0x0a) characters as line terminators. On systems that use different conventions for plain text files (e.g.:DOS,Win9x,WinNT,OS/2 -> combined CR+LF; MacOS -> single CR), some utilities (editors, compilers, etc.) may not accept source files with LF line terminators. For these systems, we recommend to use Info-ZIP's UnZip utility for extraction of our distribution archives, applying the command option "-a" (= translate text files to native format) in the extraction command. In case this procedure is not applicable, an appropiate third-party conversion utility may be used to achieve the desired line termination style (examples: "flip", available for Unix, DOS, OS/2; or "tr" on Unix).To compile UnZip, UnZipSFX and/or fUnZip (detailed instructions):========================================(1) Unpack *.c and *.h (the actual source files), preserving the directory structure (e.g., ./unix/unix.c). The sole exception is TOPS-20, where tops20/* should be unpacked into the current directory, but TOPS-20 is no longer fully supported anyway. If you wish to compile with decryption enabled, you must get the zcrypt package (see the "WHERE" file). Unpack crypt.c and crypt.h from the zcrypt archive, overwriting the dummy versions supplied with UnZip. If you don't have any sort of unzipper available, you'll have to compile the non-crypt version first and use that to unpack the full crypt sources, then recompile.(2) Choose the appropriate makefile based on the description in the Con- tents file for your OS (that is, there's only one for Unix or OS/2, but MS-DOS and several other OSes have several, depending on the compiler). Copy it into the current directory and rename if necessary or desired. (Some makefiles can be invoked in place; see (5) below.) Don't be afraid to read the makefile! Many options will be explained only in the comments contained therein. The defaults may not quite suit your system. When making changes, remember that some "make" utilities expect tabs as part of the makefile syntax. Failure with cryptic error messages will result if your editor quietly replaces those tabs with spaces. Special point of confusion: some non-MSDOS makefiles contain MS-DOS targets (useful for cross-compilations). An example is the OS/2 makefile os2/makefile.os2 that contains the gccdos target for DOS emx+gcc and some more DOS related targets for Watcom C and MSC. But since version 5.3, the msdos subdirectory contains makefiles for all supported DOS compilers. [The old djgpp, djgpp1 and gcc_dos targets in unix/Makefile have been removed in 5.3; use msdos/makefile.dj* instead.] Extra-special point of confusion: makefile.os2 expects to remain in the os2 subdirectory. Invoke it via "nmake -f os2/makefile.os2 gcc", for example.(3) If you want a non-standard version of UnZip, define one or more of the following optional macros, either by adding them to the LOCAL_UNZIP environment variable or by editing your makefile as appropriate. The syntax differs from compiler to compiler, but macros are often defined via "-DMACRO_NAME" or similar (for one called MACRO_NAME). Note that some of these may not be fully supported in future releases (or even in the current release). Note also that very short command lines in MS-DOS (128 characters) may place severe limits on how many of these can be used; if need be, the definitions can be placed at the top of unzip.h instead (it is included in all source files)--for example, "#define MACRO_NAME", one macro per line. DOSWILD (MS-DOS only) Treat trailing "*.*" like Unix "*" (i.e., matches anything); treat trailing "*." as match for files without a dot (i.e., matches any- thing, as long as no dots in name). Special treatment only occurs if patterns are at end of arguments; i.e., "a*.*" matches all files starting with "a", but "*.*c" matches all files ending in "c" *only* if they have a dot somewhere before the "c". [The default method of specifying files without a dot would be "* -x *.*", making use of UnZip's exclude-files option.] The matching is actually the same as Unix, if you assume that undotted filenames really have an invisible dot at the end, which is how DOS and related systems treat filenames in general. All other regular expressions (including "?" and "[range_of_chars]") retain their Unix-like behavior. VMSWILD (VMS only) Use parentheses rather than brackets to delimit sets (ranges), and use '%' instead of '?' as the single-character wildcard for internal filename matching. (External matching of zipfile names always uses the standard VMS wildcard facilities; character sets are disallowed.) VMSCLI (VMS only) Use VMS-style "slash options" (/FOOBAR) instead of the default Unix- style hyphenated options (-f). This capability does not affect options stored in environment variables (UNZIP_OPTS or ZIPINFO_OPTS); those use the Unix style regardless. Beginning with UnZip 5.32, the supplied VMS Makefiles and make procedures generate both VMS-style and default "UNIX style" executables; you should NOT add VMSCLI to the custom options. CHECK_VERSIONS (VMS only) UnZip "extra fields" are used to store VMS (RMS) filesystem info, and the format of this information may differ in various versions of VMS. Defining this option will enable UnZip warnings when the stored extra-field VMS version(s) do(es) not match the version of VMS currently being used. This is a common occurrence in zipfiles received from other sites, but since the format of the filesystem does not seem to have changed in years (including on Alpha and Open- VMS systems), the warnings are not enabled by default. RETURN_CODES (VMS only) VMS interprets return codes according to a rigid set of guidelines, which means it misinterprets normal UnZip return codes as all sorts of really nasty errors. Therefore VMS UnZip returns an alternate set of return codes; since these may be difficult to interpret, define RETURN_CODES for human-readable explanations. VMS_TEXT_CONV (everybody except VMS) VMS text files archived with the "-V" option are only semi-readable at best when extracted on other systems. Defining this option enables UnZip's -aa option to attempt to convert such files to native text format. Non-VMS UnZips don't actually detect the precise VMS format of the files, however, but instead rely on some reasonably good heuristics (i.e., guesses). Therefore this option is not enabled by default, but it can be extremely useful on those rare occasions when a VMS text file must be extracted as normal text. USE_VFAT (MS-DOS only, for using same executable under DOS and Win95/NT) djgpp 2.x and emx/gcc+RSX 5.1 can detect when they are running under a Win32 DOS box and will accordingly enable long-filename support. For now only djgpp 2.x and emx/gcc with RSX 5.1 or later have this feature (and it is defined by default in msdos/makefile.dj2 and makefile.emx), but if/when other compilers build in similar support, define this macro to enable its use. See also msdos/doscfg.h. [Note that djgpp 2.0's LFN support is flaky; users should upgrade to 2.01 or later.] NOTIMESTAMP This option disables the -T option, which basically does exactly what Zip's -go options do (i.e., set the timestamp of the zipfile to that of the newest file in the archive without rewriting the archive). Unlike Zip, however, UnZip supports wildcard specifications for the archive name; for example, "unzip -T *.zip" will set the dates of all zipfiles in the current directory. (UnZip's option is also much faster.) DATE_FORMAT=DF_DMY or DF_MDY or DF_YMD This option controls the order in which date components are printed in listings: day-month-year or month-day-year or year-month-day. For DOS derivatives the format is automatically obtained from the operating system; most others default to DF_MDY. ACORN_FTYPE_NFS (currently, Unix only) This option enables a -F option that instructs UnZip to interpret the filetype information extracted from Acorn RiscOS extra field blocks. The filetype IDs are translated into "NFS filetype extensions" and appended to the names of the extracted files. This feature facilitates maintance of Unix-based NFS volumes that are exported to Acorn RiscOS systems. QLZIP (Unix only) Add some support for QDOS extra fields. This option enables Unix UnZip to append "datalen info" to QDOS exec type files in the same format as used by QDOS cross-compilers on Unix or the qltools v2.2(+). UNIXBACKUP (Unix only) This option enables a -B option that instructs UnZip to rename files that would normally be overwritten. The renamed files are given a tilde suffix (`~'). Note that previously renamed files may be over- written without notice, even if the -n option is given. OS2_EAS List the sizes of OS/2 EAs and ACLs for each file as two extra columns in "unzip -l" output. This is primarily useful for OS/2 systems, but because zipfiles are portable, OS2_EAS can be defined for any system. (May be extended someday to show sizes of Mac resource forks, RISCOS and VMS file info, etc.) DELETE_IF_FULL (anybody with unlink() function) If a write error is encountered (most likely due to a full disk), enabling this option will cause the incomplete file to be deleted instead of closed normally. This is particularly useful for the Windows CE port, which must generally contend with extremely limited resources. ASM_CRC (Amiga/Aztec C; many x86 systems: DOS, OS/2, Win32, Unix) Use an assembler routine to calculate the CRC for each file (speed). ASM_INFLATECODES (Amiga/Aztec C only, for now) Use an assembler version of inflate_codes() for speed. OLD_EXDIR No longer supported. SFX_EXDIR Enable the "-d <extract_dir>" option for UnZipSFX. By default it is disabled so as to generate the smallest possible executable stub, but for use with automated installation scripts and the like it may be useful to enable -d. NO_ZIPINFO Compile without ZipInfo mode (-Z) enabled; makes a smaller executable because many text strings are left out. Automatically enabled for some small-model compiles under MS-DOS and OS/2, so ordinarily there is no need to specify this explicitly. (Note that even with this defined, the resulting executable may still be too big to extract some zipfiles correctly, if compiled with the small memory model.) LZW_CLEAN (now default) USE_UNSHRINK The "shrinking" algorithm from PKZIP 1.0 is an LZW variant. Unisys patented the Lempel-Ziv-Welch algorithm in 1985 and has publicly claimed that decompression is covered by it. (IBM also patented the same thing in a filing 3 weeks prior to Unisys's.) Therefore un- shrinking is disabled by default, but those with LZW licenses can enable it by defining USE_UNSHRINK. (Unshrinking was used by PKZIP 1.0 and 1.1, and Zip 1.0 and 1.1. All newer archives use only the deflation method.) COPYRIGHT_CLEAN (now default) USE_SMITH_CODE The last chunk of code in UnZip that was blatantly derived from Sam Smith's unzip 2.0 (as in, "substantially similar") is in unreduce.c. Since reducing was only used by very early PKZIP beta versions (0.9x), support for it is now omitted by default (COPYRIGHT_CLEAN). To in- clude unreducing capability, define USE_SMITH_CODE. Note that this subjects UnZip to any and all restrictions in Smith's copyright; see the UnZip COPYING file for details. PASSWD_FROM_STDIN (with full crypt sources only; Unix, VMS only) Used to allow the password on encrypted files to be read from stdin rather than the default stderr. This was useful for those who wished
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -