1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 <2018> 2019 2020 2021 2022 2023 2024 2025 | Index | 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 <2018> 2019 2020 2021 2022 2023 2024 2025 |
<== Date ==> | <== Thread ==> |
---|
Subject: | Re: P4P release 1.0 (PVAccess for Python) |
From: | "Williams Jr., Ernest L." <[email protected]> |
To: | Michael Davidsaver <[email protected]>, EPICS Tech-Talk <[email protected]> |
Date: | Mon, 12 Feb 2018 01:47:36 +0000 |
Hi Michael,
Awesome news. Thanks for releasing this. My initial results are below. I look forward to continued tests
From: [email protected] <[email protected]> on behalf of Michael Davidsaver <[email protected]>
Sent: Sunday, February 11, 2018 2:59 PM To: EPICS Tech-Talk Subject: P4P release 1.0 (PVAccess for Python) The first release of the P4P (PVAccess for Python) module is available
P4P is a binding for the PVAccess protocol client, and part of the server APIs. The client get, put, rpc, and monitor operations are supported. As a server, only the rpc operation can be implemented. Download https://github.com/mdavidsaver/p4p/releases/download/1.0/p4p-1.0.tar.gz Building from source https://mdavidsaver.github.io/p4p/building.html <============ Building ================>==================================>
The build was successful.
Host OS == Fedora release 27 (Twenty Seven)
Kernel == 4.14.16-300.fc27.x86_64
GCC == gcc version 7.3.1 20180130 (Red Hat 7.3.1-2) (GCC)
EPICS_BASE = R7.0.1.1
PYTHON = Python 3.6.4
numpy = numpy==1.14.0
<========================================================================>
Some results when building from source on Fedora 26:
make nose does not succeed: (maybe because I am using python3?)
[ernesto@localhost p4p-1.0]$ make nose
make -C ./configure install make[1]: Entering directory '/usr/local/controls/package/p4p-1.0/configure' make -C O.linux-x86_64 -f ../Makefile TOP=../.. \ T_A=linux-x86_64 install make[2]: Entering directory '/usr/local/controls/package/p4p-1.0/configure/O.linux-x86_64' make[2]: Nothing to be done for 'install'. make[2]: Leaving directory '/usr/local/controls/package/p4p-1.0/configure/O.linux-x86_64' make[1]: Leaving directory '/usr/local/controls/package/p4p-1.0/configure' make -C ./src install make[1]: Entering directory '/usr/local/controls/package/p4p-1.0/src' make -C O.linux-x86_64 -f ../Makefile TOP=../.. \ T_A=linux-x86_64 install make[2]: Entering directory '/usr/local/controls/package/p4p-1.0/src/O.linux-x86_64' make[2]: Nothing to be done for 'install'. make[2]: Leaving directory '/usr/local/controls/package/p4p-1.0/src/O.linux-x86_64' make[1]: Leaving directory '/usr/local/controls/package/p4p-1.0/src' make -C src/O.linux-x86_64 nose make[1]: Entering directory '/usr/local/controls/package/p4p-1.0/src/O.linux-x86_64' make -f ../Makefile TOP=../.. T_A=linux-x86_64 nose make[2]: Entering directory '/usr/local/controls/package/p4p-1.0/src/O.linux-x86_64' PYTHONPATH="/usr/local/controls/package/p4p-1.0/python3.6m/linux-x86_64" python -m nose -P p4p E ====================================================================== ERROR: Failure: ImportError (/usr/local/controls/package/p4p-1.0/python3.6m/linux-x86_64/p4p/_p4p.so: undefined symbol: _Py_FalseStruct ) ---------------------------------------------------------------------- Traceback (most recent call last): File "/usr/lib/python2.7/site-packages/nose/loader.py", line 407, in loadTestsFromName module = resolve_name(addr.module) File "/usr/lib/python2.7/site-packages/nose/util.py", line 312, in resolve_name module = __import__('.'.join(parts_copy)) File "/usr/local/controls/package/p4p-1.0/python3.6m/linux-x86_64/p4p/__init__.py", line 2, in <module> from .wrapper import Value, Type File "/usr/local/controls/package/p4p-1.0/python3.6m/linux-x86_64/p4p/wrapper.py", line 2, in <module> from ._p4p import Type, Value ImportError: /usr/local/controls/package/p4p-1.0/python3.6m/linux-x86_64/p4p/_p4p.so: undefined symbol: _Py_FalseStruct ---------------------------------------------------------------------- Ran 1 test in 0.001s FAILED (errors=1) make[2]: *** [../Makefile:55: nose] Error 1 make[2]: Leaving directory '/usr/local/controls/package/p4p-1.0/src/O.linux-x86_64' make[1]: *** [Makefile:8: nose] Error 2 make[1]: Leaving directory '/usr/local/controls/package/p4p-1.0/src/O.linux-x86_64' make: *** [Makefile:17: nose] Error 2 [ernesto@localhost p4p-1.0]$ However, the other recommended option does run and complete with success [ernesto@localhost linux-x86_64]$ cd /usr/local/controls/package/p4p-1.0/python3.6m/linux-x86_64 [ernesto@localhost linux-x86_64]$ PYTHONPATH=/usr/local/controls/package/p4p-1.0/python3.6m/linux-x86_64 nosetests-3 ..........................2018-02-11T17:34:47.253 Using dynamically assigned TCP port 35359. .2018-02-11T17:34:47.284 Using dynamically assigned TCP port 36373. .....2018-02-11T17:34:47.402 Using dynamically assigned TCP port 48073. ......................... ---------------------------------------------------------------------- Ran 57 tests in 1.084s OK [ernesto@localhost linux-x86_64]$ Initial tests with command line tools look good as well: [ernesto@localhost linux-x86_64]$ PYTHONPATH=/usr/local/controls/package/p4p-1.0/python3.6m/linux-x86_64 python3 -m p4p.client.cli get
ernesto:aiExample1 ernesto:aiExample1 Sun Feb 11 17:36:51 2018 9.0 [ernesto@localhost linux-x86_64]$ PYTHONPATH=/usr/local/controls/package/p4p-1.0/python3.6m/linux-x86_64 python3 -m p4p.client.cli moni tor ernesto:aiExample1 ernesto:aiExample1 Sun Feb 11 17:37:09 2018 7.0 ernesto:aiExample1 Sun Feb 11 17:37:10 2018 8.0 ernesto:aiExample1 Sun Feb 11 17:37:11 2018 9.0 ernesto:aiExample1 Sun Feb 11 17:37:12 2018 0.0 ernesto:aiExample1 Sun Feb 11 17:37:13 2018 1.0 ernesto:aiExample1 Sun Feb 11 17:37:14 2018 2.0 ernesto:aiExample1 Sun Feb 11 17:37:15 2018 3.0 ernesto:aiExample1 Sun Feb 11 17:37:16 2018 4.0 ernesto:aiExample1 Sun Feb 11 17:37:17 2018 5.0 ernesto:aiExample1 Sun Feb 11 17:37:18 2018 6.0 ernesto:aiExample1 Sun Feb 11 17:37:19 2018 7.0 ^C[ernesto@localhost linux-x86_64]$ <======================================================================================> Getting started with the client API https://mdavidsaver.github.io/p4p/starting.html Writing an RPC server (and client) https://mdavidsaver.github.io/p4p/rpc.html documentation index https://mdavidsaver.github.io/p4p/ |