Как встроить Python 2.4 в приложение C ++, используя VS C ++ 6.0?

Я получаю эту ошибку связывания, используя Python 2.4 и MS VC ++ 6:

Linking...
testPyEmb.obj : error LNK2001: unresolved external symbol __imp__Py_Finalize
testPyEmb.obj : error LNK2001: unresolved external symbol __imp__PyErr_Occurred
testPyEmb.obj : error LNK2001: unresolved external symbol __imp__PyErr_Print
testPyEmb.obj : error LNK2001: unresolved external symbol _printf
testPyEmb.obj : error LNK2001: unresolved external symbol __imp__PyInt_AsLong
testPyEmb.obj : error LNK2001: unresolved external symbol __imp__PyObject_CallObject
testPyEmb.obj : error LNK2001: unresolved external symbol __imp__PyTuple_SetItem
testPyEmb.obj : error LNK2001: unresolved external symbol __imp__PyInt_FromLong
testPyEmb.obj : error LNK2001: unresolved external symbol _atoi
testPyEmb.obj : error LNK2001: unresolved external symbol __imp__PyTuple_New
testPyEmb.obj : error LNK2001: unresolved external symbol __imp__PyCallable_Check
testPyEmb.obj : error LNK2001: unresolved external symbol __imp__PyObject_GetAttrString
testPyEmb.obj : error LNK2001: unresolved external symbol __imp__PyImport_Import
testPyEmb.obj : error LNK2001: unresolved external symbol __imp__PyString_FromString
testPyEmb.obj : error LNK2001: unresolved external symbol __imp__Py_Initialize
testPyEmb.obj : error LNK2001: unresolved external symbol _fprintf
testPyEmb.obj : error LNK2001: unresolved external symbol __iob

Добавление этого в мой исходный файл не помогло:

#undef _DEBUG

Я изменил pyconfig.h, чтобы отключить режим отладки и принудительно использовать python24.lib вместо python24_d.lib, как показано здесь: http://tutorial.debashis.net/?p=57&cpage = 1
Все та же ошибка.

Что я могу делать не так?

2

Решение

Поскольку вы говорите, что ссылаетесь на .lib, возможно, вы установили 64-битную версию Python и, таким образом, ссылаетесь на 64-битную версию .lib-файла, но ваша конфигурация сборки (я подозреваю) 32 бит. Перейдите в Configuration Manager и измените его на 64-разрядный.

Надеюсь это поможет.
Marius.

7

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]