Programming

[Python] setup.py 를 이용하여 모듈 설치

steloflute 2019. 8. 8. 23:58

http://egloos.zum.com/mcchae/v/10546273

 

만약 설치가 필요한 모듈이 있고, 그 디렉터리 내에
setup.py 파일을 만들어 다음과 같이 지정한다.

from distutils.core import setup

py_modules = [
 'cqattr',
 'cqcompile',
 'cqdaemon',
 'cqdatetime',
 'cqdebug',
 'cqexception',
 'cqexpect',
 'cqlog',
]
print 'BillEye-Agent modules\n%s' % py_modules

setup (name = 'BillEye-Agent',
       version = '1.0',
       description = 'This is a BillEye Agent services',
       py_modules = py_modules

    

그러면 py_modules에 지정한 이름의 py 확장자 파일들이 
시스템의 sys.path 중, site-packages 에 설치된다.

또는 설치할 모듈이 C 소스가 포함되어 있다면,

c_module1 = Extension('cqlicense',
 sources = ['cqlicense.c'])
# libraries = ['cqbase','cqtype','cqnet','dl','db','GeoIP','apra'],
# library_dirs = ['/usr/lib/cqlib','..'],
# include_dirs = ['..','../../cqlib/libcqinc'])

setup (name = 'CQVista-Python',
    version = '1.0',
    description = 'This is a cqpy',
    py_modules = py_modules,
    ext_modules = [c_module1]
 
와 같은 식으로 지정할 수 있다. 

위와 같이 setup.py를 만든 다음에는

$ python setup.py build
로 build를 우선 하고

$ python setup.py install
로 실제 설치를 하면 된다.

'Programming' 카테고리의 다른 글

(Oracle) constraint null 동시 check  (0) 2019.10.22
Haskell은 별로다.  (0) 2019.10.19
(Common Lisp) commas separating every three digits  (0) 2019.05.29
History of Lisp  (0) 2019.05.29
Descending sort in Haskell  (0) 2019.05.28