From: Andrew Cottrell Newsgroups: comp.os.msdos.djgpp Subject: Re: unsupported coff header Date: Mon, 27 Jan 2003 10:17:48 +1100 Organization: ECLiPSE Lines: 32 Message-ID: References: NNTP-Posting-Host: p139-tnt8.syd.ihug.com.au Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Trace: lust.ihug.co.nz 1043623072 24350 203.173.147.139 (26 Jan 2003 23:17:52 GMT) X-Complaints-To: abuse AT ihug DOT co DOT nz NNTP-Posting-Date: Sun, 26 Jan 2003 23:17:52 +0000 (UTC) X-Newsreader: Forte Agent 1.92/32.572 To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com >bash-2.04$ upx --best *.exe calc/*.exe expr/*.exe >> demo.log 2>&1 > > upx: isprime.exe: CantPackException: unsupported coff header This is aknown problem in UPX. In the latest UPX 1.2.4 it was modified to not pack DJGPP exe's with the latest coff header. The reason that this was done was that UPX can compress the exe and run the resulting exe fine, but cannot decompress it using UPX back to the original exe file and run it. As Eli pointed out the problem was that the coff header changed and the UPX maintainers changed the code to not compress the new coff header. If you wasnt to help out you could try to fix this yourself by looking at the Binutils and UPX source to see what is required to get them working. >On further tests, the executables of InfoZIP's zip and unzip built >with these tools could all be packed by UPX 1.24d while bzip2.exe >and bzip2recover.exe from bzip2-1.02 were with unsupported coff >headers. The zips build no library while bzip2 does. Is that a >clue? The behavior of gmp seems capricious. All of the exe files you have downloaded from the 2.04 page will not compress with UPX as they are all built with the Binutils that UPX does not like. The files from Simtel may compress if they were built with an old version of Binutils, but the latested Binutils is requried in order to build some of the files so the only option is for someone to look at the UPX source and fix it. Andrew