파이썬 3로 확장 모듈 포팅하기

파이썬 3로 확장 모듈 포팅하기 (HOWTO)

확장 모듈(extension module)을 파이썬 3로 옮기는 일은 C API를 다루다 보니 만만치 않은데요. 이 HOWTO는 포팅 작업을 시작하기 전에 참고할 자료들을 한데 모아 안내하는 짧은 문서입니다. 포팅에 도움이 되는 권장 리소스부터, 추상화 계층을 제공하는 도구의 선택까지 함께 살펴봅니다.

출처: Python 공식 문서 — Porting Extension Modules to Python 3

시작하며

파이썬 3로 확장 모듈을 포팅할 때는 다음 자료들을 추천합니다.

  • Migrating C extensionsSupporting Python 3: An in-depth guide 라는, 전반적으로 파이썬 2에서 3로 옮기는 방법을 다루는 책에 들어 있는 장인데요. 확장 모듈을 포팅하는 전 과정을 독자에게 안내해 줍니다.

  • Porting guidepy3c 프로젝트에서 제공하는 포팅 가이드입니다. 주관적인 관점의 제안들을 실제 지원 코드와 함께 담고 있어요.

  • 권장 서드파티 도구 — 파이썬의 C API 위에 추상화(abstraction) 계층을 제공하는 도구들입니다. 확장 모듈은 보통 이 중 하나를 쓰도록 다시 작성해야 하지만, 그런 뒤에는 라이브러리가 다양한 파이썬 버전과 구현체 사이의 차이를 알아서 처리해 줍니다.

이 페이지는 그 자체로는 짧은 소개이다 보니, 실제로 포팅에 착수하면 위 자료들의 상세 내용을 따라가며 작업하게 됩니다.

더 알아보기 (Learn more)