powered by simpleCommunicator - 2.0.38     © 2025 Programmizd 02
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Python + Cache
25 сообщений из 27, страница 1 из 2
Python + Cache
    #38656439
Фотография П.С.М.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кто сабж пробовал?
Установлено Cache 2014.1, поставил Python 3.4.1. в папке \dev\python попробовал поразбираться с примерами (ридми файлы читал, но как то они скомкано написан, и похоже давно не обновлялся). В итоге ничего не получилось :(. Может у кого получилось выполнить хотя бы примеры? Поделитесь опытом, что и как делали, как компилировали сишные файлы (pythonbind1.c - у меня не скомпилировался, а на pythonbind3.c ругается линковщик). И еще в модуле pythonbind3.py есть строка импорта:
Код: python
1.
import intersys.pythonbind31


где взять этот модуль?
PS: ОС Виндовс 32 бита.
...
Рейтинг: 0 / 0
Python + Cache
    #38656538
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пробовал читать python.txt в этой папке ? там написано как устанавливать и посмотреть как работает
авторTo install Python on Windows run from dev\python

python setup.py install

enter the directory of your Cache' installation

then to test installation from dev\pythontest\samples

python test.py


так что сначала нужно выполнить, в твоем случае для python3, вроде так
python setup3.py install
...
Рейтинг: 0 / 0
Python + Cache
    #38656709
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А чего кстати вдруг за питон взялся ? или на новом месте появилась необходимость ?
питон и на винде не самая конечно лучшая идея, хотя конечно и возможная
что хочешь делать на нем ?
...
Рейтинг: 0 / 0
Python + Cache
    #38656712
Фотография П.С.М.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пробовал читать python.txt в этой папке
Я его прочитал в первую очередь :) Желание написать сюда появилось после нескольких неудачных попыток выполнения того, что там написано.
В результате выполнения команды
Код: python
1.
python setup3.py install 


у меня появляется папка build в которой находятся
intersys/__init__.py
intersys/pythonbind.py
intersys/pythonbind3.py

но, я так понимаю должны еще и скомпилироваться сишные файлы (pythonbind1.c и pythonbind3.c соответственно).
И еще мне непонятна попытка импорта модуля intersys.pythonbind31 в файле pythonbind3.py. т.к. нет такого модуля. Для компиляции модулей pythonbind и pythonbind3 есть сишные файлы (pythonbind1.c и pythonbind3.c) а вот откуда брать pythonbind31 не понятно.
DAiMor сам пробовал по этому ридми файлу запустить тесты? получилось?
...
Рейтинг: 0 / 0
Python + Cache
    #38656714
Фотография П.С.М.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DAiMorА чего кстати вдруг за питон взялся ? или на новом месте появилась необходимость ?
В целях саморазвития :) К работе это отношение не имеет, просто экспериментирую в свободное время :)
...
Рейтинг: 0 / 0
Python + Cache
    #38656723
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
П.С.М.DAiMor сам пробовал по этому ридми файлу запустить тесты? получилось?Я пробовал, только дело было под linux, поэтому проблем было меньше.
...
Рейтинг: 0 / 0
Python + Cache
    #38656725
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
П.С.М.В целях саморазвития :) К работе это отношение не имеет, просто экспериментирую в свободное время :)Это правильно, саморазвитие это полезно.
...
Рейтинг: 0 / 0
Python + Cache
    #38656774
Фотография П.С.М.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DAiMorбыло под linux
Т.е. под линуксом это запускается - это уже хорошо :) Но хотелось бы попробовать это запустить и под виндовс.
...
Рейтинг: 0 / 0
Python + Cache
    #38656838
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Получилось заставить работать это и на Windows x64 и Python 3.3.3

Требуется наличие установленной Visual Studio, не знаю полноценной или нет, но как написано в документации , должен быть доступен vsvars32.bat
в моем случае это был
"C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Tools\vsvars32.bat"
у меня правда без прописывания в PATH, он вроде работал, но была с ним проблема, в PATH у меня были лишние кавычки, там их не должно быть совсем, иначе этот bat-ник не работает, его можно просто запустить и он не должен ничего вывести и отработать без ошибок, тогда все хорошо, можно продолжать дальше

после запустил
python setup3.py install
теперь он должен отработать без ошибок, если ошибки были дальше нужно их устранять пример не заработает

