If I edit some line, it keeps LF.
But if I press Enter, it inserts CR LF.
diff -rup hi1~1/hi1.c hi1-2/hi1.c--- hi1~1/hi1.c>2024-02-01 14:33:04.314724000 +0000+++ hi1-2/hi1.c>2024-02-01 18:13:52.916445000 +0000@@ -3,7 +3,8 @@
.
int main()
{
-<----->printf(HI_MSG);+<----->printf(HI_MSG);^M+<----->// enter some new comment in IDE and see what the line ending is<----->getc(stdin);
<----->return 0;
}
Apparently same here.
I had edited and saved files with LF to see if they work, did some edits, and saved. I guess I haven't effectively added new line, so it did not appear in file saved form IDE.
It is as you say - it keeps line endings but if one adds new one then it's CRLF.
It also compiles without any issues regardless of line ends.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Anonymous
-
2024-02-01
Igor I tested some .zsts with 2 Gb (maximum) dictionary size created in the original zstd.exe. And I tested some "v7" rars with 6 Gb - maximum dictionary size I can pack. It's fine for me and the speed is comparable. All software is x64.
My question is why did you hide xxhash64 and Blake2sp in GUI because there are not that many options to hide. May be these options (xxhash64, Blake2sp) should be shown so more people to even be aware of them?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I wanted to show only most popular hashsum methods.
Blake2sp is rare case for usual user. It's used only in RAR as I suppose.
But now (xxhash64, Blake2sp) can be fast. So they can have performance advantage over another methods (CRC64/SHA256). So maybe some user can use them for faster hash calculation.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Anonymous
-
2024-02-01
They are very fast excluding the cases CPU has Intel SHA Extensions (only 3 generations of Intel CPUs for example). There are not so many GUI Windows software with BLAKE and even less with xxhash (either variety). ... So just show these options, please.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Anonymous
-
2024-02-01
And xxh64 isn't mentioned in 7-zip.chm yet.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
No ZPAQ unpacking support? Please, add at least last version unpack support :)
Other than that, I will wait for final version, but I like the added support in this version, You did a great job! Thank you.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Good evening.
Today, after editing the .dtd files from the archive and closing Notepad++, only 1 of the 5 fil
es was updated in the archive. I can send the log tomorrow but I don't know where to find it yet.
Thank you very much.
Have a good night.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Regarding source code, if you published it it would be much easier for you and for 'distributors' (I mean all kinds of distributions that build packages from source) if building scripts (here: makefiles) were moved out of source tree to directory in a top of it. Like 7Z2401_DIR/build, along with all the 'bundles'. Could be as simple as
and describe your system.
do you have problems with another sites?
maybe there are some ip/dns restrictions in your country/your internet providers/firewalls?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Thanks for test.
xxh64 in Cortex-A76 shows only 33% performance from x86_64 at same frequency. MADD instruction for 64-bit registers throughput is very low in Cortex-A76: 0.33 instructions per cycle.
I suppose that problem with low MADDperformance was fixed starting from Cortex-A77.
Last edit: Igor Pavlov 2024-02-08
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I tested 7zz version 24.00 for Linux with checksec and I notice that now all C/C++ hardening flags have been activated except NX.
Is there a specific reason for not activating NX?
When using 7zz I have in syslog:
Feb 11 10:52:19 xxx kernel: process '/tmp/7zz' started with executable stack
I activated NX in 7-zip 23.01 compiled from sources without having problems in use, but I only use 7zz, 7za and 7zr.
Last edit: teoberi 2024-02-11
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I don't know exact way to activate it.
Is that switch supported by GCC/CLANG for any platform (MIPS/x86) ?
Or we need some platform/compiler specific switches?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
How to fix the stack (in theory)
When you compile source code normally, gcc takes care of adding the GNU_STACK markings so that the final object code is not marked with an executable stack unless it actually needs it. However, if you compile assembly code, gcc will not automatically add GNU_STACK markings. So, the most common source of executable stacks in ELF binaries are packages which include raw assembly code. Note that we're not talking about inline assembly code, but rather files like .S which are written in pure assembler.
We can either patch each source file written in assembler and send the fixes upstream, or we can be lazy and simply force the package build system to assemble the source files with the GNU as option --noexecstack (but this is highly discouraged).
The advantage to patching the code is that it's easy to do, it's portable, and we can usually convince upstream to add it to their packages with little fuss. The disadvantage to patching is that we may have to patch many many files.
The advantage to just using --noexecstack is that you can simply add it to your ebuild and be done. The disadvantage is that the option isn't very portable (it won't work with non-GNU systems, and it probably won't even work with all GNU systems), and we can't really convince upstream to make this change. Thus, the only people who see the benefit here is Gentoo users. You gotta think big baby!
How to fix the stack (in practice)
Patching
The great thing about patching is that you can copy and paste this stuff everywhere. Just make sure the code will be preprocessed (e.g. the source file is named with .S and not .s). Stick these code snippets at the end of the source file, recompile, and do a jig.
It seems that the problem was raised here in 2021.
Since I compile packages from sources and have been doing this for some time, I set "noexecstack" in the compilation options only for 7-Zip.
Checksec for ASMC indicates NX enabled:
RELRO STACK CANARY NX PIE RPATH RUNPATH Symbols FORTIFY Fortified Fortifiable FILE
Full RELRO No canary found NX enabled PIE enabled No RPATH No RUNPATH No Symbols No 0 3 asmc64
Last edit: teoberi 2024-02-12
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Maybe you can integrate the following solution to have the ability of ZSTD and LZ4 compression within .7z archives? https://github.com/mcmilk/7-Zip-zstd
Thanks in advance!
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hello Igor, could you please also add prebuilt 7z.so to your Linux distribution. I built the previous version 7z.so and it was time consuming to clear all the issues.
Thanks in advance!
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Apparently same here.
I had edited and saved files with LF to see if they work, did some edits, and saved. I guess I haven't effectively added new line, so it did not appear in file saved form IDE.
It is as you say - it keeps line endings but if one adds new one then it's CRLF.
It also compiles without any issues regardless of line ends.
Last edit: Sam Tansy 2024-02-01
Igor I tested some .zsts with 2 Gb (maximum) dictionary size created in the original zstd.exe. And I tested some "v7" rars with 6 Gb - maximum dictionary size I can pack. It's fine for me and the speed is comparable. All software is x64.
My question is why did you hide xxhash64 and Blake2sp in GUI because there are not that many options to hide. May be these options (xxhash64, Blake2sp) should be shown so more people to even be aware of them?
I wanted to show only most popular hashsum methods.
Blake2sp is rare case for usual user. It's used only in RAR as I suppose.
But now (xxhash64, Blake2sp) can be fast. So they can have performance advantage over another methods (CRC64/SHA256). So maybe some user can use them for faster hash calculation.
They are very fast excluding the cases CPU has Intel SHA Extensions (only 3 generations of Intel CPUs for example). There are not so many GUI Windows software with BLAKE and even less with xxhash (either variety). ... So just show these options, please.
And xxh64 isn't mentioned in 7-zip.chm yet.
I updated the English (United Kingdom) this time.
No ZPAQ unpacking support? Please, add at least last version unpack support :)
Other than that, I will wait for final version, but I like the added support in this version, You did a great job! Thank you.
ZPAQ is pretty advanced and takes quite a bit of processor power.
Not so much for unpacking last version of the archive, and that would be excellent if implemented.
Good evening.
Today, after editing the .dtd files from the archive and closing Notepad++, only 1 of the 5 fil
es was updated in the archive. I can send the log tomorrow but I don't know where to find it yet.
Thank you very much.
Have a good night.
That problem is common for any version of 7-Zip,
and is not related to changes of 7-Zip 24.01.
So we don't need it in this forum thread.
The reason for this is beyond repair?
Regarding source code, if you published it it would be much easier for you and for 'distributors' (I mean all kinds of distributions that build packages from source) if building scripts (here: makefiles) were moved out of source tree to directory in a top of it. Like
7Z2401_DIR/build
, along with all the 'bundles'. Could be as simple asAlso making place for codecs would move them out of source tree, and make it cleaner.
@igor The downloads from 7-zip.com / 7zip.org for Linux gives a 404 Not Found error
https://7-zip.com/download.html
Also there is a cert issue on 7zip.org. The current cert seems only valid for 7-zip.com
Last edit: Danie de Jager 2024-02-06
create another forum thread of that problem.
try
and describe your system.
do you have problems with another sites?
maybe there are some ip/dns restrictions in your country/your internet providers/firewalls?
Hi,
In next update, could you add 7-Zip in Windows 11 new shell menu?
Like done, per example, Notepad++.
Thanks
I did the hash benchmarks on raspberry pi5b-8gb.
Last edit: HITCHER 2024-02-08
Thanks for test.
xxh64 in Cortex-A76 shows only 33% performance from x86_64 at same frequency.
MADD
instruction for 64-bit registers throughput is very low in Cortex-A76: 0.33 instructions per cycle.I suppose that problem with low
MADD
performance was fixed starting from Cortex-A77.Last edit: Igor Pavlov 2024-02-08
i9-12900K Hash Benchmark
Last edit: Igor Pavlov 2024-02-10
I tested 7zz version 24.00 for Linux with checksec and I notice that now all C/C++ hardening flags have been activated except NX.
Is there a specific reason for not activating NX?
When using 7zz I have in syslog:
I activated NX in 7-zip 23.01 compiled from sources without having problems in use, but I only use 7zz, 7za and 7zr.
Last edit: teoberi 2024-02-11
I don't know exact way to activate it.
Is that switch supported by GCC/CLANG for any platform (MIPS/x86) ?
Or we need some platform/compiler specific switches?
For 7-zip 23.01 I changed the line in CPP/7zip/7zip_gcc.mak:
by adding -z noexecstack
https://en.wikipedia.org/wiki/NX_bit
Supported platforms here.
https://wiki.gentoo.org/wiki/Hardened/GNU_stack_quickstart
Can the suggestion of those from Gentoo regarding the files written in assembler be applied?
It seems that the problem was raised here in 2021.
Since I compile packages from sources and have been doing this for some time, I set "noexecstack" in the compilation options only for 7-Zip.
Checksec for ASMC indicates NX enabled:
Last edit: teoberi 2024-02-12
Maybe you can integrate the following solution to have the ability of ZSTD and LZ4 compression within .7z archives?
https://github.com/mcmilk/7-Zip-zstd
Thanks in advance!
Hello Igor, could you please also add prebuilt 7z.so to your Linux distribution. I built the previous version 7z.so and it was time consuming to clear all the issues.
Thanks in advance!