Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблема с boost.python, неправильно определяет версию питона 
:(
    Опции темы
feeling
Дата 23.4.2009, 21:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 23.4.2009

Репутация: нет
Всего: нет



Я создаю пустой dll проект, в котором описываю два класса и функции к ним.
Затем - 
Код

BOOST_PYTHON_MODULE(module_py_dll)
{
    class_<Data>("Data");
    class_<Process>("Process")
        .def("set_Time", &Process::set_Time)
        .def("set_Mask", &Process::set_Mask)
        .def("Open", &Process::Open)
        .def("Start", &Process::Start);
}

При компиляции требует - boost_python-vc90-mt-gd-1_38.lib и python25.lib, и я ему это даю.
И всё замечательно компилиться в module_py_dll.pyd.
В питоне при попытке импортировать module_py_dll.pyd, приложение начинает требовать python26.dll (хотя у меня стоит python 2.5.4).

Подскажите в чём может быть причина!
Boost устанавливал при помощи BoostPro, который коннектится куда нужно и устанавливает нужные бинарники.

P.S.
При попытке подсунуть питоновскому приложению python26.dll или python25.dll вылетает с ошибкой - Fatal Python error: Interpreter not initialized (version mismatch?)
PM MAIL   Вверх
Lazin
Дата 23.4.2009, 22:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

Репутация: 41
Всего: 154



Цитата(feeling @  23.4.2009,  21:09 Найти цитируемый пост)
Boost устанавливал при помощи BoostPro, который коннектится куда нужно и устанавливает нужные бинарники.

видимо он установил не те бинарники)
попробуйте самостоятельно собрать boost, с нужной версией python, либо установите python 2.6 smile 
PM MAIL Skype GTalk   Вверх
feeling
Дата 24.4.2009, 01:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 23.4.2009

Репутация: нет
Всего: нет



А boost имеет какие-то поддерживаемые версиипитона?
У меня boost 1.38 - может он поддерживает толбко питон 2.6 и выше?
Есть где-нибудь такая информация? Я не смог найти.
PM MAIL   Вверх
Lazin
Дата 24.4.2009, 08:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

Репутация: 41
Всего: 154



поддерживаются все версии, начиная с 2.2, в документации об этом и о том, как собрать boost.python для определенной версии python подробно написано:
http://www.boost.org/doc/libs/1_38_0/libs/...c/building.html

Добавлено через 3 минуты и 34 секунды
у меня установлен python 2.5, сборка boost-python лишних телодвижения не потребовала, запустил bjam, обнаружил в папке lib библиотеки boost_python-vs80***
PM MAIL Skype GTalk   Вверх
feeling
Дата 24.4.2009, 16:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 23.4.2009

Репутация: нет
Всего: нет



Но в чём причина того, что при компиляции требуется python25.lib, а при использовании - python26.dll?
PM MAIL   Вверх
feeling
Дата 24.4.2009, 17:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 23.4.2009

Репутация: нет
Всего: нет



Спасибо за советы.
Проблема решена установкой boost 1.35 - самая старая версия с поддержкой vc++9.0
Всё замечательно работает и не требует питоновских dll.
Скорее всего boost 1.38 питает большую любвь к питону 2.6(по умолчанию) если устанавливать его  со скомпиленными бинарниками.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0644 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.