после этого при попытке запустить пример, получил ошибку
Код: plaintext
1.
2.
3.
4.
5.
Traceback (most recent call last):
  File "samples3\test.py", line 2, in <module>
    import intersys.pythonbind3
  File "c:\Python33\lib\site-packages\intersys\pythonbind3.py", line 1, in <module>
    import intersys.pythonbind31
ImportError: DLL load failed: The specified module could not be found.

решил копированием всех dll из папки C:\InterSystems\Ensemble14\dev\cpp\lib в папку C:\Python33\Lib\site-packages\intersys
после этого пример заработал

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Simple Python binding sample
Cache server port (default 1972)? 56775
Connection string: localhost[56775]:SAMPLES
Connecting to Cache server
Connected successfully
Creating database
Opening Sample.Person instance with ID 1 with default concurrency and timeout
Getting the value of the Name property
Value: Loveluck,Ashley X.
Test completed successfully
...
Рейтинг: 0 / 0
Python + Cache
    #38656875
Серъёзно, не надо насиловать python под windows, ни разу у меня не получалось его заставить нормально работать: то косяки с cygwin, то gcc отказывается собирать, то третья версия не поддерживается, то с путями всё плохо...
...
Рейтинг: 0 / 0
Python + Cache
    #38656880
Фотография П.С.М.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DAiMorрешил копированием всех dll из папки C:\InterSystems\Ensemble14\dev\cpp\lib в папку C:\Python33\Lib\site-packages\intersys
Ооо, а вот это я не делал :) Спасибо, попробую.
...
Рейтинг: 0 / 0
Python + Cache
    #38656929
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
П.С.М.DAiMorрешил копированием всех dll из папки C:\InterSystems\Ensemble14\dev\cpp\lib в папку C:\Python33\Lib\site-packages\intersys Ооо, а вот это я не делал :)И не надо, так как у Вас изначально Cache 2014.1 x86 , а у DAiMor - x64 . Вы установили Microsoft C/C++ compiler, например, Visual Studio 2008 или выше? Следуйте строго инструкциям в python.txt или из документации - и всё получится. не рубящий в кашеСеръёзно, не надо насиловать python под windows, ни разу у меня не получалось его заставить нормально работатьНа самом деле всё достаточно просто. Делал тест для Cache 2014.1 x64 и Visual Studio 2010:
  • устанавливаем Python 3.4.1 (x64)
  • из командной строки выполняем
    Код: plaintext
    "C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\Tools\vsvars32.bat"
    далее запускаем из %CacheHome%\dev\python
    Код: plaintext
    python setup3.py install
    и, наконец, сам пример из %CacheHome%\dev\python\samples3
    Код: plaintext
    1.
    2.
    3.
    4.
    5.
    6.
    7.
    8.
    9.
    10.
    C:\InterSystems\Cache\dev\python\samples3>python test.py
    Simple Python binding sample
    Cache server port (default 1972)?
    Connection string: localhost[1972]:SAMPLES
    Connecting to Cache server
    Connected successfully
    Creating database
    Opening Sample.Person instance with ID 1 with default concurrency and timeout
    Getting the value of the Name property
    Value: Young,Sally V.
    Test completed successfully
Ничего никуда не нужно копировать и/или донастраивать.
...
Рейтинг: 0 / 0
Python + Cache
    #38657062
Фотография П.С.М.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
servitВы установили Microsoft C/C++ compiler, например, Visual Studio 2008 или выше?
Ставил VC++ 2008, правда экспресс (но думаю это не принципиально).
И vsvars32.bat запускал, и все равно что-то не получалось. Но раз Вы говорите, что все просто и должно работать, значит я сам делал что-то не так :) Как только будет возможность - попробую.
PS: Спасибо за ответ.
...
Рейтинг: 0 / 0
Python + Cache
    #38657098
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
П.С.М. ,

Вы так и не привели результат выполнения

Код: plaintext
python setup3.py install

, в том числе и текст ошибки.
П.С.М.а на pythonbind3.c ругается линковщикЭтого мало, нужно само "ругательство".
...
Рейтинг: 0 / 0
Python + Cache
    #38657561
Фотография П.С.М.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
servit П.С.М. ,

Вы так и не привели результат выполнения

Код: plaintext
python setup3.py install

Выполнил vsvars32.bat, даю команду python setup3.py install, а в ответ:

