본문 바로가기
텔레그램 한글 가이드
채널·봇 STEP 92 / 98

TDLib 빌드와 첫 연결 — 공식 빌드 안내 따라가기

TDLib 을 빌드해 첫 연결까지 가는 순서입니다. 내 언어에 맞는 길 고르기, C++17 컴파일러·CMake 3.10·OpenSSL·zlib·gperf 준비, 공식 빌드 안내 생성기와 윈도우의 vcpkg, 첫 업데이트로 성공을 확인하고 시험 서버로 돌리는 법을 정리했습니다.

  • 난이도L4
  • 읽는 시간6분
  • 최종 검증

결론부터

  1. 1언어마다 길이 다르다 — 다른 언어는 tdjson 을 빌드해 C 함수로.
  2. 2윈도우 실측: 생성기 순서 그대로 약 35분 — tdjson 과 DLL 3개를 함께 쓴다.
  3. 3첫 업데이트에 판 번호와 '설정 기다림'이 오면 연결 성공.
이 글의 목차
  1. 먼저 고를 것 — 빌드할까, 있는 걸 쓸까
  2. 필요한 도구
  3. 윈도우에서 실제로 빌드해 본 순서
  4. 첫 연결 — 무엇이 오면 성공인가
  5. 자주 묻는 질문
  6. 한눈에 정리

먼저 고를 것 — 빌드할까, 있는 걸 쓸까

TDLib 은 C++ 로 된 오픈 소스라, 기본은 내 기기에서 직접 빌드해 씁니다. 다만 쓰려는 언어에 따라 길이 다릅니다.

내 언어보통 쓰는 길
C++ (CMake 프로젝트)TDLib 을 빌드해 정적·JSON 라이브러리로 연결
자바 · C#공식 연결(바인딩)을 함께 빌드
파이썬·자바스크립트·고 등JSON 라이브러리(tdjson)를 빌드해 그 언어에서 C 함수로 부르기

플랫폼·언어별 정확한 명령은 TDLib 공식 페이지(core.telegram.org/tdlib)에서 연결되는 빌드 안내 생성기가 만들어 줍니다. 운영체제와 언어를 고르면 그대로 붙여 넣을 명령이 나옵니다. 이 글은 그 전후에 알아 둘 것을 정리합니다.

필요한 도구

도구조건(공식 안내)
C++ 컴파일러C++17 을 지원하는 것 — 윈도우는 Visual Studio 의 C++ 도구
CMake3.10 이상
라이브러리OpenSSL · zlib
도구gperf
선택PHP — 문서 만들기·저사양 기기용 소스 나누기에만

윈도우에서는 OpenSSL·zlib·gperf 를 패키지 관리자(vcpkg)로 받아 CMake 에 그 위치를 알려 주는 방식이 일반적입니다. 빌드 안내 생성기에서 'Windows' 를 고르면 이 과정이 명령으로 나옵니다.

윈도우에서 실제로 빌드해 본 순서

아래는 빌드 안내 생성기에서 Windows · x64 · JSON 을 골랐을 때 나오는 순서를, 이 사이트가 실제로 돌려 본 그대로 옮긴 것입니다. 명령은 PowerShell 기준이고, vcpkg 는 생성기가 고정해 둔 판으로 맞춥니다.

git clone https://github.com/tdlib/td.git
cd td
git clone https://github.com/Microsoft/vcpkg.git
cd vcpkg
git checkout (생성기가 알려 주는 고정 판 번호)
./bootstrap-vcpkg.bat
./vcpkg.exe install gperf:x64-windows openssl:x64-windows zlib:x64-windows
cd ..
mkdir build
cd build
cmake -A x64 -DCMAKE_INSTALL_PREFIX:PATH=../tdlib -DCMAKE_TOOLCHAIN_FILE:FILEPATH=../vcpkg/scripts/buildsystems/vcpkg.cmake ..
cmake --build . --target install --config Release
단계걸린 시간(실측)
TDLib · vcpkg 받기, 고정 판 맞추기, 준비1분 안쪽
vcpkg 로 gperf · openssl · zlib 설치약 9분 30초
CMake 설정약 11초
TDLib 빌드·설치약 24분

