Windows で setuptools (バージョン 0.6c11) を使用しており、console_scripts
エントリ ポイント経由でコンソール スクリプトをインストールするように指定しています。Linux では問題なく動作しますが、Windows では MinGW コンパイラを使用しているため、スクリプトはインストールされていません。インストール出力に関連するメッセージが表示されません。
ipython などの他のパッケージは正常に動作しており、実行後に .exe ファイルが動作し setup.py install
ます。
誰かがそれをデバッグする方法を提案できますか?
import setuptools
setup(
# ...
entry_points={
'console_scripts':[
'myprog = myMod:main'
]
}
)
アップデート:
Vinay によって提示された例に基づいて (ありがとう!)、問題を切り分けることができました: モジュールがネストされたサブディレクトリにインストールされている場合、スクリプトは作成されません:
import setuptools, os.path, shutil
SOURCE = '''
def main():
print('Hello, world!')
'''
### ERROR: when level of subdir is > 1, script is not created
subdir='subdir/subdir2'
### OK: with single-level subdirectory, everything works just fine
# subdir='subdir'
def prepare():
# remove previous source
if os.path.exists('subdir'): shutil.rmtree('subdir')
# create subdirs as necessary
os.makedirs(subdir)
with open(subdir+'/my_mod.py', 'w') as f: f.write(SOURCE)
prepare()
setuptools.setup(
name = 'myprog',
version = '0.1',
url = 'http://dummy.com/',
author = 'Me',
author_email = 'me@dummy.com',
py_modules=['my_mod'],
package_dir={'':subdir},
entry_points={
'console_scripts':['myprog = my_mod:main']
},
zip_safe=False
)
私は何package_dir
のためにあるのか誤解していますか?