[MacPorts] #62580: swig fails test suite on Lion

MacPorts noreply at macports.org
Tue Mar 30 15:36:40 UTC 2021


#62580: swig fails test suite on Lion
-------------------------------+-------------------------
  Reporter:  RobK88            |      Owner:  michaelld
      Type:  defect            |     Status:  assigned
  Priority:  Normal            |  Milestone:
 Component:  ports             |    Version:  2.6.4
Resolution:                    |   Keywords:  Lion Hamlib
      Port:  swig swig-python  |
-------------------------------+-------------------------

Comment (by RobK88):

 Ken -- Many thanks for all the great tips!

 I never thought my setup was atypical.  But after your explanation, it
 was.


 {{{
 $ port select --summary
 Name       Selected       Options
 ====       ========       =======
 clang      none           mp-clang-3.4 mp-clang-3.7 mp-clang-9.0 none
 cython     cython39       cython27 cython39 none
 docutils   py39-docutils  py39-docutils none
 gcc        none           llvm-gcc42 mp-gcc10 mp-gcc5 mp-llvm-gcc42 none
 llvm       none           mp-llvm-3.4 mp-llvm-3.7 mp-llvm-9.0 none
 nosetests  none           nosetests27 nosetests39 none
 pip        pip39          pip39 none
 pip2       none           none
 pip3       none           pip39 none
 pygments   py39-pygments  py38-pygments py39-pygments none
 python     python39       python25-apple python26-apple python27
 python27-apple python38 python39 none
 python2    python27       python25-apple python26-apple python27
 python27-apple none
 python3    python39       python38 python39 none
 sphinx     py39-sphinx    py39-sphinx none
 }}}


 As you suggested, I undid my changes:


 {{{
 $ port select --summary
 Name       Selected  Options
 ====       ========  =======
 clang      none      mp-clang-3.4 mp-clang-3.7 mp-clang-9.0 none
 cython     none      cython27 cython39 none
 docutils   none      py39-docutils none
 gcc        none      llvm-gcc42 mp-gcc10 mp-gcc5 mp-llvm-gcc42 none
 llvm       none      mp-llvm-3.4 mp-llvm-3.7 mp-llvm-9.0 none
 nosetests  none      nosetests27 nosetests39 none
 pip        none      pip39 none
 pip2       none      none
 pip3       none      pip39 none
 pygments   none      py38-pygments py39-pygments none
 python     none      python25-apple python26-apple python27 python27-apple
 python38 python39 none
 python2    none      python25-apple python26-apple python27 python27-apple
 none
 python3    none      python38 python39 none
 sphinx     none      py39-sphinx none
 }}}

 And yes, after modifying the portfile to add "--with-python-bindings" to
 the configuration, the port does compile and install!
 This is a great step forward.

 But unfortunately, I need the Hamlib library compiled with python3
 bindings not just python2 bindings.

 So I uninstalled Hamlib using Macports and proceeded to compile Hamlib
 manually from source using the instructions at
 https://github.com/Hamlib/Hamlib/blob/master/bindings/README.python

 Following these instructions, one should be able to build Hamlib with BOTH
 python2 and python3 bindings.

 Here are the steps:


 {{{
 wget
 https://github.com/Hamlib/Hamlib/releases/download/4.1/hamlib-4.1.tar.gz
 tar -zxvf hamlib-4.1.tar.gz
 cd hamlib-4.1
 ./configure --with-python-binding --prefix=/usr/local
 make
 ./configure --with-python-binding PYTHON_VERSION='3.9' --prefix=/usr/local
 cd bindings
 make
 (And if all goes well) sudo make install
 }}}

 Like with Macports, I can build hamlib with python2 bindings.
 But I am unable to build Hamlib with python3 bindings.
 After I reconfigure for python3 bindings, cd into bindings and run make, I
 get the same error as before:


 {{{
 $ ./configure --with-python-binding PYTHON_VERSION='3.9'
 --prefix=/usr/local
 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 how to run the C preprocessor... gcc -E
 checking for grep that handles long lines and -e... /opt/local/bin/ggrep
 checking for egrep... /opt/local/bin/ggrep -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 a BSD-compatible install... /opt/local/bin/ginstall -c
 checking whether build environment is sane... yes
 checking for a thread-safe mkdir -p... /opt/local/bin/gmkdir -p
 checking for gawk... gawk
 checking whether make sets $(MAKE)... yes
 checking whether make supports the include directive... yes (GNU style)
 checking whether make supports nested variables... yes
 checking dependency style of gcc... gcc3
 checking whether make supports nested variables... (cached) yes
 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 for g++... g++
 checking whether we are using the GNU C++ compiler... yes
 checking whether g++ accepts -g... yes
 checking dependency style of g++... gcc3
 checking how to run the C preprocessor... gcc -E
 checking for gawk... (cached) gawk
 checking whether ln -s works... yes
 checking for g++... yes
 checking for ar... ar
 checking the archiver (ar) interface... ar
 checking for inline... inline
 checking AM_CFLAGS for maximum warnings... -Wall
 checking AM_CXXFLAGS for maximum warnings... -Wall
 checking errno.h usability... yes
 checking errno.h presence... yes
 checking for errno.h... yes
 checking fcntl.h usability... yes
 checking fcntl.h presence... yes
 checking for fcntl.h... yes
 checking getopt.h usability... yes
 checking getopt.h presence... yes
 checking for getopt.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 malloc.h usability... no
 checking malloc.h presence... no
 checking for malloc.h... no
 checking netdb.h usability... yes
 checking netdb.h presence... yes
 checking for netdb.h... yes
 checking sgtty.h usability... yes
 checking sgtty.h presence... yes
 checking for sgtty.h... yes
 checking stddef.h usability... yes
 checking stddef.h presence... yes
 checking for stddef.h... yes
 checking termio.h usability... no
 checking termio.h presence... no
 checking for termio.h... no
 checking termios.h usability... yes
 checking termios.h presence... yes
 checking for termios.h... yes
 checking values.h usability... no
 checking values.h presence... no
 checking for values.h... no
 checking arpa/inet.h usability... yes
 checking arpa/inet.h presence... yes
 checking for arpa/inet.h... yes
 checking dev/ppbus/ppbconf.hdev/ppbus/ppi.h usability... no
 checking dev/ppbus/ppbconf.hdev/ppbus/ppi.h presence... no
 checking for dev/ppbus/ppbconf.hdev/ppbus/ppi.h... no
 checking linux/hidraw.h usability... no
 checking linux/hidraw.h presence... no
 checking for linux/hidraw.h... no
 checking linux/ioctl.h usability... no
 checking linux/ioctl.h presence... no
 checking for linux/ioctl.h... no
 checking linux/parport.h usability... no
 checking linux/parport.h presence... no
 checking for linux/parport.h... no
 checking linux/ppdev.h usability... no
 checking linux/ppdev.h presence... no
 checking for linux/ppdev.h... no
 checking netinet/in.h usability... yes
 checking netinet/in.h presence... yes
 checking for netinet/in.h... yes
 checking sys/ioccom.h usability... yes
 checking sys/ioccom.h presence... yes
 checking for sys/ioccom.h... yes
 checking sys/ioctl.h usability... yes
 checking sys/ioctl.h presence... yes
 checking for sys/ioctl.h... yes
 checking sys/param.h usability... yes
 checking sys/param.h presence... yes
 checking for sys/param.h... yes
 checking sys/socket.h usability... yes
 checking sys/socket.h presence... yes
 checking for sys/socket.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 sys/select.h usability... yes
 checking sys/select.h presence... yes
 checking for sys/select.h... yes
 checking glob.h usability... yes
 checking glob.h presence... yes
 checking for glob.h... yes
 checking build system type... x86_64-apple-darwin11.4.2
 checking host system type... x86_64-apple-darwin11.4.2
 checking ws2tcpip.h usability... no
 checking ws2tcpip.h presence... no
 checking for ws2tcpip.h... no
 checking wspiapi.h usability... no
 checking wspiapi.h presence... no
 checking for wspiapi.h... no
 checking whether time.h and sys/time.h may both be included... yes
 checking for library containing nanosleep... none required
 checking pthread.h usability... yes
 checking pthread.h presence... yes
 checking for pthread.h... yes
 checking for sys/types.h... (cached) yes
 checking windows.h usability... no
 checking windows.h presence... no
 checking for windows.h... no
 checking for winioctl.h... no
 checking for winbase.h... no
 checking for getopt... yes
 checking for getopt_long... yes
 checking for usleep... yes
 checking for sleep... yes
 checking for nanosleep... yes
 checking for gettimeofday... yes
 checking for struct timezone... yes
 checking for ssize_t... yes
 checking for getopt... (cached) yes
 checking for getopt_long... (cached) yes
 checking for usleep... (cached) yes
 checking for gettimeofday... (cached) yes
 checking for Sleep... no
 checking whether pthreads work with -pthread... yes
 checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
 checking if more special flags are required for pthreads... -D_THREAD_SAFE
 checking for PTHREAD_PRIO_INHERIT... yes
 checking POSIX termios... yes
 checking for size_t... yes
 checking whether time.h and sys/time.h may both be included... (cached)
 yes
 checking for siginfo_t... yes
 checking for sig_atomic_t... yes
 checking for sin... yes
 checking for connect... yes
 checking for gethostbyname... yes
 checking for gethostbyname... (cached) yes
 checking for struct addrinfo... yes
 checking whether gai_strerror is declared... yes
 checking for getaddrinfo... (cached) yes
 checking for cfmakeraw... yes
 checking for floor... yes
 checking for getpagesize... yes
 checking for getpagesize... (cached) yes
 checking for gettimeofday... (cached) yes
 checking for inet_ntoa... yes
 checking for ioctl... yes
 checking for memchr... yes
 checking for memmove... yes
 checking for memset... yes
 checking for pow... yes
 checking for rint... yes
 checking for select... yes
 checking for setitimer... yes
 checking for setlocale... yes
 checking for sigaction... yes
 checking for signal... yes
 checking for snprintf... yes
 checking for socket... yes
 checking for sqrt... yes
 checking for strchr... yes
 checking for strdup... yes
 checking for strerror... yes
 checking for strncasecmp... yes
 checking for strrchr... yes
 checking for strstr... yes
 checking for strtol... yes
 checking for glob... yes
 checking for socketpair... yes
 checking for working alloca.h... yes
 checking for alloca... yes
 checking how to print strings... printf
 checking for a sed that does not truncate output... /opt/local/bin/gsed
 checking for fgrep... /opt/local/bin/ggrep -F
 checking for ld used by gcc... /usr/llvm-gcc-4.2/libexec/gcc/i686-apple-
 darwin11/4.2.1/ld
 checking if the linker (/usr/llvm-gcc-4.2/libexec/gcc/i686-apple-
 darwin11/4.2.1/ld) is GNU ld... no
 checking for BSD- or MS-compatible name lister (nm)... /opt/local/bin/nm
 checking the name lister (/opt/local/bin/nm) interface... BSD nm
 checking the maximum length of command line arguments... 196608
 checking how to convert x86_64-apple-darwin11.4.2 file names to x86_64
 -apple-darwin11.4.2 format... func_convert_file_noop
 checking how to convert x86_64-apple-darwin11.4.2 file names to toolchain
 format... func_convert_file_noop
 checking for /usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld
 option to reload object files... -r
 checking for objdump... no
 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 archiver @FILE support... no
 checking for strip... strip
 checking for ranlib... ranlib
 checking command to parse /opt/local/bin/nm 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... no
 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 (/usr/llvm-gcc-4.2/libexec/gcc/i686-apple-
 darwin11/4.2.1/ld) supports shared libraries... yes
 checking dynamic linker characteristics... darwin11.4.2 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 how to run the C++ preprocessor... g++ -E
 checking for ld used by g++... /usr/llvm-gcc-4.2/libexec/gcc/i686-apple-
 darwin11/4.2.1/ld
 checking if the linker (/usr/llvm-gcc-4.2/libexec/gcc/i686-apple-
 darwin11/4.2.1/ld) is GNU ld... no
 checking whether the g++ linker (/usr/llvm-gcc-4.2/libexec/gcc/i686-apple-
 darwin11/4.2.1/ld) supports shared libraries... yes
 checking for g++ option to produce PIC... -fno-common -DPIC
 checking if g++ PIC flag -fno-common -DPIC works... yes
 checking if g++ static flag -static works... no
 checking if g++ supports -c -o file.o... yes
 checking if g++ supports -c -o file.o... (cached) yes
 checking whether the g++ linker (/usr/llvm-gcc-4.2/libexec/gcc/i686-apple-
 darwin11/4.2.1/ld) supports shared libraries... yes
 checking dynamic linker characteristics... darwin11.4.2 dyld
 checking how to hardcode library paths into programs... immediate
 checking whether C99 struct/array initializers are supported... yes
 checking whether to build USB dependent backends... yes
 checking for libusb_init in -lusb-1.0... no
 configure: WARNING: libusb_init was not found in libusb-1.0--USB backends
 will be disabled
 checking libusb.h usability... no
 checking libusb.h presence... no
 checking for libusb.h... no
 checking libusb-1.0/libusb.h usability... no
 checking libusb-1.0/libusb.h presence... no
 checking for libusb-1.0/libusb.h... no
 checking whether to use readline in rigctl/rotctl... yes
 checking for a readline compatible library... -lreadline
 checking readline.h usability... no
 checking readline.h presence... no
 checking for readline.h... no
 checking readline/readline.h usability... yes
 checking readline/readline.h presence... yes
 checking for readline/readline.h... yes
 checking whether readline supports history... yes
 checking history.h usability... no
 checking history.h presence... no
 checking for history.h... no
 checking readline/history.h usability... yes
 checking readline/history.h presence... yes
 checking for readline/history.h... yes
 checking whether to use INDI in rigctl/rotctl... checking for nova
 library... checking libnova/libnova.h usability... no
 checking libnova/libnova.h presence... no
 checking for libnova/libnova.h... no
 no
 configure: WARNING: libnova support not found, required by INDI.
 checking whether to build HTML rig feature matrix... check
 checking gd.h usability... no
 checking gd.h presence... no
 checking for gd.h... no
 checking whether to build rigmem XML support... no
 checking whether to build USRP backend... no
 checking whether to build C++ binding... yes
 checking whether to build perl binding... no
 checking whether to build python binding... yes
 checking for python3.9... /opt/local/bin/python3.9
 checking for a version of Python >= '2.1.0'... yes
 checking for the distutils Python package... yes
 checking for Python include path...
 -I/opt/local/Library/Frameworks/Python.framework/Versions/3.9/include/python3.9
 checking for Python library path...
 -L/opt/local/Library/Frameworks/Python.framework/Versions/3.9/lib
 -lpython3.9
 checking for Python site-packages path...
 /opt/local/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9
 /site-packages
 checking python extra libraries...  -ldl   -framework CoreFoundation
 checking python extra linking flags...
 -L/opt/local/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/config-3.9-darwin
 -lpython3.9 -ldl -framework CoreFoundation
 checking consistency of all components of python development
 environment... yes
 checking whether /opt/local/bin/python3.9 version is >= 2.1... yes
 checking for /opt/local/bin/python3.9 version... 3.9
 checking for /opt/local/bin/python3.9 platform... darwin
 checking for /opt/local/bin/python3.9 script directory...
 ${prefix}/lib/python3.9/site-packages
 checking for /opt/local/bin/python3.9 extension module directory...
 ${exec_prefix}/lib/python3.9/site-packages
 checking Whether to build Tcl bindings... no
 checking whether to build lua binding... no
 checking for swig... /opt/local/bin/swig
 checking SWIG version... 4.0.2
 checking for SWIG library... /opt/local/share/swig/4.0.2
 checking whether to build bindings... yes
 checking whether to build winradio backend... yes
 checking for dlopen in -ldl... yes
 checking for dlfcn.h... (cached) yes
 Build_OS is darwin11.4.2
 checking that generated files are newer than configure... done
 configure: creating ./config.status
 config.status: creating Makefile
 config.status: creating macros/Makefile
 config.status: creating include/Makefile
 config.status: creating lib/Makefile
 config.status: creating src/Makefile
 config.status: creating c++/Makefile
 config.status: creating bindings/Makefile
 config.status: creating doc/Makefile
 config.status: creating doc/hamlib.cfg
 config.status: creating rotators/amsat/Makefile
 config.status: creating rotators/ars/Makefile
 config.status: creating rotators/celestron/Makefile
 config.status: creating rotators/cnctrk/Makefile
 config.status: creating rotators/easycomm/Makefile
 config.status: creating rotators/ether6/Makefile
 config.status: creating rotators/fodtrack/Makefile
 config.status: creating rotators/gs232a/Makefile
 config.status: creating rotators/heathkit/Makefile
 config.status: creating rotators/ioptron/Makefile
 config.status: creating rotators/m2/Makefile
 config.status: creating rotators/meade/Makefile
 config.status: creating rotators/prosistel/Makefile
 config.status: creating rotators/rotorez/Makefile
 config.status: creating rotators/sartek/Makefile
 config.status: creating rotators/spid/Makefile
 config.status: creating rotators/ts7400/Makefile
 config.status: creating rotators/indi/Makefile
 config.status: creating rotators/satel/Makefile
 config.status: creating rigs/adat/Makefile
 config.status: creating rigs/alinco/Makefile
 config.status: creating rigs/aor/Makefile
 config.status: creating rigs/barrett/Makefile
 config.status: creating rigs/dorji/Makefile
 config.status: creating rigs/drake/Makefile
 config.status: creating rigs/dummy/Makefile
 config.status: creating rigs/elad/Makefile
 config.status: creating rigs/flexradio/Makefile
 config.status: creating rigs/icmarine/Makefile
 config.status: creating rigs/icom/Makefile
 config.status: creating rigs/jrc/Makefile
 config.status: creating rigs/kachina/Makefile
 config.status: creating rigs/kenwood/Makefile
 config.status: creating rigs/kit/Makefile
 config.status: creating rigs/lowe/Makefile
 config.status: creating rigs/pcr/Makefile
 config.status: creating rigs/prm80/Makefile
 config.status: creating rigs/racal/Makefile
 config.status: creating rigs/rft/Makefile
 config.status: creating rigs/rs/Makefile
 config.status: creating rigs/skanti/Makefile
 config.status: creating rigs/tapr/Makefile
 config.status: creating rigs/tentec/Makefile
 config.status: creating rigs/tuner/Makefile
 config.status: creating rigs/uniden/Makefile
 config.status: creating rigs/winradio/Makefile
 config.status: creating rigs/wj/Makefile
 config.status: creating rigs/yaesu/Makefile
 config.status: creating tests/Makefile
 config.status: creating scripts/Makefile
 config.status: creating android/Makefile
 config.status: creating amplifiers/elecraft/Makefile
 config.status: creating hamlib.pc
 config.status: creating include/config.h
 config.status: executing depfiles commands
 config.status: executing libtool commands
 ----------------------------------------------------------------------

  Hamlib Version 4.1 configuration:

  Prefix         /usr/local
  Preprocessor   gcc -E
  C Compiler     gcc -g -O2
  C++ Compiler   g++ -g -O2

  Package features:
     With C++ binding                yes
     With Perl binding               no
     With Python binding             yes
     With TCL binding                no
     With Lua binding                no
     With rigmem XML support         no
     With Readline support           yes
     With INDI support               no

     Enable HTML rig feature matrix  no
     Enable WinRadio                 yes
     Enable USRP                     no
     Enable USB backends             yes
     Enable shared libs              yes
     Enable static libs              yes

 -----------------------------------------------------------------------
 Grinchs-Mac-Pro:hamlib-4.1 grinch$ cd bindings/
 Grinchs-Mac-Pro:bindings grinch$ make
 make  all-am
   CC       hamlibpy_wrap.lo
   CCLD     _Hamlib.la
 Undefined symbols for architecture x86_64:
   "_PyArg_UnpackTuple", referenced from:
       _SwigPyObject_own in hamlibpy_wrap.o
       __wrap_rig_debug in hamlibpy_wrap.o
   "_PyBool_FromLong", referenced from:
       _SwigPyObject_richcompare in hamlibpy_wrap.o
       _SwigPyObject_own in hamlibpy_wrap.o
   "_PyBytes_AsStringAndSize", referenced from:
       _SWIG_AsCharPtrAndSize in hamlibpy_wrap.o
   "_PyCFunction_Type", referenced from:
       _SWIG_PyInstanceMethod_New in hamlibpy_wrap.o
       _SWIG_Python_ConvertFunctionPtr in hamlibpy_wrap.o
   "_PyCMethod_New", referenced from:
       _SWIG_PyInstanceMethod_New in hamlibpy_wrap.o
   "_PyCapsule_GetPointer", referenced from:
       _SWIG_Python_DestroyModule in hamlibpy_wrap.o
       _SWIG_Python_TypeQuery in hamlibpy_wrap.o
   "_PyCapsule_Import", referenced from:
       _SWIG_Python_TypeQuery in hamlibpy_wrap.o
       _PyInit__Hamlib in hamlibpy_wrap.o
   "_PyCapsule_New", referenced from:
       _SWIG_Python_TypeQuery in hamlibpy_wrap.o
       _PyInit__Hamlib in hamlibpy_wrap.o
   "_PyDict_GetItem", referenced from:
       _SWIG_Python_TypeQuery in hamlibpy_wrap.o
   "_PyDict_New", referenced from:
       _SWIG_Python_TypeQuery in hamlibpy_wrap.o
       _SWIG_Python_NewPointerObj in hamlibpy_wrap.o
       _PyInit__Hamlib in hamlibpy_wrap.o
   "_PyDict_SetItem", referenced from:
       _SWIG_Python_TypeQuery in hamlibpy_wrap.o
   "_PyDict_SetItemString", referenced from:
       _PyInit__Hamlib in hamlibpy_wrap.o
   "_PyErr_Clear", referenced from:
       _SwigPyClientData_New in hamlibpy_wrap.o
       _SWIG_AsVal_double in hamlibpy_wrap.o
       __wrap_dmmm2dec in hamlibpy_wrap.o
       __wrap_dms2dec in hamlibpy_wrap.o
       __wrap_rot_check_backend in hamlibpy_wrap.o
       __wrap_rot_unregister in hamlibpy_wrap.o
       __wrap_hl_usleep in hamlibpy_wrap.o
       ...
   "_PyErr_Fetch", referenced from:
       _SwigPyObject_dealloc in hamlibpy_wrap.o
       _SWIG_Python_RaiseOrModifyTypeError in hamlibpy_wrap.o
   "_PyErr_Format", referenced from:
       _SWIG_Python_UnpackTuple in hamlibpy_wrap.o
       _swig_varlink_setattr in hamlibpy_wrap.o
       _swig_varlink_getattr in hamlibpy_wrap.o
   "_PyErr_GivenExceptionMatches", referenced from:
       _SWIG_Python_RaiseOrModifyTypeError in hamlibpy_wrap.o
   "_PyErr_Occurred", referenced from:
       _swig_varlink_setattr in hamlibpy_wrap.o
       _swig_varlink_getattr in hamlibpy_wrap.o
       _SwigPyClientData_New in hamlibpy_wrap.o
       _SWIG_AsVal_double in hamlibpy_wrap.o
       __wrap_dmmm2dec in hamlibpy_wrap.o
       __wrap_dms2dec in hamlibpy_wrap.o
       __wrap_rot_check_backend in hamlibpy_wrap.o
       ...
   "_PyErr_Restore", referenced from:
       _SwigPyObject_dealloc in hamlibpy_wrap.o
       _SWIG_Python_RaiseOrModifyTypeError in hamlibpy_wrap.o
   "_PyErr_SetString", referenced from:
       _Swig_var_hamlib_copyright_set in hamlibpy_wrap.o
       _Swig_var_hamlib_version_set in hamlibpy_wrap.o
       _SWIG_Python_UnpackTuple in hamlibpy_wrap.o
       __wrap_dmmm2dec in hamlibpy_wrap.o
       __wrap_dms2dec in hamlibpy_wrap.o
       __wrap_azimuth_long_path in hamlibpy_wrap.o
       __wrap_distance_long_path in hamlibpy_wrap.o
       ...
   "_PyErr_WriteUnraisable", referenced from:
       _SwigPyObject_dealloc in hamlibpy_wrap.o
   "_PyExc_AttributeError", referenced from:
       _Swig_var_hamlib_copyright_set in hamlibpy_wrap.o
       _Swig_var_hamlib_version_set in hamlibpy_wrap.o
       _swig_varlink_setattr in hamlibpy_wrap.o
       _swig_varlink_getattr in hamlibpy_wrap.o
       __wrap_dmmm2dec in hamlibpy_wrap.o
       __wrap_dms2dec in hamlibpy_wrap.o
       __wrap_azimuth_long_path in hamlibpy_wrap.o
       ...
   "_PyExc_IOError", referenced from:
       __wrap_dmmm2dec in hamlibpy_wrap.o
       __wrap_dms2dec in hamlibpy_wrap.o
       __wrap_azimuth_long_path in hamlibpy_wrap.o
       __wrap_distance_long_path in hamlibpy_wrap.o
       __wrap_Amp_set_powerstat in hamlibpy_wrap.o
       __wrap_Amp_set_freq in hamlibpy_wrap.o
       __wrap_Amp_reset in hamlibpy_wrap.o
       ...
   "_PyExc_IndexError", referenced from:
       __wrap_dmmm2dec in hamlibpy_wrap.o
       __wrap_dms2dec in hamlibpy_wrap.o
       __wrap_azimuth_long_path in hamlibpy_wrap.o
       __wrap_distance_long_path in hamlibpy_wrap.o
       __wrap_Amp_set_powerstat in hamlibpy_wrap.o
       __wrap_Amp_set_freq in hamlibpy_wrap.o
       __wrap_Amp_reset in hamlibpy_wrap.o
       ...
   "_PyExc_MemoryError", referenced from:
       __wrap_dmmm2dec in hamlibpy_wrap.o
       __wrap_dms2dec in hamlibpy_wrap.o
       __wrap_azimuth_long_path in hamlibpy_wrap.o
       __wrap_distance_long_path in hamlibpy_wrap.o
       __wrap_Amp_set_powerstat in hamlibpy_wrap.o
       __wrap_Amp_set_freq in hamlibpy_wrap.o
       __wrap_Amp_reset in hamlibpy_wrap.o
       ...
   "_PyExc_OverflowError", referenced from:
       __wrap_dmmm2dec in hamlibpy_wrap.o
       __wrap_dms2dec in hamlibpy_wrap.o
       __wrap_azimuth_long_path in hamlibpy_wrap.o
       __wrap_distance_long_path in hamlibpy_wrap.o
       __wrap_rot_check_backend in hamlibpy_wrap.o
       __wrap_rot_unregister in hamlibpy_wrap.o
       __wrap_hl_usleep in hamlibpy_wrap.o
       ...
   "_PyExc_RuntimeError", referenced from:
       __wrap_dmmm2dec in hamlibpy_wrap.o
       __wrap_dms2dec in hamlibpy_wrap.o
       __wrap_azimuth_long_path in hamlibpy_wrap.o
       __wrap_distance_long_path in hamlibpy_wrap.o
       __wrap_Amp_set_powerstat in hamlibpy_wrap.o
       __wrap_Amp_set_freq in hamlibpy_wrap.o
       __wrap_Amp_reset in hamlibpy_wrap.o
       ...
   "_PyExc_SyntaxError", referenced from:
       __wrap_dmmm2dec in hamlibpy_wrap.o
       __wrap_dms2dec in hamlibpy_wrap.o
       __wrap_azimuth_long_path in hamlibpy_wrap.o
       __wrap_distance_long_path in hamlibpy_wrap.o
       __wrap_Amp_set_powerstat in hamlibpy_wrap.o
       __wrap_Amp_set_freq in hamlibpy_wrap.o
       __wrap_Amp_reset in hamlibpy_wrap.o
       ...
   "_PyExc_SystemError", referenced from:
       _SWIG_Python_UnpackTuple in hamlibpy_wrap.o
       __wrap_dmmm2dec in hamlibpy_wrap.o
       __wrap_dms2dec in hamlibpy_wrap.o
       __wrap_azimuth_long_path in hamlibpy_wrap.o
       __wrap_distance_long_path in hamlibpy_wrap.o
       __wrap_Amp_set_powerstat in hamlibpy_wrap.o
       __wrap_Amp_set_freq in hamlibpy_wrap.o
       ...
   "_PyExc_TypeError", referenced from:
       _SWIG_Python_UnpackTuple in hamlibpy_wrap.o
       __wrap_dmmm2dec in hamlibpy_wrap.o
       __wrap_dms2dec in hamlibpy_wrap.o
       __wrap_azimuth_long_path in hamlibpy_wrap.o
       __wrap_distance_long_path in hamlibpy_wrap.o
       __wrap_rot_check_backend in hamlibpy_wrap.o
       __wrap_rot_unregister in hamlibpy_wrap.o
       ...
   "_PyExc_ValueError", referenced from:
       __wrap_dmmm2dec in hamlibpy_wrap.o
       __wrap_dms2dec in hamlibpy_wrap.o
       __wrap_azimuth_long_path in hamlibpy_wrap.o
       __wrap_distance_long_path in hamlibpy_wrap.o
       __wrap_Amp_set_powerstat in hamlibpy_wrap.o
       __wrap_Amp_set_freq in hamlibpy_wrap.o
       __wrap_Amp_reset in hamlibpy_wrap.o
       ...
   "_PyExc_ZeroDivisionError", referenced from:
       __wrap_dmmm2dec in hamlibpy_wrap.o
       __wrap_dms2dec in hamlibpy_wrap.o
       __wrap_azimuth_long_path in hamlibpy_wrap.o
       __wrap_distance_long_path in hamlibpy_wrap.o
       __wrap_Amp_set_powerstat in hamlibpy_wrap.o
       __wrap_Amp_set_freq in hamlibpy_wrap.o
       __wrap_Amp_reset in hamlibpy_wrap.o
       ...
   "_PyFloat_AsDouble", referenced from:
       _SWIG_AsVal_double in hamlibpy_wrap.o
   "_PyFloat_FromDouble", referenced from:
       __wrap_dmmm2dec in hamlibpy_wrap.o
       __wrap_dms2dec in hamlibpy_wrap.o
       __wrap_azimuth_long_path in hamlibpy_wrap.o
       __wrap_distance_long_path in hamlibpy_wrap.o
       __wrap_Rig_get_split_freq in hamlibpy_wrap.o
       __wrap_Rig_get_freq in hamlibpy_wrap.o
       __wrap_Rig_get_level_f__SWIG_0 in hamlibpy_wrap.o
       ...
   "_PyFloat_Type", referenced from:
       _SWIG_AsVal_double in hamlibpy_wrap.o
   "_PyImport_AddModule", referenced from:
       _PyInit__Hamlib in hamlibpy_wrap.o
   "_PyInstanceMethod_New", referenced from:
       _SWIG_PyInstanceMethod_New in hamlibpy_wrap.o
   "_PyList_Append", referenced from:
       _SWIG_Python_AppendOutput in hamlibpy_wrap.o
   "_PyList_New", referenced from:
       __wrap_rig_state_attenuator_get in hamlibpy_wrap.o
       __wrap_rig_state_preamp_get in hamlibpy_wrap.o
       __wrap_rig_caps_attenuator_get in hamlibpy_wrap.o
       __wrap_rig_caps_preamp_get in hamlibpy_wrap.o
       _SWIG_Python_AppendOutput in hamlibpy_wrap.o
   "_PyList_SetItem", referenced from:
       __wrap_rig_state_attenuator_get in hamlibpy_wrap.o
       __wrap_rig_state_preamp_get in hamlibpy_wrap.o
       __wrap_rig_caps_attenuator_get in hamlibpy_wrap.o
       __wrap_rig_caps_preamp_get in hamlibpy_wrap.o
       _SWIG_Python_AppendOutput in hamlibpy_wrap.o
   "_PyLong_AsDouble", referenced from:
       _SWIG_AsVal_double in hamlibpy_wrap.o
   "_PyLong_AsLong", referenced from:
       __wrap_dmmm2dec in hamlibpy_wrap.o
       __wrap_dms2dec in hamlibpy_wrap.o
       __wrap_rot_check_backend in hamlibpy_wrap.o
       __wrap_rot_unregister in hamlibpy_wrap.o
       __wrap_rig_need_debug in hamlibpy_wrap.o
       __wrap_rig_set_debug_time_stamp in hamlibpy_wrap.o
       __wrap_rig_set_debug in hamlibpy_wrap.o
       ...
   "_PyLong_AsUnsignedLong", referenced from:
       __wrap_hl_usleep in hamlibpy_wrap.o
       __wrap_rig_check_backend in hamlibpy_wrap.o
       __wrap_rig_unregister in hamlibpy_wrap.o
       __wrap_rig_get_caps_int in hamlibpy_wrap.o
       __wrap_toneArray___setitem__ in hamlibpy_wrap.o
       __wrap_channelArray___setitem__ in hamlibpy_wrap.o
       __wrap_Rig_get_ext_level in hamlibpy_wrap.o
       ...
   "_PyLong_AsUnsignedLongLong", referenced from:
       __wrap_rig_setting2idx in hamlibpy_wrap.o
       __wrap_Rig_get_level__SWIG_1 in hamlibpy_wrap.o
       __wrap_Rig_get_func in hamlibpy_wrap.o
       __wrap_Rig_passband_wide in hamlibpy_wrap.o
       __wrap_Rig_passband_narrow in hamlibpy_wrap.o
       __wrap_Rig_passband_normal in hamlibpy_wrap.o
       __wrap_Rig_has_set_func in hamlibpy_wrap.o
       ...
   "_PyLong_FromLong", referenced from:
       __wrap_rot_load_all_backends in hamlibpy_wrap.o
       __wrap_rot_check_backend in hamlibpy_wrap.o
       __wrap_rot_unregister in hamlibpy_wrap.o
       __wrap_hl_usleep in hamlibpy_wrap.o
       __wrap_rig_load_all_backends in hamlibpy_wrap.o
       __wrap_rig_check_backend in hamlibpy_wrap.o
       __wrap_rig_unregister in hamlibpy_wrap.o
       ...
   "_PyLong_FromSize_t", referenced from:
       __wrap_toneArray___getitem__ in hamlibpy_wrap.o
       __wrap_Rig_get_dcs_sql in hamlibpy_wrap.o
       __wrap_Rig_get_ctcss_sql in hamlibpy_wrap.o
       __wrap_Rig_get_dcs_code in hamlibpy_wrap.o
       __wrap_Rig_get_ctcss_tone in hamlibpy_wrap.o
       __wrap_Rig_get_vfo in hamlibpy_wrap.o
       __wrap_rig_parse_vfo in hamlibpy_wrap.o
       ...
   "_PyLong_FromUnsignedLongLong", referenced from:
       _PyInit__Hamlib in hamlibpy_wrap.o
       __wrap_freq_range_t_modes_get in hamlibpy_wrap.o
       __wrap_tuning_step_list_modes_get in hamlibpy_wrap.o
       __wrap_filter_list_modes_get in hamlibpy_wrap.o
       __wrap_channel_mode_get in hamlibpy_wrap.o
       __wrap_channel_tx_mode_get in hamlibpy_wrap.o
       __wrap_channel_funcs_get in hamlibpy_wrap.o
       ...
   "_PyLong_FromVoidPtr", referenced from:
       _SwigPyObject_long in hamlibpy_wrap.o
   "_PyModule_AddObject", referenced from:
       _PyInit__Hamlib in hamlibpy_wrap.o
   "_PyModule_Create2", referenced from:
       _PyInit__Hamlib in hamlibpy_wrap.o
   "_PyModule_GetDict", referenced from:
       _PyInit__Hamlib in hamlibpy_wrap.o
   "_PyObject_Call", referenced from:
       _SWIG_Python_NewPointerObj in hamlibpy_wrap.o
   "_PyObject_CallFunctionObjArgs", referenced from:
       _SwigPyObject_dealloc in hamlibpy_wrap.o
       _SWIG_Python_ConvertPtrAndOwn in hamlibpy_wrap.o
   "_PyObject_Free", referenced from:
       _SwigPyPacked_dealloc in hamlibpy_wrap.o
       _SwigPyObject_dealloc in hamlibpy_wrap.o
       _PyInit__Hamlib in hamlibpy_wrap.o
   "_PyObject_GenericGetAttr", referenced from:
       _tmp.11546 in hamlibpy_wrap.o
       _tmp.11449 in hamlibpy_wrap.o
   "_PyObject_GetAttr", referenced from:
       _SWIG_Python_GetSwigThis in hamlibpy_wrap.o
   "_PyObject_GetAttrString", referenced from:
       _SwigPyClientData_New in hamlibpy_wrap.o
   "_PyObject_IsInstance", referenced from:
       _SwigPyClientData_New in hamlibpy_wrap.o
   "_PyObject_IsTrue", referenced from:
       _SwigPyObject_own in hamlibpy_wrap.o
   "_PyObject_SetAttr", referenced from:
       _SWIG_Python_InitShadowInstance in hamlibpy_wrap.o
       _SWIG_Python_NewPointerObj in hamlibpy_wrap.o
   "_PyTuple_GetSlice", referenced from:
       __wrap_rig_debug in hamlibpy_wrap.o
   "_PyTuple_New", referenced from:
       _SwigPyClientData_New in hamlibpy_wrap.o
       _SWIG_Python_NewPointerObj in hamlibpy_wrap.o
   "_PyTuple_SetItem", referenced from:
       _SwigPyClientData_New in hamlibpy_wrap.o
   "_PyTuple_Size", referenced from:
       __wrap_rig_debug in hamlibpy_wrap.o
   "_PyType_IsSubtype", referenced from:
       _SWIG_AsVal_double in hamlibpy_wrap.o
       _SWIG_PyInstanceMethod_New in hamlibpy_wrap.o
       _SWIG_Python_ConvertFunctionPtr in hamlibpy_wrap.o
   "_PyType_Ready", referenced from:
       _SwigPyPacked_dealloc in hamlibpy_wrap.o
       _SwigPyObject_dealloc in hamlibpy_wrap.o
       _SwigPyObject_Check in hamlibpy_wrap.o
       _SWIG_Python_GetSwigThis in hamlibpy_wrap.o
       _SWIG_Python_NewPointerObj in hamlibpy_wrap.o
       _PyInit__Hamlib in hamlibpy_wrap.o
   "_PyType_Type", referenced from:
       _SwigPyClientData_New in hamlibpy_wrap.o
   "_PyUnicode_AsUTF8String", referenced from:
       _SWIG_AsCharPtrAndSize in hamlibpy_wrap.o
   "_PyUnicode_Concat", referenced from:
       _SwigPyObject_repr in hamlibpy_wrap.o
       _swig_varlink_str in hamlibpy_wrap.o
   "_PyUnicode_DecodeUTF8", referenced from:
       __wrap_hamlib_port_t_pathname_get in hamlibpy_wrap.o
       __wrap_channel_channel_desc_get in hamlibpy_wrap.o
       __wrap_Amp_get_info in hamlibpy_wrap.o
       __wrap_Amp_get_conf in hamlibpy_wrap.o
       __wrap_Rot_get_info in hamlibpy_wrap.o
       __wrap_Rot_get_conf in hamlibpy_wrap.o
       __wrap_Rig_get_info in hamlibpy_wrap.o
       ...
   "_PyUnicode_FromFormat", referenced from:
       _SwigPyPacked_repr in hamlibpy_wrap.o
       _SwigPyPacked_str in hamlibpy_wrap.o
       _SwigPyObject_repr in hamlibpy_wrap.o
       _SWIG_Python_RaiseOrModifyTypeError in hamlibpy_wrap.o
   "_PyUnicode_FromString", referenced from:
       _SwigPyPacked_str in hamlibpy_wrap.o
       _swig_varlink_str in hamlibpy_wrap.o
       _SWIG_Python_GetSwigThis in hamlibpy_wrap.o
       _SWIG_Python_InitShadowInstance in hamlibpy_wrap.o
       _SWIG_Python_DestroyModule in hamlibpy_wrap.o
       _SWIG_Python_TypeQuery in hamlibpy_wrap.o
       _SWIG_Python_NewPointerObj in hamlibpy_wrap.o
       ...
   "_PyUnicode_InternFromString", referenced from:
       _swig_varlink_repr in hamlibpy_wrap.o
       _swig_varlink_str in hamlibpy_wrap.o
   "_Py_DecRef", referenced from:
       _SwigPyObject_repr in hamlibpy_wrap.o
       _swig_varlink_str in hamlibpy_wrap.o
   "__PyObject_New", referenced from:
       _SwigPyObject_dealloc in hamlibpy_wrap.o
       _SWIG_Python_NewPointerObj in hamlibpy_wrap.o
       _PyInit__Hamlib in hamlibpy_wrap.o
   "__Py_Dealloc", referenced from:
       _SwigPyObject_dealloc in hamlibpy_wrap.o
       _SWIG_Python_GetSwigThis in hamlibpy_wrap.o
       _SWIG_Python_ConvertPtrAndOwn in hamlibpy_wrap.o
       _SWIG_Python_RaiseOrModifyTypeError in hamlibpy_wrap.o
       _SWIG_Python_DestroyModule in hamlibpy_wrap.o
       _SWIG_Python_TypeQuery in hamlibpy_wrap.o
       _SWIG_AsCharPtrAndSize in hamlibpy_wrap.o
       ...
   "__Py_NoneStruct", referenced from:
       _SwigPyObject_next in hamlibpy_wrap.o
       _SwigPyObject_disown in hamlibpy_wrap.o
       _SwigPyObject_acquire in hamlibpy_wrap.o
       _Amp_swigregister in hamlibpy_wrap.o
       _Rot_swigregister in hamlibpy_wrap.o
       _toneArray_swigregister in hamlibpy_wrap.o
       _channelArray_swigregister in hamlibpy_wrap.o
       ...
   "__Py_NotImplementedStruct", referenced from:
       _SwigPyObject_richcompare in hamlibpy_wrap.o
 ld: symbol(s) not found for architecture x86_64
 collect2: ld returned 1 exit status
 make[1]: *** [_Hamlib.la] Error 1
 make: *** [all] Error 2
 }}}

 Like before, the necessary symbols (or headers file?) for swig cannot be
 found.

 Ken -- If you have time, please let me know if you can manually compile
 hamlib with python2 and python3 bindings on your Mac running Lion using
 the instructions at
 https://github.com/Hamlib/Hamlib/blob/master/bindings/README.python.  I
 suspect you will have the same problem.

 P.S.  Do not attempt to run the tests -- pytest.py or pytest3.py.  They
 only appear to work once hamlib is installed using "sudo make install".
 The instructions on the website appear to be wrong with respect to the
 tests.

 P.S.  After I made my Mac more typical (after removing my changes using
 the "port select" command), I uninstalled swig, swig-python and recompiled
 and reinstalled them using Macports.  But that did not fix the problem.
 It was worth a try.

-- 
Ticket URL: <https://trac.macports.org/ticket/62580#comment:10>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list