Tôi có một thư viện Python, ngoài các mô-đun Python thông thường, có một số tệp dữ liệu cần phải đi vào /usr/local/lib/python2.7/dist-package/mylibrary.setup.py không cài đặt các tệp dữ liệu
Thật không may, tôi đã không thể thuyết phục setup.py thực sự cài đặt các tệp dữ liệu tại đó. Lưu ý rằng hành vi này đang được cài đặt - không phải là sdist.
Đây là một phiên bản hơi redacted của setup.py
module_list = list_of_files
setup(name ='Modules',
version ='1.33.7',
description ='My Sweet Module',
author ='PN',
author_email ='email',
url ='url',
packages = ['my_module'],
# I tried this. It got installed in /usr/my_module. Not ok.
# data_files = [ ("my_module", ["my_module/data1",
# "my_module/data2"])]
# This doesn't install it at all.
package_data = {"my_module" : ["my_module/data1",
"my_module/data2"] }
)
Đây là bằng Python 2.7 (sẽ phải chạy trong 2,6 cuối cùng), và sẽ phải chạy trên một số Ubuntu giữa 10,04 và 12 +. Phát triển nó ngay bây giờ vào ngày 12.04.
Hmmm. Bất đắc dĩ để mã hóa đường dẫn, nhưng điều đó có thể phục vụ ngay bây giờ. –
Tôi đã sử dụng distutils.sysconfig.get_python_lib() + "đường dẫn" và sử dụng làm khóa. –
Đây không phải là cách thích hợp để làm điều đó. 'data_files' dành cho các tệp bạn muốn đặt trong/usr (ví dụ: biểu tượng, tệp .desktop, v.v.). Nếu bạn muốn bao gồm dữ liệu cùng với mô đun Python của bạn, bạn sử dụng 'package_data' cùng với cờ' include_package_data = True'. – Grumbel