MarshalX / tgcalls

Voice chats, private incoming and outgoing calls in Telegram for Developers
https://t.me/tgcallslib
GNU Lesser General Public License v3.0
516 stars 91 forks source link

Raspberry Pi OS 64 Unable to install #94

Closed hdcola closed 3 years ago

hdcola commented 3 years ago

uname:

Linux raspberrypi 5.10.17-v7l+ #1421 SMP Thu May 27 14:00:13 BST 2021 armv7l GNU/Linux

pip version 21.1.3

install error:

 pip install pytgcalls
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Collecting pytgcalls
  Using cached pytgcalls-0.0.23-py3-none-any.whl (21 kB)
Requirement already satisfied: pyrogram>=1.2.0 in /home/pi/py3/lib/python3.7/site-packages (from pytgcalls) (1.2.9)
  Using cached pytgcalls-0.0.22-py3-none-any.whl (21 kB)
  Using cached pytgcalls-0.0.21-py3-none-any.whl (21 kB)
  Using cached pytgcalls-0.0.19-py3-none-any.whl (19 kB)
  Using cached pytgcalls-0.0.18-py3-none-any.whl (19 kB)
  Using cached pytgcalls-0.0.17-py3-none-any.whl (18 kB)
  Using cached pytgcalls-0.0.16-py3-none-any.whl (17 kB)
  Using cached pytgcalls-0.0.15-py3-none-any.whl (17 kB)
  Using cached pytgcalls-0.0.14-py3-none-any.whl (17 kB)
  Using cached pytgcalls-0.0.13-py3-none-any.whl (17 kB)
  Using cached pytgcalls-0.0.12-py3-none-any.whl (17 kB)
  Using cached pytgcalls-0.0.11-py3-none-any.whl (15 kB)
  Using cached pytgcalls-0.0.10-py3-none-any.whl (14 kB)
  Using cached pytgcalls-0.0.9-py3-none-any.whl (14 kB)
  Using cached pytgcalls-0.0.8-py3-none-any.whl (14 kB)
  Using cached pytgcalls-0.0.7-py3-none-any.whl (14 kB)
  Using cached pytgcalls-0.0.6-py3-none-any.whl (11 kB)
  Using cached pytgcalls-0.0.5-py3-none-any.whl (11 kB)
  Using cached pytgcalls-0.0.4-py3-none-any.whl (11 kB)
  Using cached pytgcalls-0.0.3-py3-none-any.whl (10 kB)
  Using cached https://www.piwheels.org/simple/pytgcalls/pytgcalls-0.0.2-py3-none-any.whl (10 kB)
ERROR: Cannot install pytgcalls==0.0.10, pytgcalls==0.0.11, pytgcalls==0.0.12, pytgcalls==0.0.13, pytgcalls==0.0.14, pytgcalls==0.0.15, pytgcalls==0.0.16, pytgcalls==0.0.17, pytgcalls==0.0.18, pytgcalls==0.0.19, pytgcalls==0.0.2, pytgcalls==0.0.21, pytgcalls==0.0.22, pytgcalls==0.0.23, pytgcalls==0.0.3, pytgcalls==0.0.4, pytgcalls==0.0.5, pytgcalls==0.0.6, pytgcalls==0.0.7, pytgcalls==0.0.8 and pytgcalls==0.0.9 because these package versions have conflicting dependencies.

The conflict is caused by:
    pytgcalls 0.0.23 depends on tgcalls==0.0.16
    pytgcalls 0.0.22 depends on tgcalls==0.0.15
    pytgcalls 0.0.21 depends on tgcalls==0.0.14
    pytgcalls 0.0.19 depends on tgcalls==0.0.12
    pytgcalls 0.0.18 depends on tgcalls==0.0.12
    pytgcalls 0.0.17 depends on tgcalls==0.0.11
    pytgcalls 0.0.16 depends on tgcalls==0.0.10
    pytgcalls 0.0.15 depends on tgcalls==0.0.10
    pytgcalls 0.0.14 depends on tgcalls==0.0.10
    pytgcalls 0.0.13 depends on tgcalls==0.0.9
    pytgcalls 0.0.12 depends on tgcalls==0.0.8
    pytgcalls 0.0.11 depends on tgcalls==0.0.7
    pytgcalls 0.0.10 depends on tgcalls==0.0.6
    pytgcalls 0.0.9 depends on tgcalls==0.0.5
    pytgcalls 0.0.8 depends on tgcalls==0.0.4
    pytgcalls 0.0.7 depends on tgcalls==0.0.4
    pytgcalls 0.0.6 depends on tgcalls==0.0.4
    pytgcalls 0.0.5 depends on tgcalls==0.0.3
    pytgcalls 0.0.4 depends on tgcalls==0.0.3
    pytgcalls 0.0.3 depends on tgcalls==0.0.3
    pytgcalls 0.0.2 depends on tgcalls==0.0.2

