前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >mac 安装pymssql

mac 安装pymssql

作者头像
全栈程序员站长
发布2022-07-04 10:03:01
6100
发布2022-07-04 10:03:01
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

我们在mac环境下想连接mssqlserver数据库,首先要考虑的就是使用pymssql库,而pymssql是在freedts的基础上研发的,所以要先安装freedts,但是安装这个库之前还需有有一系列的支撑库

brew install unixodbc

pip install Cython

pip install setuptools_git

我们正常直接使用pip install pymssql时会报下面的错误

代码语言:javascript
复制
Jason-MacBook-Pro:~ wangying$ pip install pymssql
Looking in indexes: http://mirrors.aliyun.com/pypi/simple/
Collecting pymssql
  Downloading http://mirrors.aliyun.com/pypi/packages/2e/81/99562b93d75f3fc5956fa65decfb35b38a4ee97cf93c1d0d3cb799fffb99/pymssql-2.1.4.tar.gz (691 kB)
     |████████████████████████████████| 691 kB 2.4 MB/s 
    ERROR: Command errored out with exit status 1:
     command: /Library/Frameworks/Python.framework/Versions/3.7/bin/python3.7 -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/qn/tx7b6pr11ggfsw1ynzl24ntr0000gn/T/pip-install-oedc6gpo/pymssql/setup.py'"'"'; __file__='"'"'/private/var/folders/qn/tx7b6pr11ggfsw1ynzl24ntr0000gn/T/pip-install-oedc6gpo/pymssql/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /private/var/folders/qn/tx7b6pr11ggfsw1ynzl24ntr0000gn/T/pip-pip-egg-info-z1_haioj
         cwd: /private/var/folders/qn/tx7b6pr11ggfsw1ynzl24ntr0000gn/T/pip-install-oedc6gpo/pymssql/
    Complete output (53 lines):
    WARNING: The repository located at mirrors.aliyun.com is not a trusted or secure host and is being ignored. If this repository is available via HTTPS we recommend you use HTTPS instead, otherwise you may silence this warning and allow it anyway with '--trusted-host mirrors.aliyun.com'.
    ERROR: Could not find a version that satisfies the requirement setuptools_git (from versions: none)
    ERROR: No matching distribution found for setuptools_git
    /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/setuptools/dist.py:44: DistDeprecationWarning: Do not call this function
      warnings.warn("Do not call this function", DistDeprecationWarning)
    Traceback (most recent call last):
      File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/setuptools/installer.py", line 128, in fetch_build_egg
        subprocess.check_call(cmd)
      File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/subprocess.py", line 363, in check_call
        raise CalledProcessError(retcode, cmd)
    subprocess.CalledProcessError: Command '['/Library/Frameworks/Python.framework/Versions/3.7/bin/python3.7', '-m', 'pip', '--disable-pip-version-check', 'wheel', '--no-deps', '-w', '/var/folders/qn/tx7b6pr11ggfsw1ynzl24ntr0000gn/T/tmpy92cwoxh', '--quiet', 'setuptools_git']' returned non-zero exit status 1.
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/private/var/folders/qn/tx7b6pr11ggfsw1ynzl24ntr0000gn/T/pip-install-oedc6gpo/pymssql/setup.py", line 482, in <module>
        ext_modules = ext_modules(),
      File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/setuptools/__init__.py", line 163, in setup
        _install_setup_requires(attrs)
      File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/setuptools/__init__.py", line 158, in _install_setup_requires
        dist.fetch_build_eggs(dist.setup_requires)
      File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/setuptools/dist.py", line 698, in fetch_build_eggs
        replace_conflicting=True,
      File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pkg_resources/__init__.py", line 782, in resolve
        replace_conflicting=replace_conflicting
      File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pkg_resources/__init__.py", line 1065, in best_match
        return self.obtain(req, installer)
      File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pkg_resources/__init__.py", line 1077, in obtain
        return installer(requirement)
      File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/setuptools/dist.py", line 754, in fetch_build_egg
        return fetch_build_egg(self, req)
      File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/setuptools/installer.py", line 130, in fetch_build_egg
        raise DistutilsError(str(e))
    distutils.errors.DistutilsError: Command '['/Library/Frameworks/Python.framework/Versions/3.7/bin/python3.7', '-m', 'pip', '--disable-pip-version-check', 'wheel', '--no-deps', '-w', '/var/folders/qn/tx7b6pr11ggfsw1ynzl24ntr0000gn/T/tmpy92cwoxh', '--quiet', 'setuptools_git']' returned non-zero exit status 1.
    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 = ['/usr/local/include', '/usr/local/freetds/include']
    setup.py: library_dirs = ['/usr/local/lib', '/usr/local/freetds/lib']
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.

这个是提示我们需要安装freetds

  1. 在 FreeTDS stable 目录下载 freetds-patched.tgz 或者到这里下载stable release:http://www.freetds.org
  2. 解压并进入解压后的 FreeTDS 源代码目录,执行如下命令安装:

可以先用brew list 查看下是否已经安装过FreeTDS了,如果安装过了使用brew uninstall freetds卸载

  • ./configure --prefix=/usr/local/freetds
  • make
  • sudo make install
