Статическая библиотека, созданная в VS2010, не поддерживается в CVI
Я создал простую статическую библиотеку Ansi-C90 с VS2010. Мне удалось создать C++ проект в VS2010, импортировать и полностью протестировать библиотеку.
Я открыл проект LabWindows CVI и попытался импортировать туда файл lib.
К сожалению, там не так много всего - единственное сообщение, которое я получаю: "Обнаружен плохой заголовок при чтении внешнего модуля:" Release \ mylib.obj ""
Есть ли способ, как я могу выяснить, что не так с моим файлом lib? Есть ли какой-то стандартный формат, которому VS2010 не следует?
РЕДАКТИРОВАНИЕ № 1:
Я определил возможный источник проблемы, но в настоящее время я не могу это проверить. VS2010 не компилируется как статические библиотеки с одним потоком - эта функция была удалена. Возможно, что CVI не может обрабатывать статические многопоточные библиотеки.
Я также разместил этот вопрос на форуме NI.
РЕДАКТИРОВАТЬ № 2:
Ссылка на форум NI была сломана - я предполагаю, что это ошибка NI, и предоставляю ссылку поиска Google для публикации.
1 ответ
Пользователь Mohan на форумах NI разместил ответ там.
Необходимо изменить один параметр в Visual Studio, чтобы CVI мог импортировать файл:
Properties
-> General
-> Whole Program Optimization
По умолчанию это "Use Link Time Code Generation
"
Должен быть изменен на: "No Whole Program Optimization
"