compiling p7zip (7za for DOS)

compiling p7zip (7za for DOS)

Post by rugxul » Tue, 06 Mar 2007 06:44:35

Okay, I know some people here know how to compile this thing, but I'm
too frustrated to try by myself anymore without help:

1). What specific files do I need? (WATTCP?? pthreads??)
2). Where online can I download these specific file versions?
3). What non-essential DJGPP packages do I need (besides DJDEV204,
BNU2161, GCC410, GPP410, MAK3791)
4). What specific commands must I run? (`make 7za'??)

N.B. I'm running Win XP Home SP2 (no surprise there, it's very common
these days).

compiling p7zip (7za for DOS)

Post by Florian Xa » Tue, 06 Mar 2007 06:52:02


yes, you need WATT-32 and PTHREADS. No more special libraries should be
needed. Then you SHOULD only need to type make. If you have questions, I
think, Blair can help you:

There could be one reason:
I am also using WinXP SP2 sometimes...but MAKE has problem with it. So it
displays errors, which aren't... so I am compiling under FreeDOS, using
Necromancer DOS Navigator as IDE and have no problem - be very happy.


Florian Xaver

< > oZone GUI, private homepage
Dr-DOS < >


compiling p7zip (7za for DOS)

Post by Robert Rie » Tue, 06 Mar 2007 21:08:47


I "better-than-nothing" starting point would be

Although this DJGPP installation is somewhat messy or hacked, I
successfully compiled p7zip.

Robert Riebisch
Bitte NUR in der Newsgroup antworten!
Please reply to the Newsgroup ONLY!

compiling p7zip (7za for DOS)

Post by rugxul » Thu, 08 Mar 2007 12:39:08

I think there's a newer official FreeDOS 1.0 port (7za 4.42) than the
version on Blair's page, and that's the one I use:,

(However, this one seems, in my limited testing, to dislike CWSDPMI
for whatever reason. Just FYI, in case anyone has the same problem: on
my old P166 w/ 32 MB RAM, 7za 4.42 seemed to consistently segfault
unless I stubbed it with WDOS/X or used DR-DOS' DPMI server instead.
If anyone finds out why, I'll be glad to know.)

It's possible, but mainly I couldn't figure out for certain (since it
never worked) what files for WATT-32 and pthreads are necessary to
install. (Why is WATT-32 even needed??) So, it's no surprise that I
couldn't rebuild. :-/

compiling p7zip (7za for DOS)

Post by Florian Xa » Fri, 09 Mar 2007 03:31:43



I am using the "old" version from Blairs homepage and haven't a problem.

I think you have to install/compile both libraries and to link it to p7zip.
I also looked at the source code...C++ is maybe very nice...I am not a
fan, because it produce big programs.
But there seems be many overhead...?

Florian Xaver

< > oZone GUI, private homepage
Dr-DOS < >

compiling p7zip (7za for DOS)

Post by rugxul » Fri, 09 Mar 2007 10:40:00

I'm assuming its the DPMI 1.0 extensions (bad handling of NULL
pointers?) because using `cwsdpmi -x' stopped the page faults. Of
course, I just stubbed it with WDOS/X 0.97 to avoid having to manually
disable that every time.

Also, FYI to anyone else confused like me (heh), it seems to dislike
backslashes, so it only works if you do `p7zip a file.7z c:/utils/
dc.*' instead of doing it the normal DOS way.

P.S. Of course, using the Win32 console version of 7za.exe with HXRT
( ) also works well. :-)

compiling p7zip (7za for DOS)

Post by Blair Camp » Sat, 31 Mar 2007 07:44:09

> It's possible, but mainly I couldn't figure out for certain (since it

Well, the pthreads port is actually a port of GNU PTH, a
single-tasking multithreader, basically, which uses some sockets
functions. Which is why WATT-32 is needed. Obviously whoever ported
the program never bothered to take the effort to remove the
dependency, even though it could probably be done.

Fall is my favorite season in Los Angeles, watching the birds change
color and fall from the trees.
David Letterman (1947 - )

See ya