代码语言:javascript
复制
Jason-MacBook-Pro:freetds-1.2 wangying$ ./configure --prefix=/usr/local/freetds
checking for a BSD-compatible install... /usr/local/bin/ginstall -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /usr/local/bin/gmkdir -p
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether make supports nested variables... (cached) yes
checking for gawk... (cached) awk
checking for grep that handles long lines and -e... /usr/bin/grep
checking whether ln -s works... yes
checking for a sed that does not truncate output... /usr/bin/sed
checking for pkg-config... /usr/local/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking build system type... x86_64-apple-darwin17.7.0
checking host system type... x86_64-apple-darwin17.7.0
checking whether make supports the include directive... yes (GNU style)
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking how to run the C preprocessor... gcc -E
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking minix/config.h usability... no
checking minix/config.h presence... no
checking for minix/config.h... no
checking whether it is safe to define __EXTENSIONS__... yes
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... no
checking for gcc... (cached) gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ISO C89... (cached) none needed
checking whether gcc understands -c and -o together... (cached) yes
checking dependency style of gcc... (cached) gcc3
checking how to run the C preprocessor... gcc -E
checking for inline... inline
checking how to print strings... printf
checking for a sed that does not truncate output... (cached) /usr/bin/sed
checking for fgrep... /usr/bin/grep -F
checking for ld used by gcc... /Library/Developer/CommandLineTools/usr/bin/ld
checking if the linker (/Library/Developer/CommandLineTools/usr/bin/ld) is GNU ld... no
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking the maximum length of command line arguments... 196608
checking how to convert x86_64-apple-darwin17.7.0 file names to x86_64-apple-darwin17.7.0 format... func_convert_file_noop
checking how to convert x86_64-apple-darwin17.7.0 file names to toolchain format... func_convert_file_noop
checking for /Library/Developer/CommandLineTools/usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for ar... ar
checking for archiver @FILE support... no
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for a working dd... /bin/dd
checking how to truncate binary pipes... /bin/dd bs=4096 count=1
checking for mt... no
checking if : is a manifest tool... no
checking for dsymutil... dsymutil
checking for nmedit... nmedit
checking for lipo... lipo
checking for otool... otool
checking for otool64... no
checking for -single_module linker flag... yes
checking for -exported_symbols_list linker flag... yes
checking for -force_load linker flag... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... yes
checking for gcc option to produce PIC... -fno-common -DPIC
checking if gcc PIC flag -fno-common -DPIC works... yes
checking if gcc static flag -static works... no
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/Library/Developer/CommandLineTools/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... darwin17.7.0 dyld
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking for library containing dlopen... none required
checking for dlerror... yes
checking for shl_load... no
checking for shl_load in -ldld... no
checking for dld_link in -ldld... no
checking for windres... no
checking for ld... /Library/Developer/CommandLineTools/usr/bin/ld
checking if the linker (/Library/Developer/CommandLineTools/usr/bin/ld) is GNU ld... no
checking for shared library run path origin... done
checking 32-bit host C ABI... no
checking for the common suffixes of directories in the library search path... lib,lib
checking for iconv... yes
checking for working iconv... yes
checking how to link with libiconv... -liconv
checking for iconv declaration... 
         extern size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