c:\InterSystems\Cache\dev\python>python setup3.py install
enter directory where you installed Cache'
libdir=/dev/cpp/lib
include dir=/dev/cpp/include
libs=['cbind']
running install
running build
running build_py
running build_ext
building 'pythonbind31' extension
error: Unable to find vcvarsall.bat
Хотя в PATH путь, где находится этот бат файл, есть. Да и сам файл есть.
Поиском в инете нашел рекомендацию поставить более позднюю версию вижуал студии, например 2010. Попробую. Посмотрю что получится.

PS: а ругательства линковщика я получал при попытки скомпилировать сишные файлы в ручную :)
...
Рейтинг: 0 / 0
Python + Cache
    #38657574
Фотография П.С.М.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Удалил VC++ 2008 поставил 2010. И совсем другая картина :)
c:\InterSystems\Cache\dev\python>python setup3.py install
enter directory where you installed Cache'
libdir=c:/InterSystems/cache/dev/cpp/lib
include dir=c:/InterSystems/cache/dev/cpp/include
libs=['cbind']
running install
running build
running build_py
running build_ext
building 'pythonbind31' extension
creating build\temp.win32-3.4
creating build\temp.win32-3.4\Release
creating build\temp.win32-3.4\Release\intersys
C:\Program Files\Microsoft Visual Studio 10.0\VC\BIN\cl.exe /c /nologo /Ox /MD /
W3 /GS- /DNDEBUG -Ic:/InterSystems/cache/dev/cpp/include -IC:\Python34\include -
IC:\Python34\include /Tcintersys/pythonbind3.c /Fobuild\temp.win32-3.4\Release\i
ntersys/pythonbind3.obj
pythonbind3.c
C:\Program Files\Microsoft Visual Studio 10.0\VC\BIN\link.exe /DLL /nologo /INCR
EMENTAL:NO /LIBPATH:c:/InterSystems/cache/dev/cpp/lib /LIBPATH:C:\Python34\libs
/LIBPATH:C:\Python34\PCbuild cbind.lib /EXPORT:PyInit_pythonbind31 build\temp.wi
n32-3.4\Release\intersys/pythonbind3.obj /OUT:build\lib.win32-3.4\intersys\pytho
nbind31.pyd /IMPLIB:build\temp.win32-3.4\Release\intersys\pythonbind31.lib /MANI
FESTFILE:build\temp.win32-3.4\Release\intersys\pythonbind31.pyd.manifest
Creating library build\temp.win32-3.4\Release\intersys\pythonbind31.lib and o
bject build\temp.win32-3.4\Release\intersys\pythonbind31.exp
running install_lib
creating C:\Python34\Lib\site-packages\intersys
copying build\lib.win32-3.4\intersys\pythonbind.py -> C:\Python34\Lib\site-packa
ges\intersys
copying build\lib.win32-3.4\intersys\pythonbind3.py -> C:\Python34\Lib\site-pack
ages\intersys
copying build\lib.win32-3.4\intersys\pythonbind31.pyd -> C:\Python34\Lib\site-pa
ckages\intersys
copying build\lib.win32-3.4\intersys\__init__.py -> C:\Python34\Lib\site-package
s\intersys
byte-compiling C:\Python34\Lib\site-packages\intersys\pythonbind.py to pythonbin
d.cpython-34.pyc
byte-compiling C:\Python34\Lib\site-packages\intersys\pythonbind3.py to pythonbi
nd3.cpython-34.pyc
byte-compiling C:\Python34\Lib\site-packages\intersys\__init__.py to __init__.cp
ython-34.pyc
running install_egg_info
Writing C:\Python34\Lib\site-packages\pythonbind3-0.X-py3.4.egg-info
...
Рейтинг: 0 / 0
Python + Cache
    #38657604
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
П.С.М.Удалил VC++ 2008 поставил 2010. И совсем другая картина :)Тут выглядит так как будто все хорошо.
...
Рейтинг: 0 / 0
Python + Cache
    #38657785
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DAiMorП.С.М.Удалил VC++ 2008 поставил 2010. И совсем другая картина :)Тут выглядит так как будто все хорошо.Именно так: pythonbind31.pyd создан и скопирован.

П.С.М. ,

Работают теперь примеры?
...
Рейтинг: 0 / 0
Python + Cache
    #38657857
