Python 소프트웨어를 설치했습니다(피카르다브) 나는 이전에 데비안 sid의 패키지 버전이 있다는 것을 알았습니다...
이제 이 소프트웨어를 올바르게 제거한 다음 apt를 사용하여 패키지 버전을 설치하고 싶습니다.
pycarddav를 설치한 방법은 다음과 같습니다(해당 설명서에 따라).
- pycarddav를 다운로드하고 압축을 푼다.
python setup.py install
다음 콘텐츠가 포함된 폴더 로 이동하여 실행합니다.
#!/usr/bin/env python2
import os
import string
import subprocess
import sys
import warnings
#from distutils.core import setup
from setuptools import setup
MAJOR = 0
MINOR = 7
PATCH = 0
RELEASE = True
VERSION = "{0}.{1}.{2}".format(MAJOR, MINOR, PATCH)
if not RELEASE:
try:
try:
pipe = subprocess.Popen(["git", "describe", "--dirty", "--tags"],
stdout=subprocess.PIPE)
except EnvironmentError:
warnings.warn("WARNING: git not installed or failed to run")
revision = pipe.communicate()[0].strip().lstrip('v')
if pipe.returncode != 0:
warnings.warn("WARNING: couldn't get git revision")
if revision != VERSION:
revision = revision.lstrip(string.digits + '.')
VERSION += '.dev' + revision
except:
VERSION += '.dev'
warnings.warn("WARNING: git not installed or failed to run")
def write_version():
"""writes the pycarddav/version.py file"""
template = """\
__version__ = '{0}'
"""
filename = os.path.join(
os.path.dirname(__file__), 'pycarddav', 'version.py')
with open(filename, 'w') as versionfile:
versionfile.write(template.format(VERSION))
print("wrote pycarddav/version.py with version={0}".format(VERSION))
write_version()
requirements = [
'lxml',
'vobject',
'requests',
'urwid',
'pyxdg'
]
if sys.version_info[:2] in ((2, 6),):
# there is no argparse in python2.6
requirements.append('argparse')
setup(
name='pyCardDAV',
version=VERSION,
description='A CardDAV based address book tool',
long_description=open('README.rst').read(),
author='Christian Geier',
author_email='[email protected]',
url='http://lostpackets.de/pycarddav/',
license='Expat/MIT',
packages=['pycarddav', 'pycarddav.controllers'],
scripts=['bin/pycardsyncer', 'bin/pc_query', 'bin/pycard-import'],
requires=requirements,
install_requires=requirements,
classifiers=[
"Development Status :: 4 - Beta",
"License :: OSI Approved :: MIT License",
"Environment :: Console :: Curses",
"Intended Audience :: End Users/Desktop",
"Operating System :: POSIX",
"Programming Language :: Python :: 2 :: Only",
"Topic :: Utilities",
"Topic :: Communications :: Email :: Address Book"
],
)
제대로 삭제하려면 어떻게 해야 하나요?
pip uninstall pycarddav
pip를 사용하여 설치하지 않아도 작동합니까?
답변1
문서에 따르면 pip
이러한 유형의 설치는 제거할 수 없습니다.
발췌-http://pip.readthedocs.org/en/latest/reference/pip_uninstall.html
pip는 설치된 대부분의 패키지를 제거할 수 있습니다. 알려진 예외는 다음과 같습니다.
- 함께 설치된 순수 distutils 패키지는
python setup.py install
어떤 파일이 설치되었는지 확인할 수 있는 메타데이터를 남기지 않습니다.- 에 의해 설치된 스크립트 래퍼
python setup.py develop
.