Суть файлов GrdFWBO.obj, GrdFWMC.obj и GrdFWMO.obj

В руководстве рекомендуется все библиотеки Guardant подключать статически.
Работаю в Embarcadero C++Builder 2010. Какие из GrdFWBO.obj, GrdFWMC.obj и GrdFWMO.obj файлов нужно подключать? Что обозначают эти аббревиатуры в названиях файлов?

Re: Суть файлов GrdFWBO.obj, GrdFWMC.obj и GrdFWMO.obj

Добрый день!

“GrdFWBO.obj” - Guardant Flat Windows Borland OMF
“GrdFWMC.obj” - Guardant Flat Windows Microsoft COFF
“GrdFWMO.obj” - Guardant Flat Windows Microsoft OMF
“GrdFWMC64.obj” - Guardant Flat Windows Microsoft COFF x64

Для 32-x битных компиляторов Embarcadero C++Builder следует использовать файл “GrdFWBO.obj”.

32-x битные компиляторы Embarcadero C++Builder (ранее Borland C++ Builder) всегда работали только с OMF-форматом объектных файлов, причём искажения имён для Microsoft Visual C++ и Borland C++ разные. 
Поддержка COFF-формата появилась в 64-х битных компиляторах Delphi, а также в  32-x  битных, начиная с версии  Embarcadero Delphi XE2 (где можно использовать GrdFWMC.obj). Появится ли поддержка COFF-формата для 32-х битных компиляторов C++ Builder мне неизвестно.

Re: Суть файлов GrdFWBO.obj, GrdFWMC.obj и GrdFWMO.obj

Спасибо. А то я несколько удивился, что одного файла GrdFWBO.obj оказалось достаточно в моем приложении.
А вот все lib-файлы пришлось самому конвертировать в OMF утилитой coff2omf.exe. Или где-то были готовые файлы, а я не заметил?

Re: Суть файлов GrdFWBO.obj, GrdFWMC.obj и GrdFWMO.obj

К сожалению, готовых .lib файлов для Borland в SDK нет.

Re: Суть файлов GrdFWBO.obj, GrdFWMC.obj и GrdFWMO.obj

А в какой версии Visual Studio собран GrdFWMC.obj?
Вроде как если версии разные, то может и не собраться. Мне повезло, в VS2008 Express собралось все нормально.

Re: Суть файлов GrdFWBO.obj, GrdFWMC.obj и GrdFWMO.obj

Корректная работа объектного файла на всех версиях Visual Studio является не случайным стечением обстоятельств, а предсказуемым результатом.
Данный файл является результатом работы нашей системы защиты. Неверно говорить о том, на каком компиляторе API собрано изначально, т.к. система защиты сама содержит свой “линковщик” COFF-формата. В файле нет runtime, наружу видны только системные вызовы Windows API. Вы можете в этом сами убедиться с помощью утилиты dumpbin.exe.

Re: Суть файлов GrdFWBO.obj, GrdFWMC.obj и GrdFWMO.obj

Теперь стало понятно. Вообще, лучше было бы, если это было где-то описано. И про формат файлов, и совместимость версий.

Re: Суть файлов GrdFWBO.obj, GrdFWMC.obj и GrdFWMO.obj

Спасибо, мы постараемся учесть ваши замечания.

Re: Суть файлов GrdFWBO.obj, GrdFWMC.obj и GrdFWMO.obj

В windows использую компилятор Visual C++ 2010 Express, но программу пишу и собираю в Qt-creator. Подскажите пожалуйста как подключить obj файл. В linux у меня получается статическая сборка (при подключении libgrdapi.a), а в windows не получается (при подключении Grdapi32.lib).

Re: Суть файлов GrdFWBO.obj, GrdFWMC.obj и GrdFWMO.obj

Разобрался. Нужно в файл .pro добавить строки:

OBJECTS += GrdFWMC.obj
LIBS += USER32.LIB OLE32.LIB

Я раньше так и делал, но без USER32.LIB и OLE32.LIB и было много ошибок на которые я не обращал внимания. Посмотрел внимательно что там написано и добавил недостающие библиотеки.