Я создаю приложение на Python из некоторого исходного кода, который нашел Здесь
Мне удалось скомпилировать и исправить некоторые проблемы с помощью поиска в Интернете, но я застрял в этой точке:
При запуске приложения появляется это сообщение.
альтернативный текст http://img511.imageshack.us/img511/4481/loadfr0.png
Это приложение на Python использует swig для ссылки на код c / c ++.
У меня есть VC ++ 2005, экспресс-выпуск, который я использовал для компиляции вместе со scons
и Python 2.5 (и пробовал 2.4 тоже)
DLL-файлы, которые пытаются загрузить, - это «msvcr80.dll», потому что до появления сообщения «msvcr80.dll» не удалось найти или что-то в этом роде, поэтому я получил его и бросил в папку window32.
Для того, что я прочитал здесь:
http://msdn.microsoft.com/en-us/library/ms235591(VS.80).aspx
Решение - запустить MT с манифестом и файлом dll. Я уже это сделал и тоже не работает.
Может ли кто-нибудь указать мне правильное направление?
Это содержимое манифеста:
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
<dependency>
<dependentAssembly>
<assemblyIdentity type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' />
</dependentAssembly>
</dependency>
</assembly>
Я собираюсь попробовать Python 2.6 сейчас, я не совсем уверен в понимании проблемы, но Python 2.5 и Python 2.5 .exe содержали строку "MSVCR71.dll" внутри файла .exe. Но, вероятно, это не имеет ничего общего.
пс. если бы все было так просто, как jar-файлы :(
Это трассировка стека для полноты
None
INFO:root:Skipping provider enso.platform.osx.
INFO:root:Skipping provider enso.platform.linux.
INFO:root:Added provider enso.platform.win32.
Traceback (most recent call last):
File "scripts\run_enso.py", line 24, in <module>
enso.run()
File "C:\oreyes\apps\enso\enso-read-only\enso\__init__.py", line 40, in run
from enso.events import EventManager
File "C:\oreyes\apps\enso\enso-read-only\enso\events.py", line 60, in <module>
from enso import input
File "C:\oreyes\apps\enso\enso-read-only\enso\input\__init__.py", line 3, in <module>
_input = enso.providers.getInterface( "input" )
File "C:\oreyes\apps\enso\enso-read-only\enso\providers.py", line 137, in getInterface
interface = provider.provideInterface( name )
File "C:\oreyes\apps\enso\enso-read-only\enso\platform\win32\__init__.py", line 48, in provideInterface
import enso.platform.win32.input
File "C:\oreyes\apps\enso\enso-read-only\enso\platform\win32\input\__init__.py", line 3, in <module>
from InputManager import *
File "C:\oreyes\apps\enso\enso-read-only\enso\platform\win32\input\InputManager.py", line 7, in <module>
import _InputManager
ImportError: DLL load failed: Error en una rutina de inicializaci¾n de biblioteca de vÝnculos dinßmicos (DLL).