checking for doxygen... no
checking for odbc_config... odbc_config
checking for library containing socket... none required
checking for library containing gethostbyname... none required
checking for library containing tgetent... -lncurses
checking for readline in -lreadline... yes
checking for rl_on_new_line... yes
checking for rl_reset_line_state... no
checking for the pthreads library -lpthreads... no
checking whether pthreads work without any flags... yes
checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
checking if more special flags are required for pthreads... -D_THREAD_SAFE
checking for library containing pthread_condattr_setclock... no
checking for pthread_condattr_setclock... no
checking for pthread_cond_timedwait_relative_np... yes
checking for ANSI C header files... (cached) yes
checking whether time.h and sys/time.h may both be included... yes
checking whether struct tm is in sys/time.h or time.h... time.h
checking for struct tm.tm_zone... yes
checking for struct tm.__tm_zone... no
checking errno.h usability... yes
checking errno.h presence... yes
checking for errno.h... yes
checking libgen.h usability... yes
checking libgen.h presence... yes
checking for libgen.h... yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking locale.h usability... yes
checking locale.h presence... yes
checking for locale.h... yes
checking poll.h usability... yes
checking poll.h presence... yes
checking for poll.h... yes
checking signal.h usability... yes
checking signal.h presence... yes
checking for signal.h... yes
checking stddef.h usability... yes
checking stddef.h presence... yes
checking for stddef.h... yes
checking sys/param.h usability... yes
checking sys/param.h presence... yes
checking for sys/param.h... yes
checking sys/select.h usability... yes
checking sys/select.h presence... yes
checking for sys/select.h... yes
checking for sys/stat.h... (cached) yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking for sys/types.h... (cached) yes
checking sys/resource.h usability... yes
checking sys/resource.h presence... yes
checking for sys/resource.h... yes
checking sys/eventfd.h usability... no
checking sys/eventfd.h presence... no
checking for sys/eventfd.h... no
checking sys/wait.h usability... yes
checking sys/wait.h presence... yes
checking for sys/wait.h... yes
checking for unistd.h... (cached) yes
checking netdb.h usability... yes
checking netdb.h presence... yes
checking for netdb.h... yes
checking wchar.h usability... yes
checking wchar.h presence... yes
checking for wchar.h... yes
checking for inttypes.h... (cached) yes
checking winsock2.h usability... no
checking winsock2.h presence... no
checking for winsock2.h... no
checking localcharset.h usability... yes
checking localcharset.h presence... yes
checking for localcharset.h... yes
checking valgrind/memcheck.h usability... no
checking valgrind/memcheck.h presence... no
checking for valgrind/memcheck.h... no
checking malloc.h usability... no
checking malloc.h presence... no
checking for malloc.h... no
checking dirent.h usability... yes
checking dirent.h presence... yes
checking for dirent.h... yes
checking stdbool.h usability... yes
checking stdbool.h presence... yes
checking for stdbool.h... yes
checking gnutls/abstract.h usability... no
checking gnutls/abstract.h presence... no
checking for gnutls/abstract.h... no
checking getopt.h usability... yes
checking getopt.h presence... yes
checking for getopt.h... yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking for windows.h... no
checking for sql.h... yes
checking arpa/inet.h usability... yes
checking arpa/inet.h presence... yes
checking for arpa/inet.h... yes
checking langinfo.h usability... yes
checking langinfo.h presence... yes
checking for langinfo.h... yes
checking for netdb.h... (cached) yes
checking netinet/in.h usability... yes
checking netinet/in.h presence... yes
checking for netinet/in.h... yes
checking netinet/tcp.h usability... yes
checking netinet/tcp.h presence... yes
checking for netinet/tcp.h... yes
checking roken.h usability... no
checking roken.h presence... no
checking for roken.h... no
checking com_err.h usability... yes
checking com_err.h presence... yes
checking for com_err.h... yes
checking paths.h usability... yes
checking paths.h presence... yes
checking for paths.h... yes
checking sys/ioctl.h usability... yes
checking sys/ioctl.h presence... yes
checking for sys/ioctl.h... yes
checking sys/socket.h usability... yes
checking sys/socket.h presence... yes
checking for sys/socket.h... yes
checking whether INADDR_NONE is defined... yes
checking size of char... 1
checking size of short... 2
checking size of long... 8
checking size of int... 4
checking size of float... 4
checking size of double... 8
checking size of long double... 16
checking size of long long... 8
checking size of __int64... 0
checking size of void *... 8
checking size of wchar_t... 4
checking is FIONBIO defined... yes
checking for socklen_t... yes
checking whether getopt has optreset support... yes
checking whether byte ordering is bigendian... no
checking for an ANSI C-conforming const... yes
checking whether we can use -static-libgcc... no
checking whether we can use -Wl,-static-libgcc... no
checking whether memset(0) sets pointers to NULL... yes
checking for vsnprintf... yes
checking for _vsnprintf... no
checking for _vscprintf... no
checking for gettimeofday... yes
checking for nl_langinfo... yes
checking for locale_charset... no
checking for setenv... yes
checking for putenv... yes
checking for getuid... yes
checking for getpwuid... yes
checking for getpwuid_r... yes
checking for fstat... yes
checking for alarm... yes
checking for fork... yes
checking for gethrtime... no
checking for localtime_r... yes
checking for setitimer... yes
checking for eventfd... no
checking for _fseeki64... no
checking for _ftelli64... no
checking for setrlimit... yes
checking for pthread_cond_timedwait... yes
checking for _lock_file... no
checking for _unlock_file... no
checking for usleep... yes
checking for nanosleep... yes
checking for readdir_r... yes
checking for inet_ntoa_r... no
checking for getipnodebyaddr... yes
checking for getipnodebyname... yes
checking for getaddrinfo... yes
checking for inet_ntop... yes
checking for gethostname... yes
checking for poll... yes
checking for socketpair... yes
checking for strtok_s... no
checking for asprintf... yes
checking for vasprintf... yes
checking for strtok_r... yes
checking for readpassphrase... yes
checking for strlcpy... yes
checking for strlcat... yes
checking for basename... yes
checking for getopt... yes
checking for strsep... yes
checking for daemon... yes
checking for _LARGEFILE_SOURCE value needed for large files... no
checking for library containing clock_gettime... none required
checking if clock_gettime support CLOCK_MONOTONIC... yes
checking for size_t... yes
checking for working alloca.h... yes
checking for alloca... yes
checking whether malloc_options variable is present... no
checking compile-time options
looking for installed odbc driver manager
checking for SQLConnect in -liodbc... yes
checking isql.h usability... no
checking isql.h presence... no
checking for isql.h... no
checking for SQLConnect in -lodbc... yes
checking for sql.h... (cached) yes
checking for SQLGetPrivateProfileString in -lodbcinst... yes
checking for SQLSETPOSIROW... yes
checking for SQLROWSETSIZE... no
checking for SQLROWOFFSET... no
checking size of SQLWCHAR... 2
checking if openssl is wanted... yes
checking for OPENSSL... no
checking threadsafety... enabled
checking for which type of gethostbyname_r... no
checking for which type of getservbyname_r... no
checking for which type of gethostbyaddr_r... no
checking for which type of getpwuid_r... five
checking for which type of localtime_r... struct
configure: debug enabled
checking CFLAGS for gcc -Wdeclaration-after-statement... -Wdeclaration-after-statement
done
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating include/freetds/version.h
config.status: creating include/tds_sysdep_public.h
config.status: creating Makefile
config.status: creating include/Makefile
config.status: creating include/freetds/Makefile
config.status: creating doc/Makefile
config.status: creating samples/Makefile
config.status: creating src/Makefile
config.status: creating src/tds/Makefile
config.status: creating src/tds/unittests/Makefile
config.status: creating src/dblib/Makefile
config.status: creating src/dblib/unittests/Makefile
config.status: creating src/ctlib/Makefile
config.status: creating src/ctlib/unittests/Makefile
config.status: creating src/replacements/Makefile
config.status: creating src/replacements/unittests/Makefile
config.status: creating src/utils/Makefile
config.status: creating src/utils/unittests/Makefile
config.status: creating src/server/Makefile
config.status: creating src/pool/Makefile
config.status: creating src/odbc/Makefile
config.status: creating src/odbc/unittests/Makefile
config.status: creating src/apps/Makefile
config.status: creating src/apps/fisql/Makefile
config.status: creating freetds.spec
config.status: creating win32/Makefile
config.status: creating win32/freetds.nsh
config.status: creating src/odbc/version.rc
config.status: creating vms/Makefile
config.status: creating misc/Makefile
config.status: creating doc/freebcp.1
config.status: creating doc/tsql.1
config.status: creating doc/osql.1
config.status: creating doc/bsqldb.1
config.status: creating doc/bsqlodbc.1
config.status: creating doc/defncopy.1
config.status: creating doc/datacopy.1
config.status: creating doc/fisql.1
config.status: creating doc/freetds.conf.5
config.status: creating include/config.h
config.status: executing depfiles commands
config.status: executing libtool commands
Jason-MacBook-Pro:freetds-1.2 wangying$ make
Making all in include
/Library/Developer/CommandLineTools/usr/bin/make  all-recursive
Making all in freetds
/Library/Developer/CommandLineTools/usr/bin/make  all-am
echo '#define FREETDS_SYSCONFDIR "/usr/local/freetds/etc"' >sysconfdir.h
make[3]: Nothing to be done for `all-am'.
Making all in src
Making all in utils
Making all in .
  CC       md4.lo
  CC       md5.lo
  CC       des.lo
  CC       hmac_md5.lo
  CC       dlist.lo
  CC       getpassarg.lo
  CC       sleep.lo
  CC       tds_cond.lo
  CC       win_mutex.lo
  CC       threadsafe.lo
  CC       bjoern-utf8.lo
  CC       tdsstring.lo
  CC       net.lo
  CCLD     libtdsutils.la
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdsutils.a(dlist.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdsutils.a(win_mutex.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdsutils.a(dlist.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdsutils.a(win_mutex.o) has no symbols
Making all in unittests
make[3]: Nothing to be done for `all'.
Making all in replacements
/Library/Developer/CommandLineTools/usr/bin/make  all-recursive
Making all in .
  CC       iconv.lo
  CC       gettimeofday.lo
  CC       poll.lo
  CC       socketpair.lo
  CC       getaddrinfo.lo
  CCLD     libreplacements.la
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libreplacements.a(iconv.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libreplacements.a(gettimeofday.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libreplacements.a(poll.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libreplacements.a(socketpair.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libreplacements.a(getaddrinfo.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libreplacements.a(dlist.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libreplacements.a(win_mutex.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libreplacements.a(iconv.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libreplacements.a(gettimeofday.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libreplacements.a(poll.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libreplacements.a(socketpair.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libreplacements.a(getaddrinfo.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libreplacements.a(dlist.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libreplacements.a(win_mutex.o) has no symbols
Making all in unittests
make[4]: Nothing to be done for `all'.
Making all in tds
/Library/Developer/CommandLineTools/usr/bin/make  all-recursive
Making all in .
  CC       mem.lo
  CC       token.lo
  CC       util.lo
  CC       login.lo
  CC       read.lo
  CC       write.lo
  CC       convert.lo
  CC       numeric.lo
  CC       config.lo
  CC       query.lo
  CC       iconv.lo
  CC       locale.lo
  CC       vstrbuild.lo
  CC       getmac.lo
  CC       data.lo
  CC       net.lo
  CC       tls.lo
  CC       tds_checks.lo
  CC       log.lo
  CC       bulk.lo
  CC       packet.lo
  CC       stream.lo
  CC       random.lo
  CC       sec_negotiate.lo
  CC       challenge.lo
  CC       gssapi.lo
  CCLD     libtds.la
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtds.a(tls.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtds.a(tds_checks.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtds.a(gssapi.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtds.a(tls.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtds.a(tds_checks.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtds.a(gssapi.o) has no symbols
Making all in unittests
  CC       common.o
  CC       utf8.o
  CC       allcolumns.o
  AR       libcommon.a
Making all in ctlib
Making all in .
  CC       ct.lo
ct.c:1995:10: warning: 18 enumeration values not handled in switch: 'SYBVOID',
      'SYBINTERVAL', 'SYBUINTN'... [-Wswitch]
        switch (type) {
                ^
ct.c:1995:10: note: add missing switch cases
        switch (type) {
                ^
1 warning generated.
  CC       cs.lo
  CC       blk.lo
  CC       ctutil.lo
  CCLD     libct.la
copying selected object files to avoid basename conflicts...
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libct.a(gssapi.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libct.a(tds_checks.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libct.a(tls.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libct.a(dlist.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libct.a(getaddrinfo.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libct.a(gettimeofday.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libct.a(lt1-iconv.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libct.a(poll.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libct.a(socketpair.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libct.a(win_mutex.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libct.a(gssapi.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libct.a(tds_checks.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libct.a(tls.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libct.a(dlist.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libct.a(getaddrinfo.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libct.a(gettimeofday.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libct.a(lt1-iconv.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libct.a(poll.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libct.a(socketpair.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libct.a(win_mutex.o) has no symbols
Making all in unittests
  CC       common.o
  AR       libcommon.a
Making all in dblib
Making all in .
  CC       dblib.lo
  CC       dbutil.lo
  CC       rpc.lo
  CC       bcp.lo
  CC       xact.lo
  CC       dbpivot.lo
dbpivot.c:137:9: warning: 33 enumeration values not handled in switch:
      'SYBUNIQUE', 'SYBMSDATE', 'SYBMSTIME'... [-Wswitch]
        switch(pc1->type) {
               ^
dbpivot.c:137:9: note: add missing switch cases
        switch(pc1->type) {
               ^
dbpivot.c:182:9: warning: 33 enumeration values not handled in switch:
      'SYBUNIQUE', 'SYBMSDATE', 'SYBMSTIME'... [-Wswitch]
        switch(pcol->type) {
               ^
dbpivot.c:182:9: note: add missing switch cases
        switch(pcol->type) {
               ^
2 warnings generated.
  CCLD     libsybdb.la
copying selected object files to avoid basename conflicts...
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libsybdb.a(xact.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libsybdb.a(gssapi.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libsybdb.a(tds_checks.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libsybdb.a(tls.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libsybdb.a(dlist.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libsybdb.a(getaddrinfo.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libsybdb.a(gettimeofday.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libsybdb.a(lt1-iconv.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libsybdb.a(poll.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libsybdb.a(socketpair.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libsybdb.a(win_mutex.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libsybdb.a(xact.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libsybdb.a(gssapi.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libsybdb.a(tds_checks.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libsybdb.a(tls.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libsybdb.a(dlist.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libsybdb.a(getaddrinfo.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libsybdb.a(gettimeofday.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libsybdb.a(lt1-iconv.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libsybdb.a(poll.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libsybdb.a(socketpair.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libsybdb.a(win_mutex.o) has no symbols
Making all in unittests
  CC       common.o
  AR       libcommon.a
Making all in odbc
/Library/Developer/CommandLineTools/usr/bin/make  all-recursive
Making all in .
  CC       odbc.lo
odbc.c:711:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:881:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:1089:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:1098:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:1216:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:1311:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:1348:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:1507:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:1518:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:1528:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:1617:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:1662:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:1809:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:1817:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:1877:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:2283:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:2294:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:2309:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:2327:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:2440:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:2948:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:3570:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:4008:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:4044:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:4062:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:4125:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:4150:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:4245:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:4253:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:4495:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:4505:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:4516:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:4525:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:4618:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:4726:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:4735:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:4756:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:4886:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:4895:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:4904:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:4999:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:5922:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:5935:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:6034:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:6145:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:6195:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:6206:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:6394:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:6403:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:6720:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:6730:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:6741:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
odbc.c:7459:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:10:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLDriverConnectW(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:35:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLDriverConnect(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:70:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLColumnPrivilegesW(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:95:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLColumnPrivileges(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:132:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLForeignKeysW(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:163:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLForeignKeys(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:204:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLNativeSqlW(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:223:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLNativeSql(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:249:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLPrimaryKeysW(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:271:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLPrimaryKeys(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:302:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLProcedureColumnsW(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:327:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLProcedureColumns(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:361:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLProceduresW(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:383:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLProcedures(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:413:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLTablePrivilegesW(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:435:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLTablePrivileges(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:465:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLConnectW(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:487:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLConnect(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:520:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLDescribeColW(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:547:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLDescribeCol(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:594:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLGetDescRecW(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:627:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLGetDescRec(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:679:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLGetDescFieldW(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:703:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLGetDescField(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:742:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLSetDescFieldW(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:763:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLSetDescField(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:795:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLExecDirectW(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:811:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLExecDirect(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:831:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLPrepareW(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:847:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLPrepare(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:867:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLSetCursorNameW(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:883:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLSetCursorName(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:903:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLGetCursorNameW(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:915:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLGetCursorName(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:938:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLColumnsW(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:963:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLColumns(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:998:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLGetConnectAttrW(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:1019:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLGetConnectAttr(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:1053:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLSetConnectAttrW(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:1071:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLSetConnectAttr(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:1104:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLSpecialColumnsW(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:1135:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLSpecialColumns(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:1179:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLStatisticsW(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:1207:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLStatistics(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:1246:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLTablesW(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from odbc.c:7543:
./odbc_export.h:1271:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLTables(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
99 warnings generated.
  CC       connectparams.lo
  CC       convert_tds2sql.lo
  CC       descriptor.lo
  CC       prepare_query.lo
  CC       odbc_util.lo
  CC       bcp.lo
  CC       native.lo
  CC       sql2tds.lo
  CC       error.lo
In file included from error.c:778:
./error_export.h:11:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLGetDiagRecW(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from error.c:778:
./error_export.h:35:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLGetDiagRec(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from error.c:778:
./error_export.h:75:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLErrorW(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from error.c:778:
./error_export.h:99:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLError(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from error.c:778:
./error_export.h:140:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLGetDiagFieldW(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
In file included from error.c:778:
./error_export.h:167:23: warning: unknown attribute 'externally_visible' ignored
      [-Wunknown-attributes]
SQLRETURN ODBC_PUBLIC ODBC_API SQLGetDiagField(
                      ^
../../include/freetds/odbc.h:78:41: note: expanded from macro 'ODBC_API'
#define ODBC_API SQL_API __attribute__((externally_visible))
                                        ^
6 warnings generated.
  CC       odbc_checks.lo
  CC       sqlwchar.lo
  CC       odbc_data.lo
  CCLD     libtdsodbc.la
copying selected object files to avoid basename conflicts...
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdsodbc.a(odbc_checks.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdsodbc.a(gssapi.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdsodbc.a(tds_checks.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdsodbc.a(tls.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdsodbc.a(dlist.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdsodbc.a(getaddrinfo.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdsodbc.a(gettimeofday.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdsodbc.a(lt1-iconv.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdsodbc.a(poll.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdsodbc.a(socketpair.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdsodbc.a(win_mutex.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdsodbc.a(odbc_checks.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdsodbc.a(gssapi.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdsodbc.a(tds_checks.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdsodbc.a(tls.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdsodbc.a(dlist.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdsodbc.a(getaddrinfo.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdsodbc.a(gettimeofday.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdsodbc.a(lt1-iconv.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdsodbc.a(poll.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdsodbc.a(socketpair.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdsodbc.a(win_mutex.o) has no symbols
Making all in unittests
  CC       common.o
  AR       libcommon.a
Making all in server
  CC       unittest.o
  CC       query.lo
  CC       server.lo
  CC       login.lo
  CCLD     libtdssrv.la
copying selected object files to avoid basename conflicts...
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdssrv.a(gssapi.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdssrv.a(tds_checks.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdssrv.a(tls.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdssrv.a(dlist.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdssrv.a(getaddrinfo.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdssrv.a(gettimeofday.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdssrv.a(lt3-iconv.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdssrv.a(poll.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdssrv.a(socketpair.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdssrv.a(win_mutex.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdssrv.a(gssapi.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdssrv.a(tds_checks.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdssrv.a(tls.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdssrv.a(dlist.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdssrv.a(getaddrinfo.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdssrv.a(gettimeofday.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdssrv.a(lt3-iconv.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdssrv.a(poll.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdssrv.a(socketpair.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: .libs/libtdssrv.a(win_mutex.o) has no symbols
  CCLD     tdssrv
Making all in pool
  CC       config.o
  CC       main.o
main.c:440:7: warning: 'daemon' is deprecated: first deprecated in macOS 10.5 -
      Use posix_spawn APIs instead. [-Wdeprecated-declarations]
                if (daemon(0, 0) < 0) {
                    ^
/usr/include/stdlib.h:298:6: note: 'daemon' has been explicitly marked
      deprecated here
int      daemon(int, int) __DARWIN_1050(daemon) __OSX_AVAILABLE_BUT_DEPR...
         ^
1 warning generated.
  CC       member.o
  CC       user.o
  CC       util.o
  CCLD     tdspool
Making all in apps
Making all in fisql
  CC       fisql.o
  CC       terminal.o
  CC       edit.o
  CC       handlers.o
  CC       interrupt.o
  CCLD     fisql
  CC       tsql.o
  CCLD     tsql
  CC       freebcp.o
  CCLD     freebcp
  CC       bsqldb.o
  CCLD     bsqldb
  CC       defncopy.o
  CCLD     defncopy
  CC       datacopy.o
  CCLD     datacopy
  CC       bsqlodbc-bsqlodbc.o
  CCLD     bsqlodbc
make[2]: Nothing to be done for `all-am'.
Making all in doc
NAME=`echo dblib.api.body | sed 's/\..*$//'` && \
	sed -ne "/^${NAME}[	]/ s!!<row><entry>!p" \
			./api_status.txt \
		| sed 	-e's![	][	]*!</entry> <entry>!g' \
			-e's!$!</entry></row>!'  > dblib.api.body~
mv dblib.api.body~ dblib.api.body
NAME=`echo dblib.api.xml | sed 's/\..*$//'` && \
	HEAD='<tgroup cols="4"><thead><row> <entry>Category</entry> <entry>Function</entry> <entry>Status</entry> <entry>Comments</entry> </row></thead> ' && \
	if [ ${NAME} = dblib ]; then \
		HEAD=`echo '<tgroup cols="4"><thead><row> <entry>Category</entry> <entry>Function</entry> <entry>Status</entry> <entry>Comments</entry> </row></thead> ' \
			| sed 's!<entry>Function</entry>!<entry>Microsoft name</entry><entry>Sybase name</entry>!'`; \
	fi && \
	BODY=`cat dblib.api.body` && \
	printf '<table id="%s.api"> <title>&%s; API Implementation Summary</title>\n <!-- table heading -->\n %s\n <tbody>\n %s\n </tbody></tgroup></table>\n' ${NAME} ${NAME} "${HEAD}" "${BODY}"  > dblib.api.xml~
mv dblib.api.xml~ dblib.api.xml
NAME=`echo ctlib.api.body | sed 's/\..*$//'` && \
	sed -ne "/^${NAME}[	]/ s!!<row><entry>!p" \
			./api_status.txt \
		| sed 	-e's![	][	]*!</entry> <entry>!g' \
			-e's!$!</entry></row>!'  > ctlib.api.body~
mv ctlib.api.body~ ctlib.api.body
NAME=`echo ctlib.api.xml | sed 's/\..*$//'` && \
	HEAD='<tgroup cols="4"><thead><row> <entry>Category</entry> <entry>Function</entry> <entry>Status</entry> <entry>Comments</entry> </row></thead> ' && \
	if [ ${NAME} = dblib ]; then \
		HEAD=`echo '<tgroup cols="4"><thead><row> <entry>Category</entry> <entry>Function</entry> <entry>Status</entry> <entry>Comments</entry> </row></thead> ' \
			| sed 's!<entry>Function</entry>!<entry>Microsoft name</entry><entry>Sybase name</entry>!'`; \
	fi && \
	BODY=`cat ctlib.api.body` && \
	printf '<table id="%s.api"> <title>&%s; API Implementation Summary</title>\n <!-- table heading -->\n %s\n <tbody>\n %s\n </tbody></tgroup></table>\n' ${NAME} ${NAME} "${HEAD}" "${BODY}"  > ctlib.api.xml~
mv ctlib.api.xml~ ctlib.api.xml
NAME=`echo odbc.api.body | sed 's/\..*$//'` && \
	sed -ne "/^${NAME}[	]/ s!!<row><entry>!p" \
			./api_status.txt \
		| sed 	-e's![	][	]*!</entry> <entry>!g' \
			-e's!$!</entry></row>!'  > odbc.api.body~
mv odbc.api.body~ odbc.api.body
NAME=`echo odbc.api.xml | sed 's/\..*$//'` && \
	HEAD='<tgroup cols="4"><thead><row> <entry>Category</entry> <entry>Function</entry> <entry>Status</entry> <entry>Comments</entry> </row></thead> ' && \
	if [ ${NAME} = dblib ]; then \
		HEAD=`echo '<tgroup cols="4"><thead><row> <entry>Category</entry> <entry>Function</entry> <entry>Status</entry> <entry>Comments</entry> </row></thead> ' \
			| sed 's!<entry>Function</entry>!<entry>Microsoft name</entry><entry>Sybase name</entry>!'`; \
	fi && \
	BODY=`cat odbc.api.body` && \
	printf '<table id="%s.api"> <title>&%s; API Implementation Summary</title>\n <!-- table heading -->\n %s\n <tbody>\n %s\n </tbody></tgroup></table>\n' ${NAME} ${NAME} "${HEAD}" "${BODY}"  > odbc.api.xml~
mv odbc.api.xml~ odbc.api.xml
if test -h userguide; then rm userguide; fi
/usr/local/bin/gmkdir -p ./userguide 2>&1
touch ./userguide/t.htm
rm -rf ./userguide/*
if ! xmlto --version > /dev/null 2> /dev/null ; then \
		if test -r ././userguide \
		   -a ! -r ./userguide ; then \
			cp -R ././userguide .; \
		fi; \
	fi
test -r /Users/wangying/Desktop/freetds-1.2/doc/userguide.xml
test -r userguide.xml || ln -s ./userguide.xml userguide.xml
test -r userguide_desc.xml || ln -s ./userguide_desc.xml userguide_desc.xml
(cd ./userguide && \
	if xmlto --version > /dev/null 2> /dev/null ; then \
		xmlto -m ../userguide.xsl xhtml ../userguide.xml; \
		cp /Users/wangying/Desktop/freetds-1.2/doc/userguide.css .; \
	fi)
if test ! -r userguide/index.html ; then \
		echo '<html> <P>at <a HREF="http://www.freetds.org/userguide/">www.freetds.org</a> </html>' > .index.html && mv .index.html userguide/index.html; \
	fi
test -f ./userguide/index.html
Making all in samples
rm -f unixodbc.freetds.driver.template unixodbc.freetds.driver.template.tmp
sed -e 's,@datadir\@,/usr/local/freetds/share/freetds,g' -e 's,@libdir\@,/usr/local/freetds/lib,g' -e 's,@prefix\@,/usr/local/freetds,g' unixodbc.freetds.driver.template.in >unixodbc.freetds.driver.template.tmp
mv unixodbc.freetds.driver.template.tmp unixodbc.freetds.driver.template
Making all in win32
make[1]: Nothing to be done for `all'.
Making all in vms
make[1]: Nothing to be done for `all'.
Making all in misc
make[1]: Nothing to be done for `all'.
make[1]: Nothing to be done for `all-am'.
if test ! -f PWD; then cp ./PWD.in PWD; fi
Jason-MacBook-Pro:freetds-1.2 wangying$ sudo make install
Password:
Making install in include
Making install in freetds
/Library/Developer/CommandLineTools/usr/bin/make  install-am
make[4]: Nothing to be done for `install-exec-am'.
make[4]: Nothing to be done for `install-data-am'.
make[3]: Nothing to be done for `install-exec-am'.
 /usr/local/bin/gmkdir -p '/usr/local/freetds/include'
 /usr/local/bin/ginstall -c -m 644 bkpublic.h cspublic.h cstypes.h ctpublic.h sqldb.h sqlfront.h sybdb.h sybfront.h syberror.h odbcss.h '/usr/local/freetds/include'
 /usr/local/bin/gmkdir -p '/usr/local/freetds/include'
 /usr/local/bin/ginstall -c -m 644 tds_sysdep_public.h '/usr/local/freetds/include'
Making install in src
Making install in utils
Making install in .
make[4]: Nothing to be done for `install-exec-am'.
make[4]: Nothing to be done for `install-data-am'.
Making install in unittests
make[4]: Nothing to be done for `install-exec-am'.
make[4]: Nothing to be done for `install-data-am'.
Making install in replacements
/Library/Developer/CommandLineTools/usr/bin/make  install-recursive
Making install in .
make[5]: Nothing to be done for `install-exec-am'.
make[5]: Nothing to be done for `install-data-am'.
Making install in unittests
make[5]: Nothing to be done for `install-exec-am'.
make[5]: Nothing to be done for `install-data-am'.
Making install in tds
/Library/Developer/CommandLineTools/usr/bin/make  install-recursive
Making install in .
make[5]: Nothing to be done for `install-exec-am'.
make[5]: Nothing to be done for `install-data-am'.
Making install in unittests
make[5]: Nothing to be done for `install-exec-am'.
make[5]: Nothing to be done for `install-data-am'.
Making install in ctlib
Making install in .
 /usr/local/bin/gmkdir -p '/usr/local/freetds/lib'
 /bin/sh ../../libtool   --mode=install /usr/local/bin/ginstall -c   libct.la '/usr/local/freetds/lib'
libtool: install: /usr/local/bin/ginstall -c .libs/libct.4.dylib /usr/local/freetds/lib/libct.4.dylib
libtool: install: (cd /usr/local/freetds/lib && { ln -s -f libct.4.dylib libct.dylib || { rm -f libct.dylib && ln -s libct.4.dylib libct.dylib; }; })
libtool: install: /usr/local/bin/ginstall -c .libs/libct.lai /usr/local/freetds/lib/libct.la
libtool: install: /usr/local/bin/ginstall -c .libs/libct.a /usr/local/freetds/lib/libct.a
libtool: install: chmod 644 /usr/local/freetds/lib/libct.a
libtool: install: ranlib /usr/local/freetds/lib/libct.a
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libct.a(gssapi.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libct.a(tds_checks.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libct.a(tls.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libct.a(dlist.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libct.a(getaddrinfo.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libct.a(gettimeofday.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libct.a(lt1-iconv.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libct.a(poll.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libct.a(socketpair.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libct.a(win_mutex.o) has no symbols
make[4]: Nothing to be done for `install-data-am'.
Making install in unittests
make[4]: Nothing to be done for `install-exec-am'.
make[4]: Nothing to be done for `install-data-am'.
Making install in dblib
Making install in .
 /usr/local/bin/gmkdir -p '/usr/local/freetds/lib'
 /bin/sh ../../libtool   --mode=install /usr/local/bin/ginstall -c   libsybdb.la '/usr/local/freetds/lib'
libtool: install: /usr/local/bin/ginstall -c .libs/libsybdb.5.dylib /usr/local/freetds/lib/libsybdb.5.dylib
libtool: install: (cd /usr/local/freetds/lib && { ln -s -f libsybdb.5.dylib libsybdb.dylib || { rm -f libsybdb.dylib && ln -s libsybdb.5.dylib libsybdb.dylib; }; })
libtool: install: /usr/local/bin/ginstall -c .libs/libsybdb.lai /usr/local/freetds/lib/libsybdb.la
libtool: install: /usr/local/bin/ginstall -c .libs/libsybdb.a /usr/local/freetds/lib/libsybdb.a
libtool: install: chmod 644 /usr/local/freetds/lib/libsybdb.a
libtool: install: ranlib /usr/local/freetds/lib/libsybdb.a
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libsybdb.a(xact.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libsybdb.a(gssapi.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libsybdb.a(tds_checks.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libsybdb.a(tls.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libsybdb.a(dlist.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libsybdb.a(getaddrinfo.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libsybdb.a(gettimeofday.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libsybdb.a(lt1-iconv.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libsybdb.a(poll.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libsybdb.a(socketpair.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libsybdb.a(win_mutex.o) has no symbols
make[4]: Nothing to be done for `install-data-am'.
Making install in unittests
make[4]: Nothing to be done for `install-exec-am'.
make[4]: Nothing to be done for `install-data-am'.
Making install in odbc
/Library/Developer/CommandLineTools/usr/bin/make  install-recursive
Making install in .
 /usr/local/bin/gmkdir -p '/usr/local/freetds/lib'
 /bin/sh ../../libtool   --mode=install /usr/local/bin/ginstall -c   libtdsodbc.la '/usr/local/freetds/lib'
libtool: install: /usr/local/bin/ginstall -c .libs/libtdsodbc.0.so /usr/local/freetds/lib/libtdsodbc.0.so
libtool: install: (cd /usr/local/freetds/lib && { ln -s -f libtdsodbc.0.so libtdsodbc.so || { rm -f libtdsodbc.so && ln -s libtdsodbc.0.so libtdsodbc.so; }; })
libtool: install: /usr/local/bin/ginstall -c .libs/libtdsodbc.lai /usr/local/freetds/lib/libtdsodbc.la
libtool: install: /usr/local/bin/ginstall -c .libs/libtdsodbc.a /usr/local/freetds/lib/libtdsodbc.a
libtool: install: chmod 644 /usr/local/freetds/lib/libtdsodbc.a
libtool: install: ranlib /usr/local/freetds/lib/libtdsodbc.a
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libtdsodbc.a(odbc_checks.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libtdsodbc.a(gssapi.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libtdsodbc.a(tds_checks.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libtdsodbc.a(tls.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libtdsodbc.a(dlist.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libtdsodbc.a(getaddrinfo.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libtdsodbc.a(gettimeofday.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libtdsodbc.a(lt1-iconv.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libtdsodbc.a(poll.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libtdsodbc.a(socketpair.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: /usr/local/freetds/lib/libtdsodbc.a(win_mutex.o) has no symbols
make[5]: Nothing to be done for `install-data-am'.
Making install in unittests
make[5]: Nothing to be done for `install-exec-am'.
make[5]: Nothing to be done for `install-data-am'.
Making install in server
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
Making install in pool
 /usr/local/bin/gmkdir -p '/usr/local/freetds/bin'
  /bin/sh ../../libtool   --mode=install /usr/local/bin/ginstall -c tdspool '/usr/local/freetds/bin'
libtool: install: /usr/local/bin/ginstall -c tdspool /usr/local/freetds/bin/tdspool
/bin/sh ../../mkinstalldirs /usr/local/freetds/etc
if test ! -f /usr/local/freetds/etc/pool.conf; then \
		/usr/local/bin/ginstall -c -m 644 ./pool.conf /usr/local/freetds/etc/pool.conf; \
	fi
Making install in apps
Making install in fisql
 /usr/local/bin/gmkdir -p '/usr/local/freetds/bin'
  /bin/sh ../../../libtool   --mode=install /usr/local/bin/ginstall -c fisql '/usr/local/freetds/bin'
libtool: install: /usr/local/bin/ginstall -c .libs/fisql /usr/local/freetds/bin/fisql
make[4]: Nothing to be done for `install-data-am'.
 /usr/local/bin/gmkdir -p '/usr/local/freetds/bin'
  /bin/sh ../../libtool   --mode=install /usr/local/bin/ginstall -c tsql freebcp bsqldb defncopy datacopy bsqlodbc '/usr/local/freetds/bin'
libtool: install: /usr/local/bin/ginstall -c tsql /usr/local/freetds/bin/tsql
libtool: install: /usr/local/bin/ginstall -c .libs/freebcp /usr/local/freetds/bin/freebcp
libtool: install: /usr/local/bin/ginstall -c .libs/bsqldb /usr/local/freetds/bin/bsqldb
libtool: install: /usr/local/bin/ginstall -c .libs/defncopy /usr/local/freetds/bin/defncopy
libtool: install: /usr/local/bin/ginstall -c .libs/datacopy /usr/local/freetds/bin/datacopy
libtool: install: /usr/local/bin/ginstall -c bsqlodbc /usr/local/freetds/bin/bsqlodbc
 /usr/local/bin/gmkdir -p '/usr/local/freetds/bin'
 /usr/local/bin/ginstall -c osql '/usr/local/freetds/bin'
make[4]: Nothing to be done for `install-data-am'.
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
Making install in doc
make[2]: Nothing to be done for `install-exec-am'.
/usr/local/bin/gmkdir -p /usr/local/freetds/share/doc/freetds/userguide  2>&1
/usr/local/bin/gmkdir -p /usr/local/freetds/share/doc/freetds/reference  2>&1
/usr/local/bin/gmkdir -p /usr/local/freetds/share/doc/freetds/images  2>&1
/usr/local/bin/gmkdir -p /usr/local/freetds/share/doc/freetds/images/callouts  2>&1
/usr/local/bin/gmkdir -p . 2>&1
if test -r ./userguide ; then d=.; else d="."; fi; \
	find $d/./userguide \( -type f -o -type l \) \
		-exec /usr/local/bin/ginstall -c -m 644 {} /usr/local/freetds/share/doc/freetds/userguide ';'
if test -r ./reference ; then d=.; else d="."; fi; \
	find $d/./reference \( -type f -o -type l \) \
		-exec /usr/local/bin/ginstall -c -m 644 {} /usr/local/freetds/share/doc/freetds/reference ';'
cd . && find images -name \*.gif \
		-exec  /usr/local/bin/ginstall -c -m 644 {} /usr/local/freetds/share/doc/freetds/{} ';'
 /usr/local/bin/gmkdir -p '/usr/local/freetds/share/man/man1'
 /usr/local/bin/ginstall -c -m 644 freebcp.1 tsql.1 osql.1 bsqldb.1 bsqlodbc.1 defncopy.1 datacopy.1 fisql.1 '/usr/local/freetds/share/man/man1'
 /usr/local/bin/gmkdir -p '/usr/local/freetds/share/man/man5'
 /usr/local/bin/ginstall -c -m 644 freetds.conf.5 '/usr/local/freetds/share/man/man5'
Making install in samples
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
Making install in win32
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
Making install in vms
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
Making install in misc
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
make[2]: Nothing to be done for `install-exec-am'.
/bin/sh ./mkinstalldirs /usr/local/freetds/etc
if test ! -f /usr/local/freetds/etc/freetds.conf; then \
		/usr/local/bin/ginstall -c -m 644 ./freetds.conf /usr/local/freetds/etc/freetds.conf; \
	fi
if test ! -f /usr/local/freetds/etc/locales.conf; then \
		/usr/local/bin/ginstall -c -m 644 ./locales.conf /usr/local/freetds/etc/locales.conf; \
	fi

安装好freetds后就可以安装pymssql

pip install pymssql

代码语言:javascript
复制
Jason-MacBook-Pro:freetds-1.2 wangying$ pip install pymssql
Looking in indexes: http://mirrors.aliyun.com/pypi/simple/
Collecting pymssql
  Downloading http://mirrors.aliyun.com/pypi/packages/2e/81/99562b93d75f3fc5956fa65decfb35b38a4ee97cf93c1d0d3cb799fffb99/pymssql-2.1.4.tar.gz (691 kB)
     |████████████████████████████████| 691 kB 4.5 MB/s 
    ERROR: Command errored out with exit status 1:
     command: /Library/Frameworks/Python.framework/Versions/3.7/bin/python3.7 -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/qn/tx7b6pr11ggfsw1ynzl24ntr0000gn/T/pip-install-qrl4tn1c/pymssql/setup.py'"'"'; __file__='"'"'/private/var/folders/qn/tx7b6pr11ggfsw1ynzl24ntr0000gn/T/pip-install-qrl4tn1c/pymssql/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /private/var/folders/qn/tx7b6pr11ggfsw1ynzl24ntr0000gn/T/pip-pip-egg-info-4kcwg5zp
         cwd: /private/var/folders/qn/tx7b6pr11ggfsw1ynzl24ntr0000gn/T/pip-install-qrl4tn1c/pymssql/
    Complete output (53 lines):
    WARNING: The repository located at mirrors.aliyun.com is not a trusted or secure host and is being ignored. If this repository is available via HTTPS we recommend you use HTTPS instead, otherwise you may silence this warning and allow it anyway with '--trusted-host mirrors.aliyun.com'.
    ERROR: Could not find a version that satisfies the requirement setuptools_git (from versions: none)
    ERROR: No matching distribution found for setuptools_git
    /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/setuptools/dist.py:44: DistDeprecationWarning: Do not call this function
      warnings.warn("Do not call this function", DistDeprecationWarning)
    Traceback (most recent call last):
      File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/setuptools/installer.py", line 128, in fetch_build_egg
        subprocess.check_call(cmd)
      File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/subprocess.py", line 363, in check_call
        raise CalledProcessError(retcode, cmd)
    subprocess.CalledProcessError: Command '['/Library/Frameworks/Python.framework/Versions/3.7/bin/python3.7', '-m', 'pip', '--disable-pip-version-check', 'wheel', '--no-deps', '-w', '/var/folders/qn/tx7b6pr11ggfsw1ynzl24ntr0000gn/T/tmpu5n3nhnb', '--quiet', 'setuptools_git']' returned non-zero exit status 1.
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/private/var/folders/qn/tx7b6pr11ggfsw1ynzl24ntr0000gn/T/pip-install-qrl4tn1c/pymssql/setup.py", line 482, in <module>
        ext_modules = ext_modules(),
      File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/setuptools/__init__.py", line 163, in setup
        _install_setup_requires(attrs)
      File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/setuptools/__init__.py", line 158, in _install_setup_requires
        dist.fetch_build_eggs(dist.setup_requires)
      File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/setuptools/dist.py", line 698, in fetch_build_eggs
        replace_conflicting=True,
      File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pkg_resources/__init__.py", line 782, in resolve
        replace_conflicting=replace_conflicting
      File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pkg_resources/__init__.py", line 1065, in best_match
        return self.obtain(req, installer)
      File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pkg_resources/__init__.py", line 1077, in obtain
        return installer(requirement)
      File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/setuptools/dist.py", line 754, in fetch_build_egg
        return fetch_build_egg(self, req)
      File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/setuptools/installer.py", line 130, in fetch_build_egg
        raise DistutilsError(str(e))
    distutils.errors.DistutilsError: Command '['/Library/Frameworks/Python.framework/Versions/3.7/bin/python3.7', '-m', 'pip', '--disable-pip-version-check', 'wheel', '--no-deps', '-w', '/var/folders/qn/tx7b6pr11ggfsw1ynzl24ntr0000gn/T/tmpu5n3nhnb', '--quiet', 'setuptools_git']' returned non-zero exit status 1.
    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 = ['/usr/local/include', '/usr/local/freetds/include']
    setup.py: library_dirs = ['/usr/local/lib', '/usr/local/freetds/lib']
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.

又报错了,这是我们要注意错误提示:

mac 安装pymssql
mac 安装pymssql

这个提示的意思是我们缺少setuptools_git

这时我们使用 pip install setuptools_git来安装。

安装后我们再pip install pymssql

代码语言:javascript
复制
Jason-MacBook-Pro:Desktop wangying$ pip install pymssql
Looking in indexes: http://mirrors.aliyun.com/pypi/simple/
Collecting pymssql
  Downloading http://mirrors.aliyun.com/pypi/packages/2e/81/99562b93d75f3fc5956fa65decfb35b38a4ee97cf93c1d0d3cb799fffb99/pymssql-2.1.4.tar.gz (691 kB)
     |████████████████████████████████| 691 kB 3.9 MB/s 
Building wheels for collected packages: pymssql
  Building wheel for pymssql (setup.py) ... done
  Created wheel for pymssql: filename=pymssql-2.1.4-cp37-cp37m-macosx_10_6_intel.whl size=542711 sha256=19aa8137dc463166f0ce654e2ff1adde26586756e7e63008ee299707dcc8e45a
  Stored in directory: /Users/wangying/Library/Caches/pip/wheels/1a/3f/a1/cd260c16254376ba9bee5974f91a22097a510d74c0ab2f9d69
Successfully built pymssql
Installing collected packages: pymssql
Successfully installed pymssql-2.1.4

可以看见我们此时已经安装成功了

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/149017.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档