To fix this you could try to:
1. loosen the range of package versions you've specified
2. remove package versions to allow pip attempt to solve the dependency conflict

ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/user_guide/#fixing-conflicting-dependencies
MarshalX commented 3 years ago

First of all u need to try install with version indicating pip3 install -U pytgcalls==0.0.23

After that investigate into this discussion https://github.com/MarshalX/tgcalls/discussions/44

Pay you attention to cpu architecture. It’s required ARM64 (it’s ARMv8 instructions set as I know). But you have ARMv7 as I can see in your logs

some ref about naming of arm archs https://stackoverflow.com/questions/41091934/are-armv8-and-arm64-the-same

in the end I want to share with you this link. there is some guy successfully run lib on raspberry https://github.com/MarshalX/tgcalls/issues/5. He owned rpi3 b+. It’s ARM Cortex-A53 1.4GHz From google. And also:

The ARM Cortex-A53 is one of the first two microarchitectures implementing the ARMv8-A 64-bit instruction set designed by ARM Holdings' Cambridge design centre.

hdcola commented 3 years ago

I tried the first method, it seems that the problem lies in tgcalls

my pi is Pi 4,run raspbian 64

pip3 install -U pytgcalls==0.0.23
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Collecting pytgcalls==0.0.23
  Using cached pytgcalls-0.0.23-py3-none-any.whl (21 kB)
ERROR: Could not find a version that satisfies the requirement tgcalls==0.0.16 (from pytgcalls) (from versions: none)
ERROR: No matching distribution found for tgcalls==0.0.16
MarshalX commented 3 years ago

I tried the first method, it seems that the problem lies in tgcalls

pip3 install -U pytgcalls==0.0.23
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Collecting pytgcalls==0.0.23
  Using cached pytgcalls-0.0.23-py3-none-any.whl (21 kB)
ERROR: Could not find a version that satisfies the requirement tgcalls==0.0.16 (from pytgcalls) (from versions: none)
ERROR: No matching distribution found for tgcalls==0.0.16

there is problem with arch

hdcola commented 3 years ago

Can I try to compile a tgcalls myself? See that there is only the content of build docker in the documentation.

MarshalX commented 3 years ago

Can I try to compile a tgcalls myself? See that there is only the content of build docker in the documentation.

You can try. But I think that u need to compile without docker. Cuz there is manylinux inside images. You should run command step by step from build instruction or copy and paste from dockerfile with fixes for your OS

hdcola commented 3 years ago

I will try docker build, I haven't used it before, let me learn it, thank you

MarshalX commented 3 years ago

Can you test this one https://github.com/messense/manylinux-cross for compiling for armv7?

MarshalX commented 3 years ago

arg for qemu --platform=linux/arm/v7

hdcola commented 3 years ago

I haven't done such cross-platform compilation work. I need a clearer explanation. Do you mean to use the armv7l container in https://github.com/messense/manylinux-cross to compile tgcall docker?

MarshalX commented 3 years ago

@hdcola yes I do. and try to compile from your raps pi if you wont to use qemu to build from mac, for example

hdcola commented 3 years ago

@hdcola yes I do. and try to compile from your raps pi if you wont to use qemu to build from mac, for example

I found out that I am very new to docker, let me learn about docker related knowledge first, otherwise I don't know how to do it at all.

MarshalX commented 3 years ago

@hdcola Okay. Good luck in learning