측정 환경은 가상 PC(윈도우 11, CPU 8개, 메모리 12GB)이고, 메모리를 아끼려고 마지막 명령에 --parallel 4 를 붙여 동시 작업을 4개로 묶었습니다. PC 사양에 따라 시간은 달라집니다.

  • vcpkg 는 처음 돌 때 필요한 도구(PowerShell 7 · 7-Zip)를 스스로 받아 씁니다.
  • gperf 원본은 GNU 서버에서 받는데, 망에 따라 공식 서버가 시간 초과로 막힐 수 있습니다. 이번 실측에서도 한 번 그렇게 멈췄습니다. 그때는 같은 파일을 다른 GNU 미러에서 받아 vcpkg 의 downloads 폴더에 두고 다시 돌리면 됩니다. vcpkg 가 해시로 내용을 확인하므로 미러가 달라도 안전합니다.
  • 빌드가 끝나면 tdlib/bin 에 tdjson.dll 과 함께 OpenSSL(libcrypto-3-x64.dll · libssl-3-x64.dll)과 zlib1.dll 이 생깁니다. 내 프로그램과 함께 네 파일을 같이 배포해야 합니다.

첫 연결 — 무엇이 오면 성공인가

  1. 내 프로그램에서 tdjson 을 불러 TDLib 클라이언트를 만들고 받기(receive)를 돌리기 시작합니다.
  2. 처음 오는 업데이트에 TDLib 판 번호(version 옵션)와 로그인 상태: 설정 기다림(authorizationStateWaitTdlibParameters)이 보이면 연결은 성공입니다. 실측에서는 판 번호 1.8.67 과 이 상태가 바로 왔습니다.
  3. 여기서 setTdlibParameters 로 api_id·api_hash·저장 폴더를 넣으면 로그인 단계로 넘어갑니다(TDLib 이란).
  4. 개발 중에는 설정의 시험 서버(use_test_dc) 값을 켜 실제 계정 대신 시험 계정으로 돌립니다(로그인 흐름).

사용할 수 있는 메서드는 TDLib 의 스키마 파일(td_api.tl)에 모두 적혀 있습니다. 스키마 읽는 법은 TL 스키마·레이어 읽는 법에 있습니다.

자주 묻는 질문

TDLib 을 빌드하려면 무엇이 필요한가요?

C++17 을 지원하는 컴파일러, CMake 3.10 이상, OpenSSL·zlib, gperf 가 필요합니다. PHP 는 선택입니다.

파이썬에서 TDLib 을 쓰려면?

JSON 라이브러리(tdjson)를 빌드해 파이썬에서 C 함수로 불러 JSON 을 주고받습니다.

윈도우에서는 어떻게 빌드하나요?

Visual Studio 의 C++ 도구와 vcpkg 로 라이브러리를 준비하고, 공식 빌드 안내 생성기에서 Windows 를 골라 나온 명령을 따릅니다.

빌드가 잘 됐는지 어떻게 아나요?

클라이언트를 만들고 받기를 시작했을 때 로그인 상태 '설정 기다림' 업데이트가 오면 성공입니다.

TDLib 빌드는 얼마나 걸리나요?

이 사이트의 실측(윈도우 11 가상 PC, CPU 8개·메모리 12GB)에서는 vcpkg 라이브러리 설치 약 9분 30초, TDLib 빌드 약 24분이었습니다. 사양에 따라 달라집니다.

참고한 공식 문서

요약

한눈에 정리

  1. 1길

    C++ · 자바/C# · tdjson.

  2. 2도구

    C++17 · CMake · OpenSSL · zlib · gperf.

  3. 3확인

    설정 기다림 상태.

이 글 공유하기

같은 문제를 겪는 친구에게 보내 주세요.

텔레그램
더보기

휴대폰으로 열기휴대폰 카메라로 비추면 이 글이 열려요.

최종 수정 2026-10-06

함께 보면 좋은 글

전체 보기 ›