【问题标题】:Error installing sasl for python2 on OSX 11.2.3 Big Sur在 OSX 11.2.3 Big Sur 上为 python2 安装 sasl 时出错
【发布时间】:2021-05-04 18:18:08
【问题描述】:

当我尝试使用 python 2.7.16 pip install sasl 时,我收到一堆错误,提示链接/构建 python sasl 包时出现问题。

  • 我有brew install openssh
  • 我已尝试将 brew install cyrus-sasl 作为替代(结果相同)
  • 这是使用 python 2.7,它似乎可以正确构建 python3

错误输出看起来像是在包装文件中有一些弃用警告和/或一些缺失元素。是否仍然可以使用 python 2?

Collecting sasl
  Using cached sasl-0.2.1.tar.gz (30 kB)
Building wheel for sasl (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /Users/skye/.pyenv/versions/2.7.16/bin/python2.7 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/0h/fh2yygrd7116q0d657n90mwm0000gn/T/pip-install-fSoI4p/sasl/setup.py'"'"'; __file__='"'"'/private/var/folders/0h/fh2yygrd7116q0d657n90mwm0000gn/T/pip-install-fSoI4p/sasl/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /private/var/folders/0h/fh2yygrd7116q0d657n90mwm0000gn/T/pip-wheel-V7q3kG
       cwd: /private/var/folders/0h/fh2yygrd7116q0d657n90mwm0000gn/T/pip-install-fSoI4p/sasl/
  Complete output (162 lines):
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.macosx-11.2-x86_64-2.7
  creating build/lib.macosx-11.2-x86_64-2.7/sasl
  copying sasl/__init__.py -> build/lib.macosx-11.2-x86_64-2.7/sasl
  running egg_info
  writing requirements to sasl.egg-info/requires.txt
  writing sasl.egg-info/PKG-INFO
  writing top-level names to sasl.egg-info/top_level.txt
  writing dependency_links to sasl.egg-info/dependency_links.txt
  reading manifest file 'sasl.egg-info/SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  writing manifest file 'sasl.egg-info/SOURCES.txt'
  copying sasl/saslwrapper.cpp -> build/lib.macosx-11.2-x86_64-2.7/sasl
  copying sasl/saslwrapper.h -> build/lib.macosx-11.2-x86_64-2.7/sasl
  copying sasl/saslwrapper.pyx -> build/lib.macosx-11.2-x86_64-2.7/sasl
  running build_ext
  building 'sasl.saslwrapper' extension
  creating build/temp.macosx-11.2-x86_64-2.7
  creating build/temp.macosx-11.2-x86_64-2.7/sasl
  clang -fno-strict-aliasing -I/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -Isasl -I/Users/skye/.pyenv/versions/2.7.16/include/python2.7 -c sasl/saslwrapper.cpp -o build/temp.macosx-11.2-x86_64-2.7/sasl/saslwrapper.o
  In file included from sasl/saslwrapper.cpp:254:
  sasl/saslwrapper.h:36:35: warning: 'sasl_dispose' is deprecated: first deprecated in macOS 10.11 [-Wdeprecated-declarations]
          ~ClientImpl() { if (conn) sasl_dispose(&conn); conn = 0; }
                                    ^
  /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sasl/sasl.h:746:18: note: 'sasl_dispose' has been explicitly marked deprecated here
  LIBSASL_API void sasl_dispose(sasl_conn_t **pconn) __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_0,__MAC_10_11,__IPHONE_NA,__IPHONE_NA);
                   ^
  In file included from sasl/saslwrapper.cpp:254:
  sasl/saslwrapper.h:179:18: warning: 'sasl_client_init' is deprecated: first deprecated in macOS 10.11 [-Wdeprecated-declarations]
          result = sasl_client_init(0);
                   ^
  /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sasl/sasl.h:924:17: note: 'sasl_client_init' has been explicitly marked deprecated here
  LIBSASL_API int sasl_client_init(const sasl_callback_t *callbacks) __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_0,__MAC_10_11,__IPHONE_NA,__IPHONE_NA);
                  ^
  In file included from sasl/saslwrapper.cpp:254:
  sasl/saslwrapper.h:181:50: warning: 'sasl_errstring' is deprecated: first deprecated in macOS 10.11 [-Wdeprecated-declarations]
              setError("sasl_client_init", result, sasl_errstring(result, 0, 0));
                                                   ^
  /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sasl/sasl.h:757:25: note: 'sasl_errstring' has been explicitly marked deprecated here
  LIBSASL_API const char *sasl_errstring(int saslerr,
                          ^
  In file included from sasl/saslwrapper.cpp:254:
  sasl/saslwrapper.h:205:14: warning: 'sasl_client_new' is deprecated: first deprecated in macOS 10.11 [-Wdeprecated-declarations]
      result = sasl_client_new(serviceName.c_str(), hostName.c_str(), 0, 0, callbacks, flags, &conn);
               ^
  /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sasl/sasl.h:947:17: note: 'sasl_client_new' has been explicitly marked deprecated here
  LIBSASL_API int sasl_client_new(const char *service,
                  ^
  In file included from sasl/saslwrapper.cpp:254:
  sasl/saslwrapper.h:207:45: warning: 'sasl_errstring' is deprecated: first deprecated in macOS 10.11 [-Wdeprecated-declarations]
          setError("sasl_client_new", result, sasl_errstring(result, 0, 0));
                                              ^
  /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sasl/sasl.h:757:25: note: 'sasl_errstring' has been explicitly marked deprecated here
  LIBSASL_API const char *sasl_errstring(int saslerr,
                          ^
  In file included from sasl/saslwrapper.cpp:254:
  sasl/saslwrapper.h:220:14: warning: 'sasl_setprop' is deprecated: first deprecated in macOS 10.11 [-Wdeprecated-declarations]
      result = sasl_setprop(conn, SASL_SEC_PROPS, &secprops);
               ^
  /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sasl/sasl.h:879:17: note: 'sasl_setprop' has been explicitly marked deprecated here
  LIBSASL_API int sasl_setprop(sasl_conn_t *conn,
                  ^
  In file included from sasl/saslwrapper.cpp:254:
  sasl/saslwrapper.h:223:9: warning: 'sasl_dispose' is deprecated: first deprecated in macOS 10.11 [-Wdeprecated-declarations]
          sasl_dispose(&conn);
          ^
  /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sasl/sasl.h:746:18: note: 'sasl_dispose' has been explicitly marked deprecated here
  LIBSASL_API void sasl_dispose(sasl_conn_t **pconn) __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_0,__MAC_10_11,__IPHONE_NA,__IPHONE_NA);
                   ^
  In file included from sasl/saslwrapper.cpp:254:
  sasl/saslwrapper.h:229:18: warning: 'sasl_setprop' is deprecated: first deprecated in macOS 10.11 [-Wdeprecated-declarations]
          result = sasl_setprop(conn, SASL_AUTH_EXTERNAL, externalUserName.c_str());
                   ^
  /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sasl/sasl.h:879:17: note: 'sasl_setprop' has been explicitly marked deprecated here
  LIBSASL_API int sasl_setprop(sasl_conn_t *conn,
                  ^
  In file included from sasl/saslwrapper.cpp:254:
  sasl/saslwrapper.h:232:13: warning: 'sasl_dispose' is deprecated: first deprecated in macOS 10.11 [-Wdeprecated-declarations]
              sasl_dispose(&conn);
              ^
  /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sasl/sasl.h:746:18: note: 'sasl_dispose' has been explicitly marked deprecated here
  LIBSASL_API void sasl_dispose(sasl_conn_t **pconn) __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_0,__MAC_10_11,__IPHONE_NA,__IPHONE_NA);
                   ^
  In file included from sasl/saslwrapper.cpp:254:
  sasl/saslwrapper.h:237:18: warning: 'sasl_setprop' is deprecated: first deprecated in macOS 10.11 [-Wdeprecated-declarations]
          result = sasl_setprop(conn, SASL_SSF_EXTERNAL, &externalSsf);
                   ^
  /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sasl/sasl.h:879:17: note: 'sasl_setprop' has been explicitly marked deprecated here
  LIBSASL_API int sasl_setprop(sasl_conn_t *conn,
                  ^
  In file included from sasl/saslwrapper.cpp:254:
  sasl/saslwrapper.h:240:13: warning: 'sasl_dispose' is deprecated: first deprecated in macOS 10.11 [-Wdeprecated-declarations]
              sasl_dispose(&conn);
              ^
  /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sasl/sasl.h:746:18: note: 'sasl_dispose' has been explicitly marked deprecated here
  LIBSASL_API void sasl_dispose(sasl_conn_t **pconn) __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_0,__MAC_10_11,__IPHONE_NA,__IPHONE_NA);
                   ^
  In file included from sasl/saslwrapper.cpp:254:
  sasl/saslwrapper.h:301:18: warning: 'sasl_client_start' is deprecated: first deprecated in macOS 10.11 [-Wdeprecated-declarations]
          result = sasl_client_start(conn, mechList.c_str(), &prompt, &resp, &len, &mech);
                   ^
  /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sasl/sasl.h:972:17: note: 'sasl_client_start' has been explicitly marked deprecated here
  LIBSASL_API int sasl_client_start(sasl_conn_t *conn,
                  ^
  In file included from sasl/saslwrapper.cpp:254:
  sasl/saslwrapper.h:323:18: warning: 'sasl_client_step' is deprecated: first deprecated in macOS 10.11 [-Wdeprecated-declarations]
          result = sasl_client_step(conn, challenge.c_str(), challenge.size(), &prompt, &resp, &len);
                   ^
  /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sasl/sasl.h:993:17: note: 'sasl_client_step' has been explicitly marked deprecated here
  LIBSASL_API int sasl_client_step(sasl_conn_t *conn,
                  ^
  In file included from sasl/saslwrapper.cpp:254:
  sasl/saslwrapper.h:340:18: warning: 'sasl_encode' is deprecated: first deprecated in macOS 10.11 [-Wdeprecated-declarations]
      int result = sasl_encode(conn, clearText.c_str(), clearText.size(), &output, &outlen);
                   ^
  /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sasl/sasl.h:1326:17: note: 'sasl_encode' has been explicitly marked deprecated here
  LIBSASL_API int sasl_encode(sasl_conn_t *conn,
                  ^
  In file included from sasl/saslwrapper.cpp:254:
  sasl/saslwrapper.h:361:22: warning: 'sasl_decode' is deprecated: first deprecated in macOS 10.11 [-Wdeprecated-declarations]
          int result = sasl_decode(conn, cursor, segmentLen, &output, &outlen);
                       ^
  /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sasl/sasl.h:1353:17: note: 'sasl_decode' has been explicitly marked deprecated here
  LIBSASL_API int sasl_decode(sasl_conn_t *conn,
                  ^
  In file included from sasl/saslwrapper.cpp:254:
  sasl/saslwrapper.h:378:14: warning: 'sasl_getprop' is deprecated: first deprecated in macOS 10.11 [-Wdeprecated-declarations]
      result = sasl_getprop(conn, SASL_USERNAME, (const void**) &operName);
               ^
  /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sasl/sasl.h:800:17: note: 'sasl_getprop' has been explicitly marked deprecated here
  LIBSASL_API int sasl_getprop(sasl_conn_t *conn, int propnum,
                  ^
  In file included from sasl/saslwrapper.cpp:254:
  sasl/saslwrapper.h:390:18: warning: 'sasl_getprop' is deprecated: first deprecated in macOS 10.11 [-Wdeprecated-declarations]
      int result = sasl_getprop(conn, SASL_SSF, (const void **)&ssf);
                   ^
  /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sasl/sasl.h:800:17: note: 'sasl_getprop' has been explicitly marked deprecated here
  LIBSASL_API int sasl_getprop(sasl_conn_t *conn, int propnum,
                  ^
  In file included from sasl/saslwrapper.cpp:254:
  sasl/saslwrapper.h:420:23: warning: 'sasl_errdetail' is deprecated: first deprecated in macOS 10.11 [-Wdeprecated-declarations]
              errtext = sasl_errdetail(conn);
                        ^
  /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sasl/sasl.h:770:25: note: 'sasl_errdetail' has been explicitly marked deprecated here
  LIBSASL_API const char *sasl_errdetail(sasl_conn_t *conn) __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_0,__MAC_10_11,__IPHONE_NA,__IPHONE_NA);
                          ^
  In file included from sasl/saslwrapper.cpp:254:
  sasl/saslwrapper.h:422:23: warning: 'sasl_errstring' is deprecated: first deprecated in macOS 10.11 [-Wdeprecated-declarations]
              errtext = sasl_errstring(code, NULL, NULL);
                        ^
  /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sasl/sasl.h:757:25: note: 'sasl_errstring' has been explicitly marked deprecated here
  LIBSASL_API const char *sasl_errstring(int saslerr,
                          ^
  In file included from sasl/saslwrapper.cpp:254:
  sasl/saslwrapper.h:442:22: error: use of undeclared identifier 'getpass'
          char* pass = getpass(ppt.c_str());
                       ^
  19 warnings and 1 error generated.
  error: command 'clang' failed with exit status 1
  ----------------------------------------
  ERROR: Failed building wheel for sasl

【问题讨论】:

  • 我能够通过在适当的Library/Caches/pip/wheels/... 目录中安装另一个工程师为 sasl 提供的预构建 .whl 文件来解决此问题。不太确定它是如何工作的

标签: python pip macos-big-sur sasl


【解决方案1】:

尝试使用自制软件安装gcc@10 并使用它进行编译:

CC=/usr/local/bin/gcc-10 pip install sasl

这应该避免使用clang进行构建

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-03-11
    • 2021-01-08
    • 1970-01-01
    • 1970-01-01
    • 2021-03-03
    • 2021-06-19
    • 2021-08-04
    • 2021-05-31
    相关资源
    最近更新 更多