Giới thiệu về DISTUTILS
Tài liệu này hướng dẫn bạn sử dụng Dstutils để distribute python module của bạn, rất cần thiết với các deverloper/ distributor: Nếu bạn tìm kiếm thông tin trong việc install một python module, bạn nên tham khảo về ' install python modules'
https://docs.python.org/2/install/index.html#install-index
Các khái niệm và thuật ngữ:
Là một developer, những điều bạn phải nắm được:
+ Viết một setup script
+ Viết một filg config
+ Tạo ra một source distribution( tạm hiểu là một nguồn tài nguyên có thể deploy và phát triển được)
+ Tạo ra một hoặc nhiều built distribution( đại loại là những distribution có khả năng xây dựng nên nhiều chương trình khác)
Tất cả các task trên đều được cover trong tài liệu này.
+ Viết một setup script
+ Viết một filg config
+ Tạo ra một source distribution( tạm hiểu là một nguồn tài nguyên có thể deploy và phát triển được)
+ Tạo ra một hoặc nhiều built distribution( đại loại là những distribution có khả năng xây dựng nên nhiều chương trình khác)
Tất cả các task trên đều được cover trong tài liệu này.
1.2. A Simple Example
The setup script là khá đơn giản, đc viết bằng python, không giới hạn những gì bạn có thể làm với nó. Tuy nhiên, bạn nên cẩn thận khi cung cấp nhứng thông tin quan trọng trong setup script. Setup script có thể chạy nhiều lần trong quá trình xây dựng và install module của bạn.
Nếu bạn muốn distribute với module tên là foo, được chứa trong file foo.py. Sau đó bạn thiết lập một script đơn giản như thế này:
+ Hầu hết thông tin mà bạn cung cấp tới Distutil đều được nhập vào như là keyword arguments tới setup() function
+ Những keyword argument chia thành hai loaị: package metadata( tên, version..) và thông tin về package( trong trường hợp này là list các module)
+ Module được xác định bằng tên module, không phải là tên file( làm tương tự với các gói và phần mở rộng).
+ Bạn nên cung cấp thêm một số thông tin như tên, email, url....cho project này.
Để tạo ra một source distribute cho module này, bạn cần tạo một setup script, setup.py, và chạy lệnh:
sdist sẽ tạo ra một file lưu trữ chứa setup script của bạn, và module foo.py của bạn. File lưu trữ này sẽ đucợ đặt tên là foo-1.0.tar.gz hoặc .zip và sẽ giải nén nó tới thư mục foo-1.0.
việc này sẽ coppy foo.py tới thư mục thích hợp cho sự cài đặt của họ.
Ví dụ trên đã nêu nên một số vấn đề cơ bản của Distutils. Đầu tiên, cả developer và installer đều có một giao diện người dùng cơ bản như nhau. Chỉ khác command mà họ thực hiện:
Nếu bạn muốn tạo nên sự dễ dàng cho user của bạn, bạn có thể tạo nên nhiều buil distribute
Một số chú ý nhỏ:
bạn muốn biết thêm thông tin:
Nếu bạn muốn distribute với module tên là foo, được chứa trong file foo.py. Sau đó bạn thiết lập một script đơn giản như thế này:
from distutils.core import setupMột vài điểm chú ý:
setup(name='foo',
version='1.0',
py_modules=['foo'],
)
+ Hầu hết thông tin mà bạn cung cấp tới Distutil đều được nhập vào như là keyword arguments tới setup() function
+ Những keyword argument chia thành hai loaị: package metadata( tên, version..) và thông tin về package( trong trường hợp này là list các module)
+ Module được xác định bằng tên module, không phải là tên file( làm tương tự với các gói và phần mở rộng).
+ Bạn nên cung cấp thêm một số thông tin như tên, email, url....cho project này.
Để tạo ra một source distribute cho module này, bạn cần tạo một setup script, setup.py, và chạy lệnh:
python setup.py sdist
sdist sẽ tạo ra một file lưu trữ chứa setup script của bạn, và module foo.py của bạn. File lưu trữ này sẽ đucợ đặt tên là foo-1.0.tar.gz hoặc .zip và sẽ giải nén nó tới thư mục foo-1.0.
thanhnt@Thanhnt:~/pycode/ex_distutils/dist$ lsNếu một người muốn install module foo của bạn, việc phải làm là dowload file đó về , giải nén , tới thư mục foo-1.0 và chạy:
foo-0.0.0.tar.gz foo-1.0.tar.gz
python setup.py install
việc này sẽ coppy foo.py tới thư mục thích hợp cho sự cài đặt của họ.
Ví dụ trên đã nêu nên một số vấn đề cơ bản của Distutils. Đầu tiên, cả developer và installer đều có một giao diện người dùng cơ bản như nhau. Chỉ khác command mà họ thực hiện:
sdist cho deverloper
install cho installer
Nếu bạn muốn tạo nên sự dễ dàng cho user của bạn, bạn có thể tạo nên nhiều buil distribute
Một số chú ý nhỏ:
python setup.py bdist_wininstvới bdist_wininst, bạn đã tạo ra file foo-1.0.win32.exe file trong thư mục hiện tại
python setup.py bdist_rpm=> tạo file foo-1.0.noarch.rpm
bạn muốn biết thêm thông tin:
python setup.py bdist --help-formats
Không có nhận xét nào:
Đăng nhận xét