Фотография П.С.М.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
servit,
Будете смеяться, но нет :) не работают.
Результат команды запуска теста:
c:\InterSystems\Cache\dev\python\samples3>python test.py
Traceback (most recent call last):
File "test.py", line 2, in <module>
import intersys.pythonbind3
File "C:\Python34\lib\site-packages\intersys\pythonbind3.py", line 1, in <modu
le>
import intersys.pythonbind31
ImportError: DLL load failed: Не найден указанный модуль.
Но сам файл по тому пути существует.
А вот при запуске через утилиту dependens.exe видно следующее:
LoadLibraryExW("c:\python34\lib\site-packages\intersys\pythonbind31.pyd", 0x00000000, LOAD_WITH_ALTERED_SEARCH_PATH) called from "PYTHON34.DLL" at address 0x688A0601.
Loaded "PYTHONBIND31.PYD" at address 0x73E20000. Successfully hooked module.
Unloaded "PYTHONBIND31.PYD" at address 0x73E20000.
LoadLibraryExW("c:\python34\lib\site-packages\intersys\pythonbind31.pyd", 0x00000000, LOAD_WITH_ALTERED_SEARCH_PATH) returned NULL. Error: (126).

Т.е. сначала питон успешно загрузил библиотеку pythonbind31.pyd, потом зачем то выгрузил, а при попытке загрузить еще раз почему то не смог.
...
Рейтинг: 0 / 0
Python + Cache
    #38657860
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
П.С.М.ImportError: DLL load failed: Не найден указанный модуль.
как раз эту проблему я и решал копированием всех тех DLL, в данном случае сам питоновский модуль то найден а вот dll нужные ему для работы нет
...
Рейтинг: 0 / 0
Python + Cache
    #38657865
Фотография П.С.М.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DAiMor,

А вот копирование dll из \dev\cpp\lib в C:\Python34\Lib\site-packages\intersys действительно помогает. Тесты сразу стали запускаться :) . Хотя странно, почему питон не находил эти длл в \dev\cpp\lib, ведь путь к этой папке есть в PATH?
...
Рейтинг: 0 / 0
Python + Cache
    #38658255
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
П.С.М.А вот копирование dll из \dev\cpp\lib в C:\Python34\Lib\site-packages\intersys действительно помогает. Тесты сразу стали запускаться :) .Почему Вы не хотите прислушаться к документации?Документация / python.txt
  • Your PATH must include the <cachesys>\bin directory.
  • 2) Make sure CACHE_INSTALL_DIR/bin (or CACHE_INSTALL_DIR\bin) is on your path (Your CACHE_INSTALL_DIR might be /usr/cachesys/bin.)
...
Рейтинг: 0 / 0
Python + Cache
    #38658260
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
П.С.М.Хотя странно, почему питон не находил эти длл в \dev\cpp\lib, ведь путь к этой папке есть в PATH?Потому что не все DLL есть там: полный комплект нужных библиотек лежит в <cachesys>\bin.
...
Рейтинг: 0 / 0
Python + Cache
    #38659530
Фотография П.С.М.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
servitПочему Вы не хотите прислушаться к документации?
Ну почему же не хочу?
Это:
Your PATH must include the <cachesys>\bin directory.
2) Make sure CACHE_INSTALL_DIR/bin (or CACHE_INSTALL_DIR\bin) is on your path (Your CACHE_INSTALL_DIR might be /usr/cachesys/bin.)
я сделал в первую очередь. Вот:
>echo %PATH%
C:\Python34\;C:\Python34\Scripts;C:\Windows\system32;C:\Windows;C:\Windows\Syste
m32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\Microsoft
Visual Studio 9.0\VC;%CACHE_INSTALL_DIR%\bin;%CACHE_INSTALL_DIR%\dev\cpp\lib
>echo %CACHE_INSTALL_DIR%
C:\InterSystems\Cache
...
Рейтинг: 0 / 0
Python + Cache
    #38659675
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
П.С.М.Ну почему же не хочу?
Это:
я сделал в первую очередь. Вот:В таком случае всё должно работать и без копирования файлов и даже без %CACHE_INSTALL_DIR%\dev\cpp\lib .
У меня (Windows 7) echo %PATH% выдаёт полный путь ( C:\InterSystems\Cache\bin ), а не сокращённый ( %CACHE_INSTALL_DIR%\bin ).
Чтобы проверить доступность файлов, попробуйте запустить что-то из %CACHEHOME%\Bin , например CStudio.exe.П.С.М.ImportError: DLL load failed: Не найден указанный модуль.Такое ещё может быть, если битность Python и Caché не совпадают, но это ведь не Ваш случай.
...
Рейтинг: 0 / 0
25 сообщений из 27, страница 1 из 2
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Python + Cache
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]