Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT sources DOT redhat DOT com Delivered-To: mailing list cygwin AT sources DOT redhat DOT com Date: Thu, 24 May 2001 01:51:59 +0300 From: Paul Sokolovsky X-Mailer: The Bat! (v1.32) S/N 66C82930 Reply-To: Paul Sokolovsky X-Priority: 3 (Normal) Message-ID: <477.010524@is.lg.ua> To: mingw-users AT lists DOT sourceforge DOT net CC: cygwin AT cygwin DOT com Subject: [ANN] altbinutils-pe 1.0 - suite of utilities useful when dealing with PE/win32 executables Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Hello mingw-users, altbinutils-pe is a collection of several utilities by different authors put into single package. This is first binary release and public announcement of it, though some utilities might be available before. Currently suite includes (unless noted, written by me): 1. a2dll - script to convert static library to DLL; Sample: ========= $ar d libstdc++.a vfork.o $ar d libstdc++.a waitpid.o $ar d libstdc++.a strerror.o $a2dll --no-default-excludes libstdc++.a Creating shared library 'libstdc++.dll' Shared library exports data symbols, they are listed in 'libstdc++.dll.data'. You should probably ignore them since latest ld has capability to link against data symbols automagically. But if you have any concerns with it, read on. To use the data symbols in client application, linked with old or non-gnu-ld linker, you should mark them as __declspec(dllimport) in library headers. You can quickly find places where these data symbols declared by issuing grep -f libstdc++.dll.data *.h in library header directory. Also note that this step may be not required, you can postpone it until you'll get during linking unresolved symbol _imp__, where is one of the symbols listed in libstdc++.dll.data. Read documentation (static2dll_howto.txt) for more information. $ls libstdc++.a libstdc++.dll libstdc++.dll.a ========= 2. pexports - utility by Anders Norlander to create .def file from a dll; Sample: ========= $pexports libstdc++.dll LIBRARY libstdc++.dll EXPORTS Bbase__9streambuf Bptr__9streambuf DllMain AT 12 DllMainCRTStartup AT 12 Gbase__9streambuf Nbase__9streambuf _$_10bad_typeid [] ========= 3. checkdll - utility to check loadability and relocatability of a DLL. Sample: ========= $checkdll libstdc++.dll Copying to temp 'dlla01400.dll' Handles (load addrs) are: 62dc0000 64180000 Image is relocatable ========= 4. ldd-win32 - ldd workalike for win32 (utility to trace shared library dependencies of an executable) (based on pexports and some public domain code); Sample: ========= $ldd hello ntdll.dll => E:\WINNT\System32\ntdll.dll (0x77f80000) libstdc++.dll => E:\usr\local\libstdc++.dll (0x64180000) KERNEL32.dll => E:\WINNT\system32\KERNEL32.dll (0x77e80000) msvcrt.dll => E:\WINNT\system32\msvcrt.dll (0x78000000) ========= Altbinutils-pe binary package is available from mingwrep project at SourceForge: http://sourceforge.net/projects/mingwrep/ . Sources available from project's CVS. -- Paul Sokolovsky, IT Specialist http://www.brainbench.com/transcript.jsp?pid=11135 -- Want to unsubscribe from this list? Check out: http://cygwin.com/ml/#unsubscribe-simple