pytgvoip icon indicating copy to clipboard operation
pytgvoip copied to clipboard

Error during installation

Open DopeforHope opened this issue 5 years ago • 7 comments

libtgvoip is build and ready

> ldconfig -p | grep voip
	libtgvoip.so.2 (libc6,x86-64) => /usr/local/lib/libtgvoip.so.2
	libtgvoip.so (libc6,x86-64) => /usr/local/lib/libtgvoip.so

But pip installation fails:

> pip install pytgvoip
Collecting pytgvoip
  Using cached pytgvoip-0.0.5.tar.gz (2.1 MB)
Building wheels for collected packages: pytgvoip
  Building wheel for pytgvoip (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /home/dopeforhope/virtualEnv/voip_tunnel/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-f_4hpsz9/pytgvoip/setup.py'"'"'; __file__='"'"'/tmp/pip-install-f_4hpsz9/pytgvoip/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-m3mene77
       cwd: /tmp/pip-install-f_4hpsz9/pytgvoip/
  Complete output (98 lines):
  /usr/lib/python3.6/distutils/dist.py:261: UserWarning: Unknown distribution option: 'python_required'
    warnings.warn(msg)
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.linux-x86_64-3.6
  creating build/lib.linux-x86_64-3.6/tgvoip
  copying src/tgvoip/__init__.py -> build/lib.linux-x86_64-3.6/tgvoip
  copying src/tgvoip/utils.py -> build/lib.linux-x86_64-3.6/tgvoip
  copying src/tgvoip/tgvoip.py -> build/lib.linux-x86_64-3.6/tgvoip
  running build_ext
  -- The C compiler identification is GNU 7.4.0
  -- The CXX compiler identification is GNU 7.4.0
  -- Check for working C compiler: /usr/bin/cc
  -- Check for working C compiler: /usr/bin/cc -- works
  -- Detecting C compiler ABI info
  -- Detecting C compiler ABI info - done
  -- Detecting C compile features
  -- Detecting C compile features - done
  -- Check for working CXX compiler: /usr/bin/c++
  -- Check for working CXX compiler: /usr/bin/c++ -- works
  -- Detecting CXX compiler ABI info
  -- Detecting CXX compiler ABI info - done
  -- Detecting CXX compile features
  -- Detecting CXX compile features - done
  -- Found PythonInterp: /home/dopeforhope/virtualEnv/voip_tunnel/bin/python3 (found version "3.6.9")
  -- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.6m.so
  -- pybind11 v2.3.dev0
  -- Found OpenSSL: /usr/lib/x86_64-linux-gnu/libcrypto.so (found version "1.1.1")
  -- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.1")
  -- Checking for module 'opus'
  --   Found opus, version 1.1.2
  -- Performing Test HAS_FLTO
  -- Performing Test HAS_FLTO - Success
  -- LTO enabled
  -- Configuring done
  -- Generating done
  -- Build files have been written to: /tmp/pip-install-f_4hpsz9/pytgvoip/build/temp.linux-x86_64-3.6
  Scanning dependencies of target lib_tgvoip
  [  1%] Building CXX object CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/CongestionControl.cpp.o
  [  1%] Building CXX object CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/BlockingQueue.cpp.o
  [  1%] Building CXX object CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/JitterBuffer.cpp.o
  cc1plus: error: -Werror=class-memaccess: no option -Wclass-memaccess
  cc1plus: error: -Werror=class-memaccess: no option -Wclass-memaccess
  CMakeFiles/lib_tgvoip.dir/build.make:88: recipe for target 'CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/CongestionControl.cpp.o' failed
  make[3]: *** [CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/CongestionControl.cpp.o] Error 1
  make[3]: *** Waiting for unfinished jobs....
  [  1%] Building CXX object CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/Buffers.cpp.o
  [  1%] Building CXX object CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/EchoCanceller.cpp.o
  CMakeFiles/lib_tgvoip.dir/build.make:62: recipe for target 'CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/BlockingQueue.cpp.o' failed
  make[3]: *** [CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/BlockingQueue.cpp.o] Error 1
  cc1plus: error: -Werror=class-memaccess: no option -Wclass-memaccess
  CMakeFiles/lib_tgvoip.dir/build.make:114: recipe for target 'CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/JitterBuffer.cpp.o' failed
  make[3]: *** [CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/JitterBuffer.cpp.o] Error 1
  cc1plus: error: -Werror=class-memaccess: no option -Wclass-memaccess
  cc1plus: error: -Werror=class-memaccess: no option -Wclass-memaccess
  CMakeFiles/lib_tgvoip.dir/build.make:75: recipe for target 'CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/Buffers.cpp.o' failed
  make[3]: *** [CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/Buffers.cpp.o] Error 1
  CMakeFiles/lib_tgvoip.dir/build.make:101: recipe for target 'CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/EchoCanceller.cpp.o' failed
  make[3]: *** [CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/EchoCanceller.cpp.o] Error 1
  CMakeFiles/Makefile2:109: recipe for target 'CMakeFiles/lib_tgvoip.dir/all' failed
  make[2]: *** [CMakeFiles/lib_tgvoip.dir/all] Error 2
  CMakeFiles/Makefile2:84: recipe for target 'CMakeFiles/_tgvoip.dir/rule' failed
  make[1]: *** [CMakeFiles/_tgvoip.dir/rule] Error 2
  Makefile:118: recipe for target '_tgvoip' failed
  make: *** [_tgvoip] Error 2
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/tmp/pip-install-f_4hpsz9/pytgvoip/setup.py", line 149, in <module>
      'Topic :: Software Development :: Libraries :: Python Modules',
    File "/home/dopeforhope/virtualEnv/voip_tunnel/lib/python3.6/site-packages/setuptools/__init__.py", line 145, in setup
      return distutils.core.setup(**attrs)
    File "/usr/lib/python3.6/distutils/core.py", line 148, in setup
      dist.run_commands()
    File "/usr/lib/python3.6/distutils/dist.py", line 955, in run_commands
      self.run_command(cmd)
    File "/usr/lib/python3.6/distutils/dist.py", line 974, in run_command
      cmd_obj.run()
    File "/home/dopeforhope/virtualEnv/voip_tunnel/lib/python3.6/site-packages/wheel/bdist_wheel.py", line 223, in run
      self.run_command('build')
    File "/usr/lib/python3.6/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/usr/lib/python3.6/distutils/dist.py", line 974, in run_command
      cmd_obj.run()
    File "/usr/lib/python3.6/distutils/command/build.py", line 135, in run
      self.run_command(cmd_name)
    File "/usr/lib/python3.6/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/usr/lib/python3.6/distutils/dist.py", line 974, in run_command
      cmd_obj.run()
    File "/tmp/pip-install-f_4hpsz9/pytgvoip/setup.py", line 63, in run
      self.build_extension(ext)
    File "/tmp/pip-install-f_4hpsz9/pytgvoip/setup.py", line 90, in build_extension
      subprocess.check_call(['cmake', '--build', '.'] + build_args, cwd=self.build_temp)
    File "/usr/lib/python3.6/subprocess.py", line 311, in check_call
      raise CalledProcessError(retcode, cmd)
  subprocess.CalledProcessError: Command '['cmake', '--build', '.', '--config', 'Release', '--target', '_tgvoip', '--', '-j5']' returned non-zero exit status 2.
  ----------------------------------------
  ERROR: Failed building wheel for pytgvoip
  Running setup.py clean for pytgvoip
Failed to build pytgvoip
Installing collected packages: pytgvoip
    Running setup.py install for pytgvoip ... error
    ERROR: Command errored out with exit status 1:
     command: /home/dopeforhope/virtualEnv/voip_tunnel/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-f_4hpsz9/pytgvoip/setup.py'"'"'; __file__='"'"'/tmp/pip-install-f_4hpsz9/pytgvoip/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-69z6nx0c/install-record.txt --single-version-externally-managed --compile --install-headers /home/dopeforhope/virtualEnv/voip_tunnel/include/site/python3.6/pytgvoip
         cwd: /tmp/pip-install-f_4hpsz9/pytgvoip/
    Complete output (100 lines):
    /usr/lib/python3.6/distutils/dist.py:261: UserWarning: Unknown distribution option: 'python_required'
      warnings.warn(msg)
    running install
    running build
    running build_py
    creating build
    creating build/lib.linux-x86_64-3.6
    creating build/lib.linux-x86_64-3.6/tgvoip
    copying src/tgvoip/__init__.py -> build/lib.linux-x86_64-3.6/tgvoip
    copying src/tgvoip/utils.py -> build/lib.linux-x86_64-3.6/tgvoip
    copying src/tgvoip/tgvoip.py -> build/lib.linux-x86_64-3.6/tgvoip
    running build_ext
    -- The C compiler identification is GNU 7.4.0
    -- The CXX compiler identification is GNU 7.4.0
    -- Check for working C compiler: /usr/bin/cc
    -- Check for working C compiler: /usr/bin/cc -- works
    -- Detecting C compiler ABI info
    -- Detecting C compiler ABI info - done
    -- Detecting C compile features
    -- Detecting C compile features - done
    -- Check for working CXX compiler: /usr/bin/c++
    -- Check for working CXX compiler: /usr/bin/c++ -- works
    -- Detecting CXX compiler ABI info
    -- Detecting CXX compiler ABI info - done
    -- Detecting CXX compile features
    -- Detecting CXX compile features - done
    -- Found PythonInterp: /home/dopeforhope/virtualEnv/voip_tunnel/bin/python3 (found version "3.6.9")
    -- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.6m.so
    -- pybind11 v2.3.dev0
    -- Found OpenSSL: /usr/lib/x86_64-linux-gnu/libcrypto.so (found version "1.1.1")
    -- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.1")
    -- Checking for module 'opus'
    --   Found opus, version 1.1.2
    -- Performing Test HAS_FLTO
    -- Performing Test HAS_FLTO - Success
    -- LTO enabled
    -- Configuring done
    -- Generating done
    -- Build files have been written to: /tmp/pip-install-f_4hpsz9/pytgvoip/build/temp.linux-x86_64-3.6
    Scanning dependencies of target lib_tgvoip
    [  0%] Building CXX object CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/Buffers.cpp.o
    [  0%] Building CXX object CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/BlockingQueue.cpp.o
    [  0%] Building CXX object CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/JitterBuffer.cpp.o
    [  0%] Building CXX object CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/EchoCanceller.cpp.o
    cc1plus: error: -Werror=class-memaccess: no option -Wclass-memaccess
    [  1%] Building CXX object CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/CongestionControl.cpp.o
    cc1plus: error: -Werror=class-memaccess: no option -Wclass-memaccess
    cc1plus: error: -Werror=class-memaccess: no option -Wclass-memaccess
    CMakeFiles/lib_tgvoip.dir/build.make:62: recipe for target 'CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/BlockingQueue.cpp.o' failed
    make[3]: *** [CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/BlockingQueue.cpp.o] Error 1
    make[3]: *** Waiting for unfinished jobs....
    CMakeFiles/lib_tgvoip.dir/build.make:75: recipe for target 'CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/Buffers.cpp.o' failed
    make[3]: *** [CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/Buffers.cpp.o] Error 1
    cc1plus: error: -Werror=class-memaccess: no option -Wclass-memaccess
    cc1plus: error: -Werror=class-memaccess: no option -Wclass-memaccess
    CMakeFiles/lib_tgvoip.dir/build.make:101: recipe for target 'CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/EchoCanceller.cpp.o' failed
    make[3]: *** [CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/EchoCanceller.cpp.o] Error 1
    CMakeFiles/lib_tgvoip.dir/build.make:114: recipe for target 'CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/JitterBuffer.cpp.o' failed
    make[3]: *** [CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/JitterBuffer.cpp.o] Error 1
    CMakeFiles/lib_tgvoip.dir/build.make:88: recipe for target 'CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/CongestionControl.cpp.o' failed
    make[3]: *** [CMakeFiles/lib_tgvoip.dir/3rdparty/libtgvoip/CongestionControl.cpp.o] Error 1
    CMakeFiles/Makefile2:109: recipe for target 'CMakeFiles/lib_tgvoip.dir/all' failed
    make[2]: *** [CMakeFiles/lib_tgvoip.dir/all] Error 2
    CMakeFiles/Makefile2:84: recipe for target 'CMakeFiles/_tgvoip.dir/rule' failed
    make[1]: *** [CMakeFiles/_tgvoip.dir/rule] Error 2
    Makefile:118: recipe for target '_tgvoip' failed
    make: *** [_tgvoip] Error 2
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-install-f_4hpsz9/pytgvoip/setup.py", line 149, in <module>
        'Topic :: Software Development :: Libraries :: Python Modules',
      File "/home/dopeforhope/virtualEnv/voip_tunnel/lib/python3.6/site-packages/setuptools/__init__.py", line 145, in setup
        return distutils.core.setup(**attrs)
      File "/usr/lib/python3.6/distutils/core.py", line 148, in setup
        dist.run_commands()
      File "/usr/lib/python3.6/distutils/dist.py", line 955, in run_commands
        self.run_command(cmd)
      File "/usr/lib/python3.6/distutils/dist.py", line 974, in run_command
        cmd_obj.run()
      File "/home/dopeforhope/virtualEnv/voip_tunnel/lib/python3.6/site-packages/setuptools/command/install.py", line 61, in run
        return orig.install.run(self)
      File "/usr/lib/python3.6/distutils/command/install.py", line 589, in run
        self.run_command('build')
      File "/usr/lib/python3.6/distutils/cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "/usr/lib/python3.6/distutils/dist.py", line 974, in run_command
        cmd_obj.run()
      File "/usr/lib/python3.6/distutils/command/build.py", line 135, in run
        self.run_command(cmd_name)
      File "/usr/lib/python3.6/distutils/cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "/usr/lib/python3.6/distutils/dist.py", line 974, in run_command
        cmd_obj.run()
      File "/tmp/pip-install-f_4hpsz9/pytgvoip/setup.py", line 63, in run
        self.build_extension(ext)
      File "/tmp/pip-install-f_4hpsz9/pytgvoip/setup.py", line 90, in build_extension
        subprocess.check_call(['cmake', '--build', '.'] + build_args, cwd=self.build_temp)
      File "/usr/lib/python3.6/subprocess.py", line 311, in check_call
        raise CalledProcessError(retcode, cmd)
    subprocess.CalledProcessError: Command '['cmake', '--build', '.', '--config', 'Release', '--target', '_tgvoip', '--', '-j5']' returned non-zero exit status 2.
    ----------------------------------------
ERROR: Command errored out with exit status 1: /home/dopeforhope/virtualEnv/voip_tunnel/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-f_4hpsz9/pytgvoip/setup.py'"'"'; __file__='"'"'/tmp/pip-install-f_4hpsz9/pytgvoip/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-69z6nx0c/install-record.txt --single-version-externally-managed --compile --install-headers /home/dopeforhope/virtualEnv/voip_tunnel/include/site/python3.6/pytgvoip Check the logs for full command output.

OS: Ubuntu 18.04 Python: 3.6.9

DopeforHope avatar Feb 01 '20 02:02 DopeforHope

It seems like you're trying to make tgvoip.

I only could install the library by issuing the following commands:

autoreconf --force --install
./configure --disable-static
make
sudo make install
sudo ldconfig

Otherwise I got some problems with libtool

DopeforHope avatar Feb 01 '20 02:02 DopeforHope

Current version does not require separate libtgvoip building. Also, gcc 8 or newer is required, earlier versions do not support some compiler flags.

bakatrouble avatar Feb 01 '20 03:02 bakatrouble

OS: Ubuntu 18.04 Python: 3.6.9

Hello!

I've successfully installed the package on Ubuntu 18.04 with Python 3.6.9 after these preconfig steps:

sudo snap install cmake sudo apt install -y build-essential libssl-dev libopus-dev sudo apt install gcc-8 sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 700 --slave /usr/bin/g++ g++ /usr/bin/g++-7 sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 800 --slave /usr/bin/g++ g++ /usr/bin/g++-8 pip install pytgvoip

Cmake from apt package is out-of-date - so install with snap. Package build requires gcc 8+ - so set default gcc compiler for 8th version.

dmzubr avatar May 14 '20 13:05 dmzubr

OS: Ubuntu 18.04 Python: 3.6.9

Hello!

I've successfully installed the package on Ubuntu 18.04 with Python 3.6.9 after these preconfig steps:

sudo snap install cmake sudo apt install -y build-essential libssl-dev libopus-dev sudo apt install gcc-8 sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 700 --slave /usr/bin/g++ g++ /usr/bin/g++-7 sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 800 --slave /usr/bin/g++ g++ /usr/bin/g++-8 pip install pytgvoip

Cmake from apt package is out-of-date - so install with snap. Package build requires gcc 8+ - so set default gcc compiler for 8th version.

this worked for me, thanks a lot <3

zsamora avatar May 21 '20 15:05 zsamora

In my case I need to install both gcc-8 AND g++-8 apt install g++-8

I also need to compile cmake but this is because snap is not working in docker image : https://askubuntu.com/questions/829310/how-to-upgrade-cmake-in-ubuntu

jjehl avatar Sep 09 '20 09:09 jjehl

OS: Ubuntu 18.04 Python: 3.6.9

Hello!

I've successfully installed the package on Ubuntu 18.04 with Python 3.6.9 after these preconfig steps:

sudo snap install cmake sudo apt install -y build-essential libssl-dev libopus-dev sudo apt install gcc-8 sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 700 --slave /usr/bin/g++ g++ /usr/bin/g++-7 sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 800 --slave /usr/bin/g++ g++ /usr/bin/g++-8 pip install pytgvoip

Cmake from apt package is out-of-date - so install with snap. Package build requires gcc 8+ - so set default gcc compiler for 8th version.

What about Windows? Is there any solution for this OS?

bekhruzdilshod avatar Jan 24 '21 10:01 bekhruzdilshod

OS: Ubuntu 18.04 Python: 3.6.9

Hello! I've successfully installed the package on Ubuntu 18.04 with Python 3.6.9 after these preconfig steps: sudo snap install cmake sudo apt install -y build-essential libssl-dev libopus-dev sudo apt install gcc-8 sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 700 --slave /usr/bin/g++ g++ /usr/bin/g++-7 sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 800 --slave /usr/bin/g++ g++ /usr/bin/g++-8 pip install pytgvoip Cmake from apt package is out-of-date - so install with snap. Package build requires gcc 8+ - so set default gcc compiler for 8th version.

What about Windows? Is there any solution for this OS?

Unfortunately I can't answer. Didn't try on Windows.

dmzubr avatar Jan 24 '21 12:01 dmzubr