라즈베리파이 - 텔레그램 설치하기
최종 정리.
sudo apt-get install libreadline-dev libconfig-dev libssl-dev lua5.2 liblua5.2-dev libevent-dev libjansson-dev
sudo apt-get install libpython-dev libssl1.0-dev make
git clone --recursive https://github.com/vysheng/tg.git && cd tg
vi tgl/mtproto-utils.c
comment : 101
파일을 열어서 101 라인, assert(0); 을 주석처리 합니다.
static unsigned long long BN2ull (TGLC_bn *b) {
if (sizeof (unsigned long) == 8) {
return TGLC_bn_get_word (b);
} else if (sizeof (unsigned long long) == 8) {
// marasong
//assert (0); // As long as nobody ever uses this code, assume it is broken.
unsigned long long tmp;
/* Here be dragons, but it should be okay due to be64toh */
TGLC_bn_bn2bin (b, (unsigned char *) &tmp);
return be64toh (tmp);
} else {
assert (0);
}
}
이제 컴파일합니다.
./configure
make
최초 실행하면 번호 인증을 진행합니다. 핸드폰 번호 하나로 여러 디바이스 인증이 가능합니다.
./bin/telegram-cli -k server.pub
phone number: 에서는 +8210 이런 식으로 넣어야 합니다.
그러면 이미 설치된 텔레그램으로 인증번호가 옵니다.
텔레그램 봇을 사용하기 위해 파이썬 모듈을 설치합니다..
sudo python -m pip install python-telegram-bot
끝 ~
----- 에러 정리 1 -----
텔레그램 실행시 BN2ull 관련 에러가 뜨면
pi@raspberrypi:~/workspace/tg$ ./bin/telegram-cli -k server.pub
Telegram-cli version 1.4.1, Copyright (C) 2013-2015 Vitaly Valtman
Telegram-cli comes with ABSOLUTELY NO WARRANTY; for details type `show_license'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show_license' for details.
Telegram-cli uses libtgl version 2.1.0
Telegram-cli includes software developed by the OpenSSL Project
for use in the OpenSSL Toolkit. (http://www.openssl.org/)
I: config dir=[/home/pi/.telegram-cli]
[/home/pi/.telegram-cli] created
[/home/pi/.telegram-cli/downloads] created
> telegram-cli: tgl/mtproto-utils.c:101: BN2ull: Assertion `0' failed.
SIGNAL received
vi tgl/mtproto-utils.c : comment : 101 : 이 파일을 열어서 101 라인, assert(0); 을 주석처리 합니다.
static unsigned long long BN2ull (TGLC_bn *b) {
if (sizeof (unsigned long) == 8) {
return TGLC_bn_get_word (b);
} else if (sizeof (unsigned long long) == 8) {
// marasong
//assert (0); // As long as nobody ever uses this code, assume it is broken.
...
다시 컴파일 합니다.
----- 에러 정리 2 -----
컴파일시 openssl 관련 에러가 뜨면
error
tgl/crypto/rsa_pem_openssl.c:41:6: error: dereferencing pointer to incomplete type ‘RSA {aka struct rsa_st}’
패키지 하나를 설치한 다음 다시 컴파일 합니다..
sudo apt-get install libssl1.0-dev
./configure
make
'Tech > 라즈베리파이' 카테고리의 다른 글
라즈베리파이 - 숨겨진 무선 네트워크에 연결하는 방법 (0) | 2018.12.14 |
---|---|
라즈베리파이 5G 무선 끊김현상 - 아직 해결 안됨. (0) | 2018.09.16 |
라즈베리파이 배시 칼라설정, 스왑 만들기 - 가상 메모리 만들기 (0) | 2018.09.16 |
라즈베리파이 - 구글 비전 Google Vision 설치 (0) | 2018.09.14 |
라즈베리파이 텔레그램봇 설치 (0) | 2018.09.14 |