Giter Site home page Giter Site logo

pycomedi's Introduction

This package provides an object-oriented interface to the Comedi_
drivers.  The standard Python interface bundled with Comedilib is a
simple SWIG clone of the C interface.  In pycomedi, we convert the
functions into class methods (see ``pycomedi.classes``), so you don't
have to worry about dragging around opaque types like ``comedi_t *``
device pointers.  We also bundle related constants together in
``_Enums`` and ``_Flags`` (see ``pycomedi.constants``), to make
handling common operations like flag manipulations simpler.  Finally,
there are a number of utility classes (see ``pycomedi.utility``) to
make common tasks like creating instructions or reading hardware-timed
analog input easier.


Installation
============

Packages
--------

Gentoo
~~~~~~

I've packaged pycomedi for Gentoo.  You need layman_ and my `wtk
overlay`_.  Install with::

    # emerge -av app-portage/layman
    # layman --add wtk
    # emerge -av dev-python/pycomedi


Dependencies
------------

If you're installing by hand or packaging pycomedi for another
distribution, you'll need the following dependencies:

============  ===================  ================  ==============================
Package       Purpose              Debian_           Gentoo_
============  ===================  ================  ==============================
NumPy_        ?                    python-numpy      dev-python/numpy
SciPy_        testing              python-scipy      sci-libs/scipy
Comedi_       Comedilib interface  python-comedilib  sci-libs/comedilib [#wtk]_
nose_         testing              python-nose       dev-python/nose
Cython_       Comedilib interface  cython            dev-python/cython
python-kmod_  Optional ext. info.                    dev-python/python-kmod [#wtk]_
============  ===================  ================  ==============================

.. [#wtk] In the `wtk overlay`_.

If python-kmod is installed, you will get additional module
information from the ``info.py`` demo program.  If it is not
installed, everything will still work, but ``info.py`` will only be
able to get the module version, not the kernel version, staging-ness,
parameters, etc.


Installing by hand
------------------

Pycomedi is available as a Git_ repository::

    $ git clone git://tremily.us/pycomedi.git


See the homepage_ for details.  To install the checkout, run the
standard::

    $ python setup.py install


Usage
=====

See the examples in the ``doc`` directory.


Testing
=======

Run integration tests with::

    $ nosetests --with-doctest --doctest-extension=txt doc

The analog integration tests read from analog input channels 0 through
3, and write to analog output channels 0 and 1, so you'll need a board
with that many channels.  You should also make sure that the analog
output channels aren't plugged into anything sensetive, since the
tests sweep their output around over a reasonable chunk of the channel
range.  Some of the internal unit tests also write, so it's safest to
just disconnect all digital lines and analog outputs before running
the tests.

Run both integration tests and internal unit tests with::

    $ ./test.sh


Licence
=======

This project is distributed under the `GNU General Public License
Version 2`_ or greater.


Author
======

W. Trevor King
[email protected]


.. _Comedi: http://www.comedi.org/
.. _layman: http://layman.sourceforge.net/
.. _wtk overlay: http://blog.tremily.us/posts/Gentoo_overlay/
.. _science overlay: http://overlays.gentoo.org/proj/science/wiki/en
.. _Debian: http://www.debian.org/
.. _Gentoo: http://www.gentoo.org/
.. _NumPy: http://numpy.scipy.org/
.. _SciPy: http://www.scipy.org/
.. _nose: http://somethingaboutorange.com/mrl/projects/nose/
.. _Cython: http://www.cython.org/
.. _python-kmod: https://github.com/agrover/python-kmod/
.. _Git: http://git-scm.com/
.. _homepage: http://blog.tremily.us/posts/pycomedi/
.. _GNU General Public License Version 2:
     http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt

pycomedi's People

Contributors

pieleric avatar wking avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

pycomedi's Issues

No module named 'chanspec'

Hi,
I got this while trying to use pycomedi on Debian Jessie with Python 3.4
Python 3.4.2 (default, Oct 8 2014, 13:14:40)
[GCC 4.9.1] on linux
Type "help", "copyright", "credits" or "license" for more information.

from pycomedi.device import Device
Traceback (most recent call last):
File "", line 1, in
File "pycomedi/instruction.pxd", line 22, in init pycomedi.device (pycomedi/device.c:5065)
File "pycomedi/instruction.pyx", line 25, in init pycomedi.instruction (pycomedi/instruction.c:2605)
ImportError: No module named 'chanspec'

Here is the log of when I installed pycomedi:

yann@pcqu1r0x:~/dev/pycomedi$ sudo python3.4 ./setup.py install
running install
running build
running build_py
running build_ext
skipping 'pycomedi/_error.c' Cython extension (up-to-date)
building 'pycomedi._error' extension
i586-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -g -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -fPIC -I/usr/local/lib/python3.4/dist-packages/numpy/core/include -I/usr/include/python3.4m -c pycomedi/_error.c -o build/temp.linux-i686-3.4/pycomedi/_error.o
pycomedi/_error.c: In function ‘__pyx_pf_8pycomedi_6_error_raise_error’:
pycomedi/_error.c:1022:22: warning: assignment discards ‘const’ qualifier from pointer target type
__pyx_v_comedi_msg = comedi_strerror(__pyx_v_errno);
^
i586-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,relro -g -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 build/temp.linux-i686-3.4/pycomedi/_error.o -lcomedi -o build/lib.linux-i686-3.4/pycomedi/_error.cpython-34m.so
cythoning pycomedi/calibration.pyx to pycomedi/calibration.c
building 'pycomedi.calibration' extension
i586-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -g -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -fPIC -I/usr/local/lib/python3.4/dist-packages/numpy/core/include -I/usr/include/python3.4m -c pycomedi/calibration.c -o build/temp.linux-i686-3.4/pycomedi/calibration.o
In file included from /usr/local/lib/python3.4/dist-packages/numpy/core/include/numpy/ndarraytypes.h:1804:0,
from /usr/local/lib/python3.4/dist-packages/numpy/core/include/numpy/ndarrayobject.h:17,
from /usr/local/lib/python3.4/dist-packages/numpy/core/include/numpy/arrayobject.h:4,
from pycomedi/calibration.c:241:
/usr/local/lib/python3.4/dist-packages/numpy/core/include/numpy/npy_1_7_deprecated_api.h:15:2: warning: #warning "Using deprecated NumPy API, disable it by " "#defining NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION" [-Wcpp]
#warning "Using deprecated NumPy API, disable it by "
^
In file included from /usr/local/lib/python3.4/dist-packages/numpy/core/include/numpy/ndarrayobject.h:26:0,
from /usr/local/lib/python3.4/dist-packages/numpy/core/include/numpy/arrayobject.h:4,
from pycomedi/calibration.c:241:
/usr/local/lib/python3.4/dist-packages/numpy/core/include/numpy/__multiarray_api.h:1629:1: warning: ‘_import_array’ defined but not used [-Wunused-function]
_import_array(void)
^
In file included from /usr/local/lib/python3.4/dist-packages/numpy/core/include/numpy/ufuncobject.h:317:0,
from pycomedi/calibration.c:242:
/usr/local/lib/python3.4/dist-packages/numpy/core/include/numpy/__ufunc_api.h:241:1: warning: ‘_import_umath’ defined but not used [-Wunused-function]
_import_umath(void)
^
i586-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,relro -g -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 build/temp.linux-i686-3.4/pycomedi/calibration.o -lcomedi -o build/lib.linux-i686-3.4/pycomedi/calibration.cpython-34m.so
cythoning pycomedi/channel.pyx to pycomedi/channel.c
building 'pycomedi.channel' extension
i586-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -g -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -fPIC -I/usr/local/lib/python3.4/dist-packages/numpy/core/include -I/usr/include/python3.4m -c pycomedi/channel.c -o build/temp.linux-i686-3.4/pycomedi/channel.o
In file included from /usr/local/lib/python3.4/dist-packages/numpy/core/include/numpy/ndarraytypes.h:1804:0,
from /usr/local/lib/python3.4/dist-packages/numpy/core/include/numpy/ndarrayobject.h:17,
from /usr/local/lib/python3.4/dist-packages/numpy/core/include/numpy/arrayobject.h:4,
from pycomedi/channel.c:239:
/usr/local/lib/python3.4/dist-packages/numpy/core/include/numpy/npy_1_7_deprecated_api.h:15:2: warning: #warning "Using deprecated NumPy API, disable it by " "#defining NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION" [-Wcpp]
#warning "Using deprecated NumPy API, disable it by "
^
In file included from /usr/local/lib/python3.4/dist-packages/numpy/core/include/numpy/ndarrayobject.h:26:0,
from /usr/local/lib/python3.4/dist-packages/numpy/core/include/numpy/arrayobject.h:4,
from pycomedi/channel.c:239:
/usr/local/lib/python3.4/dist-packages/numpy/core/include/numpy/__multiarray_api.h:1629:1: warning: ‘_import_array’ defined but not used [-Wunused-function]
_import_array(void)
^
In file included from /usr/local/lib/python3.4/dist-packages/numpy/core/include/numpy/ufuncobject.h:317:0,
from pycomedi/channel.c:240:
/usr/local/lib/python3.4/dist-packages/numpy/core/include/numpy/__ufunc_api.h:241:1: warning: ‘_import_umath’ defined but not used [-Wunused-function]
_import_umath(void)
^
i586-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,relro -g -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 build/temp.linux-i686-3.4/pycomedi/channel.o -lcomedi -o build/lib.linux-i686-3.4/pycomedi/channel.cpython-34m.so
cythoning pycomedi/chanspec.pyx to pycomedi/chanspec.c
building 'pycomedi.chanspec' extension
i586-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -g -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -fPIC -I/usr/local/lib/python3.4/dist-packages/numpy/core/include -I/usr/include/python3.4m -c pycomedi/chanspec.c -o build/temp.linux-i686-3.4/pycomedi/chanspec.o
i586-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,relro -g -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 build/temp.linux-i686-3.4/pycomedi/chanspec.o -lcomedi -o build/lib.linux-i686-3.4/pycomedi/chanspec.cpython-34m.so
cythoning pycomedi/command.pyx to pycomedi/command.c
building 'pycomedi.command' extension
i586-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -g -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -fPIC -I/usr/local/lib/python3.4/dist-packages/numpy/core/include -I/usr/include/python3.4m -c pycomedi/command.c -o build/temp.linux-i686-3.4/pycomedi/command.o
i586-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,relro -g -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 build/temp.linux-i686-3.4/pycomedi/command.o -lcomedi -o build/lib.linux-i686-3.4/pycomedi/command.cpython-34m.so
cythoning pycomedi/constant.pyx to pycomedi/constant.c
building 'pycomedi.constant' extension
i586-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -g -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -fPIC -I/usr/local/lib/python3.4/dist-packages/numpy/core/include -I/usr/include/python3.4m -c pycomedi/constant.c -o build/temp.linux-i686-3.4/pycomedi/constant.o
i586-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,relro -g -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 build/temp.linux-i686-3.4/pycomedi/constant.o -lcomedi -o build/lib.linux-i686-3.4/pycomedi/constant.cpython-34m.so
cythoning pycomedi/device.pyx to pycomedi/device.c
building 'pycomedi.device' extension
i586-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -g -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -fPIC -I/usr/local/lib/python3.4/dist-packages/numpy/core/include -I/usr/include/python3.4m -c pycomedi/device.c -o build/temp.linux-i686-3.4/pycomedi/device.o
pycomedi/device.c: In function ‘__pyx_pf_8pycomedi_6device_6Device_16get_driver_name’:
pycomedi/device.c:2060:15: warning: assignment discards ‘const’ qualifier from pointer target type
__pyx_v_ret = comedi_get_driver_name(__pyx_v_self->__pyx_base.device);
^
pycomedi/device.c: In function ‘__pyx_pf_8pycomedi_6device_6Device_18get_board_name’:
pycomedi/device.c:2193:15: warning: assignment discards ‘const’ qualifier from pointer target type
__pyx_v_ret = comedi_get_board_name(__pyx_v_self->__pyx_base.device);
^
i586-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,relro -g -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 build/temp.linux-i686-3.4/pycomedi/device.o -lcomedi -o build/lib.linux-i686-3.4/pycomedi/device.cpython-34m.so
cythoning pycomedi/device_holder.pyx to pycomedi/device_holder.c
building 'pycomedi.device_holder' extension
i586-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -g -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -fPIC -I/usr/local/lib/python3.4/dist-packages/numpy/core/include -I/usr/include/python3.4m -c pycomedi/device_holder.c -o build/temp.linux-i686-3.4/pycomedi/device_holder.o
i586-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,relro -g -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 build/temp.linux-i686-3.4/pycomedi/device_holder.o -lcomedi -o build/lib.linux-i686-3.4/pycomedi/device_holder.cpython-34m.so
cythoning pycomedi/instruction.pyx to pycomedi/instruction.c
building 'pycomedi.instruction' extension
i586-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -g -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -fPIC -I/usr/local/lib/python3.4/dist-packages/numpy/core/include -I/usr/include/python3.4m -c pycomedi/instruction.c -o build/temp.linux-i686-3.4/pycomedi/instruction.o
i586-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,relro -g -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 build/temp.linux-i686-3.4/pycomedi/instruction.o -lcomedi -o build/lib.linux-i686-3.4/pycomedi/instruction.cpython-34m.so
cythoning pycomedi/library.pyx to pycomedi/library.c
building 'pycomedi.library' extension
i586-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -g -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -fPIC -I/usr/local/lib/python3.4/dist-packages/numpy/core/include -I/usr/include/python3.4m -c pycomedi/library.c -o build/temp.linux-i686-3.4/pycomedi/library.o
i586-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,relro -g -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 build/temp.linux-i686-3.4/pycomedi/library.o -lcomedi -o build/lib.linux-i686-3.4/pycomedi/library.cpython-34m.so
cythoning pycomedi/range.pyx to pycomedi/range.c
building 'pycomedi.range' extension
i586-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -g -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -fPIC -I/usr/local/lib/python3.4/dist-packages/numpy/core/include -I/usr/include/python3.4m -c pycomedi/range.c -o build/temp.linux-i686-3.4/pycomedi/range.o
i586-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,relro -g -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 build/temp.linux-i686-3.4/pycomedi/range.o -lcomedi -o build/lib.linux-i686-3.4/pycomedi/range.cpython-34m.so
cythoning pycomedi/subdevice.pyx to pycomedi/subdevice.c
building 'pycomedi.subdevice' extension
i586-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -g -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -fPIC -I/usr/local/lib/python3.4/dist-packages/numpy/core/include -I/usr/include/python3.4m -c pycomedi/subdevice.c -o build/temp.linux-i686-3.4/pycomedi/subdevice.o
i586-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,relro -g -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 build/temp.linux-i686-3.4/pycomedi/subdevice.o -lcomedi -o build/lib.linux-i686-3.4/pycomedi/subdevice.cpython-34m.so
cythoning pycomedi/subdevice_holder.pyx to pycomedi/subdevice_holder.c
building 'pycomedi.subdevice_holder' extension
i586-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -g -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -fPIC -I/usr/local/lib/python3.4/dist-packages/numpy/core/include -I/usr/include/python3.4m -c pycomedi/subdevice_holder.c -o build/temp.linux-i686-3.4/pycomedi/subdevice_holder.o
i586-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,relro -g -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 build/temp.linux-i686-3.4/pycomedi/subdevice_holder.o -lcomedi -o build/lib.linux-i686-3.4/pycomedi/subdevice_holder.cpython-34m.so
running install_lib
creating /usr/local/lib/python3.4/dist-packages/pycomedi
copying build/lib.linux-i686-3.4/pycomedi/device.cpython-34m.so -> /usr/local/lib/python3.4/dist-packages/pycomedi
copying build/lib.linux-i686-3.4/pycomedi/instruction.cpython-34m.so -> /usr/local/lib/python3.4/dist-packages/pycomedi
copying build/lib.linux-i686-3.4/pycomedi/calibration.cpython-34m.so -> /usr/local/lib/python3.4/dist-packages/pycomedi
copying build/lib.linux-i686-3.4/pycomedi/subdevice_holder.cpython-34m.so -> /usr/local/lib/python3.4/dist-packages/pycomedi
copying build/lib.linux-i686-3.4/pycomedi/init.py -> /usr/local/lib/python3.4/dist-packages/pycomedi
copying build/lib.linux-i686-3.4/pycomedi/channel.cpython-34m.so -> /usr/local/lib/python3.4/dist-packages/pycomedi
copying build/lib.linux-i686-3.4/pycomedi/subdevice.cpython-34m.so -> /usr/local/lib/python3.4/dist-packages/pycomedi
copying build/lib.linux-i686-3.4/pycomedi/_error.cpython-34m.so -> /usr/local/lib/python3.4/dist-packages/pycomedi
copying build/lib.linux-i686-3.4/pycomedi/utility.py -> /usr/local/lib/python3.4/dist-packages/pycomedi
copying build/lib.linux-i686-3.4/pycomedi/library.cpython-34m.so -> /usr/local/lib/python3.4/dist-packages/pycomedi
copying build/lib.linux-i686-3.4/pycomedi/chanspec.cpython-34m.so -> /usr/local/lib/python3.4/dist-packages/pycomedi
copying build/lib.linux-i686-3.4/pycomedi/device_holder.cpython-34m.so -> /usr/local/lib/python3.4/dist-packages/pycomedi
copying build/lib.linux-i686-3.4/pycomedi/command.cpython-34m.so -> /usr/local/lib/python3.4/dist-packages/pycomedi
copying build/lib.linux-i686-3.4/pycomedi/range.cpython-34m.so -> /usr/local/lib/python3.4/dist-packages/pycomedi
copying build/lib.linux-i686-3.4/pycomedi/constant.cpython-34m.so -> /usr/local/lib/python3.4/dist-packages/pycomedi
byte-compiling /usr/local/lib/python3.4/dist-packages/pycomedi/init.py to init.cpython-34.pyc
byte-compiling /usr/local/lib/python3.4/dist-packages/pycomedi/utility.py to utility.cpython-34.pyc
running install_egg_info
Writing /usr/local/lib/python3.4/dist-packages/pycomedi-0.8.egg-info

Thanks!

Build error vs comedilib

Linker errors occur building pycomedi on an Arch x86_64 system with libcomedi 0.10.2 and python 3.5.2 installed. Is it possible to make this combination work?

$ python setup.py build
running build
running build_py
running build_ext
skipping 'pycomedi/_error.c' Cython extension (up-to-date)
building 'pycomedi._error' extension
gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -fPIC -I/usr/lib/python3.5/site-packages/numpy/core/include -I/usr/include/python3.5m -c pycomedi/_error.c -o build/temp.linux-x86_64-3.5/pycomedi/_error.o
pycomedi/_error.c: In function ‘__pyx_pf_8pycomedi_6_error_raise_error’:
pycomedi/_error.c:1126:22: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
   __pyx_v_comedi_msg = comedi_strerror(__pyx_v_errno);
                      ^
gcc -pthread -shared -Wl,-O1,--sort-common,--as-needed,-z,relro build/temp.linux-x86_64-3.5/pycomedi/_error.o -L/usr/lib -lcomedi -lpython3.5m -o build/lib.linux-x86_64-3.5/pycomedi/_error.cpython-35m-x86_64-linux-gnu.so
/usr/bin/ld: /usr/lib/libcomedi.a(libcomedi_la-error.o): relocation R_X86_64_TPOFF32 against symbol `__comedi_errno' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: build/lib.linux-x86_64-3.5/pycomedi/_error.cpython-35m-x86_64-linux-gnu.so: version node not found for symbol comedi_perror@@v0.7.18
/usr/bin/ld: failed to set dynamic section sizes: Bad value
collect2: error: ld returned 1 exit status
error: command 'gcc' failed with exit status 1
$ pacman -Qo /usr/lib/libcomedi.a
/usr/lib/libcomedi.a is owned by comedilib 0.10.2-1

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.