Thanks, I saw that plugin on the main HexRay page and it looks very interesting. A colleague of mine would very much like to have it also on his MacOS, did anybody compile it for that platform?
We tried it ourselves (using XCode's g++), but it's kind of driving us nuts (I admit we're new to plugin programming though)... first, it seems the source doesn't work with SDK 6.6, so we downloaded 6.1 (is 6.1 the newest version the plugin is made for btw?) and also installed IDA 6.1 in order to get the correct hexrays.hpp. Unfortunately, this (as well as the main program) also includes windows.h, so we copied the complete include tree from WinSDK. But again, at some point additional includes that are not in this tree should be laoded, like excpt.h, so we tried removing the include completely and adding the required defines manually. But there are still some strange compiler specifics... like the %a format specifier, that I had to replace by %x, but also some really odd error messages like
Code:
./negative_cast.h:52:21: error: extra qualification on member 'struc_reference_t'
struc_reference_t::struc_reference_t():idx_from(BADNODE), idx_to(BADNODE), type(srt_invalid)
(Where we removed the leading "struc_reference_t::", after which this part worked), or
Code:
./new_struct.h:74:45: error: expected expression
iterator i = std::find_if(begin(), end(), [=](value_type & t){return t.offset == offset;});
(Bummer, we have no idea what the [=] thing means), or
Code:
./new_struct.h:99:51: error: a space is required between consecutive right angle brackets (use '> >')
typedef std::map<ea_t, qvector<scanned_variable_t>> scanned_variables_t;
(OK, that's easy to fix, still weird).
All in all, seems to be more difficult than we thought to compile it on a different platform, hence my question if maybe somebody already did this, and what's the best approach for this? Or is it a hopeless try?