Я использую следующий скрипт для распространения модуля, содержащего чистый код Python.
from distutils.core import setup, Extension
import os
setup (name = 'mtester',
version = '0.1',
description = 'Python wrapper for libmtester',
packages=['mtester'],
package_dir={'mtester':'module'},
)
У меня проблема в том, что я изменил один из файлов, который использует внешнюю библиотеку (файл .so),который мне нужно отправить вместе с существующим модулем.Мне предложили использовать package_data для включения библиотеки.Я изменил скрипт следующим образом.
from distutils.core import setup, Extension
import os
data_dir = os.path.abspath('../lib64/')
setup (name = 'mtester',
version = '0.1',
description = 'Python wrapper for libmtester',
packages=['mtester'],
package_dir={'mtester':'module'},
package_data={'mtester':[data_dir+'mhelper.so']},
)
Проблема в том, что добавление package_data не имело никакого значения.Это не установка mhelper.so ни в каком месте (ни в пакетах сайта, ни в пакетах сайта / mtester).
Информация о системе: Fedora 10, 64-битная версия, Python 2.5 (да, она древняя. Ноэто наша сборочная машина, и она должна оставаться такой же, чтобы поддерживать обратную совместимость)
Любые предложения, которые помогут мне решить эту проблему, будут высоко оценены!