Статическая библиотека, созданная в 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"

Другие вопросы по тегам