Lines Matching +full:gcc +full:- +full:7
1 7-Zip 24.09 Sources
2 -------------------
4 7-Zip is a file archiver for Windows.
6 7-Zip Copyright (C) 1999-2024 Igor Pavlov.
10 ------------
12 7-Zip is free software distributed under the GNU LGPL
14 is licensed under the "BSD 3-clause License".
23 to re-create the RAR compression algorithm, which is proprietary.
34 3) You can not use unRAR sources to re-create the RAR compression algorithm.
38 --------
42 http://www.7-zip.org/sdk.html
47 -------------------------
59 - Include files
60 - Library files
63 - ml.exe for x86
64 - ml64.exe for x64
67 There are two ways to compile 7-Zip binaries:
72 All final 7-Zip binaries are compiled via makefiles, that provide best
77 ----------------------------
88 for dynamic linking to the run-time library (msvcrt.dll).
89 The default makefile option is static linking to the run-time library.
93 Compiling 7-Zip for Unix/Linux
94 ------------------------------
96 There are several options to compile 7-Zip with different compilers: gcc and clang.
97 Also 7-Zip code contains two versions for some parts of code: in C and in Assembeler.
98 So if you compile the version with Assembeler code, you will get faster 7-Zip binary.
100 7-Zip's assembler code uses the following syntax for different platforms:
102 1) x86 and x86-64 (AMD64): MASM syntax.
105 cpu instructions used in 7-Zip.
107 fastest version of 7-Zip x86 and x86-64:
113 That systax is supported by GCC and CLANG for ARM64.
115 There are different binaries that can be compiled from 7-Zip source.
117 makefile - that can be used for compiling Windows version of 7-Zip with nmake command
118 makefile.gcc - that can be used for compiling Linux/macOS versions of 7-Zip or Windows version
119 with MINGW (GCC) with make command.
121 At first you must change the current folder to folder that contains `makefile.gcc`:
123 cd CPP/7zip/Bundles/Alone2
125 Then you can compile `makefile.gcc` with the command:
127 make -j -f makefile.gcc
129 Also there are additional "*.mak" files in folder "CPP/7zip/" that can be used to compile
130 7-Zip binaries with optimized code and optimzing options.
132 To compile with GCC without assembler:
133 cd CPP/7zip/Bundles/Alone2
134 make -j -f ../../cmpl_gcc.mak
137 make -j -f ../../cmpl_clang.mak
139 To compile 7-Zip for x86-64 with asmc assembler:
140 make -j -f ../../cmpl_gcc_x64.mak
142 To compile 7-Zip for arm64 with assembler:
143 make -j -f ../../cmpl_gcc_arm64.mak
145 To compile 7-Zip for arm64 for macOS:
146 make -j -f ../../cmpl_mac_arm64.mak
153 makefile.gcc supports some variables that can change compile options
160 If you want to use UASM for x86-64 compiling, you can change 7zip_gcc.mak,
163 cd "7zip-src/CPP/7zip/Bundles/Alone2"
164 make -f makefile.gcc -j IS_X64=1 USE_ASM=1 MY_ASM="$UASM"
173 RAR decompression codecs in 7-Zip code has some additional license restrictions,
174 that can be treated as not fully compatible with free-software licenses.
175 DISABLE_RAR_COMPRESS=1 allows to exclude such "not-fully-free" RAR code from compilation.
176 if DISABLE_RAR_COMPRESS=1 is specified, 7-zip will not be able to decompress files
177 from rar archives, but 7-zip still will be able to open rar archives to get list of
179 if DISABLE_RAR=1 is specified, 7-zip will not be able to work with RAR archives.
183 7-Zip and p7zip
185 Now there are two different ports of 7-Zip for Linux/macOS:
187 1) p7zip - another port of 7-Zip for Linux, made by an independent developer.
191 2) 7-Zip for Linux/macOS - this package - it's new code with all changes from latest 7-Zip for Wind…
194 Note also that some Linux specific things can be implemented better in p7zip than in new 7-Zip for …
200 ------
201 7-Zip consists of COM modules (DLL files).
202 But 7-Zip doesn't use standard COM interfaces for creating objects.
204 7zip\UI\Client7z folder for example of using DLL files of 7-Zip.
205 Some DLL files can use other DLL files from 7-Zip.
209 For example, 7zip\Bundles\Format7z is a standalone version of 7z.dll
210 that works with 7z format. So you can use such DLL in your project
214 Description of 7-Zip sources package
218 ---
219 readme.txt - Readme file
220 src-history.txt - Sources history
221 7zC.txt - 7z ANSI-C Decoder description
222 7zFormat.txt - 7z format description
223 Methods.txt - Compression method IDs
224 lzma.txt - LZMA compression description
225 License.txt - license information
226 copying.txt - GNU LGPL license
227 unRarLicense.txt - License for unRAR part of source code
228 7zip.wxs - installer script for WIX
229 7zip.hhp - html help project file
231 Asm - Source code in Assembler : optimized code for CRC, SHA, AES, LZMA decoding.
233 C - Source code in C
235 CPP - Source code in C++
241 7zip
243 Common Common modules for 7-zip
249 …Alone 7za.exe: Standalone version of 7-Zip console that supports only 7z/xz/cab/zip/gzip/b…
250 Alone2 7zz.exe: Standalone version of 7-Zip console that supports all formats.
251 … Alone7z 7zr.exe: Standalone version of 7-Zip console that supports only 7z (reduced version)
252 Fm Standalone version of 7-Zip File Manager
253 Format7z 7za.dll: .7z support
254 Format7zExtract 7zxa.dll: .7z support, extracting only
255 Format7zR 7zr.dll: .7z support, reduced version
256 Format7zExtractR 7zxr.dll: .7z support, reduced version, extracting only
257 Format7zF 7z.dll: all formats
259 SFXCon 7zCon.sfx: Console 7z SFX module
260 SFXWin 7z.sfx: Windows 7z SFX module
261 SFXSetup 7zS.sfx: Windows 7z SFX module for Installers
270 Client7z Test application for 7za.dll
272 Console 7z.exe : Console version
273 Explorer 7-zip.dll: 7-Zip Shell extension
275 FileManager 7zFM.exe: 7-Zip File Manager
276 GUI 7zG.exe: 7-Zip GUI version
280 ---
282 http://www.7-zip.org