2017-11-18 163 views
0

我在iMac上運行MacOS 10.11.6(El Capitan)。我建立了一個Python 3.4.7虛擬環境,並且我已經安裝了各種軟件包,包括numpy,pandas,scipy等。但是,我很難安裝pymssql。我知道我需要首先安裝FreeTDS,並且我已經使用fink(它安裝了freetds版本0.91-5)來完成此操作。然而,當我啓動一個虛擬的環境和運行:使用pip安裝pymssql失敗並鏈接到使用Mac上的fink安裝的FreeTDS

pip install pymssql

我收到以下錯誤消息(道歉它的大小):使用自制安裝freetds的

Collecting pymssql 
    Using cached pymssql-2.1.3.tar.gz 
    Complete output from command python setup.py egg_info: 
    Download error on https://pypi.python.org/simple/setuptools_git/: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:600) -- Some packages may not be found! 
    Download error on https://pypi.python.org/simple/setuptools-git/: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:600) -- Some packages may not be found! 
    Couldn't find index page for 'setuptools_git' (maybe misspelled?) 
    Download error on https://pypi.python.org/simple/: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:600) -- Some packages may not be found! 
    No local packages or working download links found for setuptools_git 
    Traceback (most recent call last): 
     File "<string>", line 1, in <module> 
     File "/private/var/folders/75/qtnqhywh8xj9760059b8dbd80000gq/T/pip-build-pyxahulz/pymssql/setup.py", line 477, in <module> 
     ext_modules = ext_modules(), 
     File "/Users/xyz/Documents/python_projects/general_python34_projects/env34/lib/python3.4/site-packages/setuptools/__init__.py", line 128, in setup 
     _install_setup_requires(attrs) 
     File "/Users/xyz/Documents/python_projects/general_python34_projects/env34/lib/python3.4/site-packages/setuptools/__init__.py", line 123, in _install_setup_requires 
     dist.fetch_build_eggs(dist.setup_requires) 
     File "/Users/xyz/Documents/python_projects/general_python34_projects/env34/lib/python3.4/site-packages/setuptools/dist.py", line 453, in fetch_build_eggs 
     replace_conflicting=True, 
     File "/Users/xyz/Documents/python_projects/general_python34_projects/env34/lib/python3.4/site-packages/pkg_resources/__init__.py", line 866, in resolve 
     replace_conflicting=replace_conflicting 
     File "/Users/xyz/Documents/python_projects/general_python34_projects/env34/lib/python3.4/site-packages/pkg_resources/__init__.py", line 1146, in best_match 
     return self.obtain(req, installer) 
     File "/Users/xyz/Documents/python_projects/general_python34_projects/env34/lib/python3.4/site-packages/pkg_resources/__init__.py", line 1158, in obtain 
     return installer(requirement) 
     File "/Users/xyz/Documents/python_projects/general_python34_projects/env34/lib/python3.4/site-packages/setuptools/dist.py", line 520, in fetch_build_egg 
     return cmd.easy_install(req) 
     File "/Users/xyz/Documents/python_projects/general_python34_projects/env34/lib/python3.4/site-packages/setuptools/command/easy_install.py", line 666, in easy_install 
     raise DistutilsError(msg) 
    distutils.errors.DistutilsError: Could not find suitable distribution for Requirement.parse('setuptools_git') 
    setup.py: platform.system() => 'Darwin' 
    setup.py: platform.architecture() => ('64bit', '') 
    setup.py: platform.libc_ver() => ('', '') 
    setup.py: Detected Darwin/Mac OS X. 
     You can install FreeTDS with Homebrew or MacPorts, or by downloading 
     and compiling it yourself. 

     Homebrew (http://brew.sh/) 
     -------------------------- 
     brew install freetds 

     MacPorts (http://www.macports.org/) 
     ----------------------------------- 
     sudo port install freetds 

    setup.py: Not using bundled FreeTDS 
    setup.py: include_dirs = ['/sw/include'] 
    setup.py: library_dirs = ['/usr/local/lib', '/sw/lib', '/opt/local/lib'] 

    ---------------------------------------- 
Command "python setup.py egg_info" failed with error code 1 in /private/var/folders/75/qtnqhywh8xj9760059b8dbd80000gq/T/pip-build-pyxahulz/pymssql/ 

網上說明介紹但我一直使用fink,不想與兩個系統安裝的代碼產生衝突。

我已經更新了fink和pip,並且安裝了最新的setuptools。

我試着運行:

pip install --global-option=build_ext --global-option="-L/sw/lib" --global-option="-I/sw/include" pymssql 

...但沒有運氣。

我也嘗試安裝pymssql的早期版本:

pip install pymssql==2.1.1 

同樣,沒有喜悅。

或者是錯誤輸出密鑰開始處的'證書驗證失敗'註釋?

我確定我以前在其他機器上安裝過MSSQL,我不記得有任何問題。我也不記得我做了什麼不同(如果有的話)。

任何人都可以幫助我解決這個問題,請。

回答

0

最初的虛擬環境是使用Python 3.4.7創建的,它使用fink安裝。

我最終刪除了這個虛擬環境,並使用從python.org下載的python 3.4.4重新創建了一個新的虛擬環境。這些軟件包被重新安裝(使用pip freeze)並安裝了pymssql,完全沒有問題。

所以,雖然我仍然不知道是什麼原因導致了原來的問題,至少我現在有一個工作環境。