Выпуск составлен с библиотекой отладки и наоборотC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Выпуск составлен с библиотекой отладки и наоборот

Сообщение Anonymous »

Несколько месяцев спустя я решил построить свой старый проект, который использует время выполнения Python. И это было чудо: релиз не построил бы, был неразрешенный внешний символ py_initialize и т. Д. Я поменял библиотеки:

Код: Выделить всё

#ifdef MS_COREDLL
#       if !defined(Py_BUILD_CORE) && !defined(Py_BUILD_CORE_BUILTIN)
/* not building the core - must be an ext */
#               if defined(_MSC_VER)
/* So MSVC users need not specify the .lib
file in their Makefile (other compilers are
generally taken care of by distutils.) */
#                       if defined(_DEBUG)
#                               pragma comment(lib,"python311.lib")
#                       elif defined(Py_LIMITED_API)
#                               pragma comment(lib,"python3.lib")
#                       else
#                               pragma comment(lib,"python311_d.lib")
#                       endif /* _DEBUG */
#               endif /* _MSC_VER */
#       endif /* Py_BUILD_CORE */
#endif /* MS_COREDLL */
< /code>
и все сработало. Только релиз теперь требует отладочной сборки Python (Python311_d.dll).
Кто -нибудь знает причину этой магии? />   msvc sdk v 143 < /p>
< /li>
  Flag -Flage Runtime Runtime /Mt < /code> < /p>
< /li>
  Debug Flag /Mtd < /code> < /p>
< /li>
                   макрос установлен, в то время как релиз имеет
NODEBUG
.

Подробнее здесь: https://stackoverflow.com/questions/797 ... vice-versa
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»