Thank you for your answer !

I have done what you said and I got this after typing python3 setup.py install --user :

running install
running build_ext
building '_PyIndi' extension
swigging indiclientpython.i to indiclientpython_wrap.cpp
swig -python -v -Wall -c++ -threads -I/usr/include -I/usr/include/libindi -o indiclientpython_wrap.cpp indiclientpython.i
Language subdirectory: python
Search paths:
   ./
   /usr/include/
   /usr/include/libindi/
   ./swig_lib/python/
   /usr/share/swig3.0/python/
   ./swig_lib/
   /usr/share/swig3.0/
Preprocessing...
Starting language-specific parse...
/usr/include/libindi/baseclient.h:33: Warning 322: Redundant redeclaration of 'MAXRBUF',
/usr/include/libindi/indibase.h:8: Warning 322: previous declaration of 'MAXRBUF'.
/usr/include/libindi/baseclient.h:229: Warning 325: Nested struct not currently supported (BLOBMode ignored)
/usr/include/libindi/basedevice.h:30: Warning 322: Redundant redeclaration of 'MAXRBUF',
/usr/include/libindi/indibase.h:8: Warning 322: previous declaration of 'MAXRBUF'.
Processing types...
C++ analysis...
/usr/include/libindi/baseclient.h:55: Warning 403: Class 'INDI::BaseClient' might be abstract, no constructors generated,
/usr/include/libindi/indibase.h:78: Warning 403: Method INDI::BaseMediator::newDevice(INDI::BaseDevice *) might not be implemented.
Processing nested classes...
Generating wrappers...
Traceback (most recent call last):
  File "setup.py", line 110, in <module>
    "Topic :: Scientific/Engineering :: Astronomy"
  File "/usr/lib/python3.5/distutils/core.py", line 148, in setup
    dist.run_commands()
  File "/usr/lib/python3.5/distutils/dist.py", line 955, in run_commands
    self.run_command(cmd)
  File "/usr/lib/python3.5/distutils/dist.py", line 974, in run_command
    cmd_obj.run()
  File "setup.py", line 61, in run
    self.run_command('build_ext')
  File "/usr/lib/python3.5/distutils/cmd.py", line 313, in run_command
    self.distribution.run_command(command)
  File "/usr/lib/python3.5/distutils/dist.py", line 974, in run_command
    cmd_obj.run()
  File "/usr/lib/python3/dist-packages/setuptools/command/build_ext.py", line 49, in run
    _build_ext.run(self)
  File "/usr/lib/python3.5/distutils/command/build_ext.py", line 338, in run
    self.build_extensions()
  File "/usr/lib/python3.5/distutils/command/build_ext.py", line 447, in build_extensions
    self._build_extensions_serial()
  File "/usr/lib/python3.5/distutils/command/build_ext.py", line 472, in _build_extensions_serial
    self.build_extension(ext)
  File "/usr/lib/python3/dist-packages/setuptools/command/build_ext.py", line 174, in build_extension
    _build_ext.build_extension(self, ext)
  File "/usr/lib/python3.5/distutils/command/build_ext.py", line 532, in build_extension
    depends=ext.depends)
  File "/usr/lib/python3.5/distutils/ccompiler.py", line 574, in compile
    self._compile(obj, src, ext, cc_args, extra_postargs, pp_opts)
  File "/usr/lib/python3.5/distutils/unixccompiler.py", line 118, in _compile
    extra_postargs)
TypeError: can only concatenate list (not "str") to list

Did it worked ?

I tried to import PyIndi in Python and it raised an error saying that it doesn't find the module :
Traceback (most recent call last):
  File "/home/clement/pyindi-client-code/pip/pyindi-client/PyIndi.py", line 18, in swig_import_helper
    fp, pathname, description = imp.find_module('_PyIndi', [dirname(__file__)])
  File "/usr/lib/python3.5/imp.py", line 296, in find_module
    raise ImportError(_ERR_MSG.format(name), name=name)
ImportError: No module named '_PyIndi'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/clement/pyindi-client-code/pip/pyindi-client/PyIndi.py", line 28, in <module>
    _PyIndi = swig_import_helper()
  File "/home/clement/pyindi-client-code/pip/pyindi-client/PyIndi.py", line 20, in swig_import_helper
    import _PyIndi
ImportError: No module named '_PyIndi'

Maybe there is another step.

Read More...