|App Version Reviewed||2.08 (May 27th 2009)|
|Supported OSes||Windows, Linux|
|Support Methods||Forum, e-mail|
|Pricing Scheme||Open Source|
|Relationship btwn. Reviewer and Product|| REVIEWER: Regular user|
First of all let me warn you that this is a tool for programmers, and probably only a small subset of those will ever need a tool like this.
Objconv is a command line tool that can convert object and library files between a number of formats, and also perform certain changes in the process.
Objconv at the moment supports COFF, ELF, OMF and MACHO formats, with both 32-bit and 64-bit support where possible.
It can be used as a simple library manager because it supports adding and extracting members.
Objconv also includes a disassembler supporting the SSE4, AVX, FMA and XOP instruction sets.
The author, Agner Fog, is well known for his work on documenting low level optimization techniques, and the pdf files available from his homepage are a great resource.Who is this app designed for:
Objconv is a tool for programmers who need to convert object files or libraries between different formats.
One example would be if you would like to use an object/library in your project which is only available in a format that is not supported by your development tools. Another would be if you are the developer of a library and would like to provide it in various formats to support your users.The Good
Objconv is one of the few object conversion tools that I have tried that actually works in most cases. Of course it only changes the object format and not the actual code, so it will not perform magic conversions of MFC libraries to work on Linux or similar, but if you know what you are doing it can save you quite a bit of work.
It is fast and easy to use, and the options to dump objects, modify symbols and perform library management tasks means it can replace a couple of other tools.The needs improvement section
While I like command line tools, there might be developers who would prefer a gui.
It would be nice if there was simple wildcard support in the switches for changing symbol names, like -nl:foo_*
to make all symbols starting with foo_
invisible.How does it compare to similar apps
Many development tools have some quirks about what object files they will accept, and I have run into problems in the past with for instance the Borland Pascal/Delphi compilers, where some conversion tools would produce object files that did not work.Conclusions
Objconv is a tool with a very limited audience, but if you happen to be a developer who needs an object conversion tool it is an excellent choice.
Even if you do not, you might be interested in checking out some of Agner's optimization manuals if you are a C/C++ coder or otherwise interested in low level optimization.