Page 1 of 1

error: class 'wxCFDictionaryRef' does not have any field named 'wxCFDictionaryRefCommon'

Posted: Wed Oct 09, 2019 10:48 am
by anotherwxuser
Compiling (cross under Linux for MacOS) used to work fine until i try to switch to wxWidgets-3.1.2 which fails with the following message

Code: Select all

In file included from wxWidgets-3.1.2/include/wx/osx/core/private.h:23,
                 from wxWidgets-3.1.2/include/wx/osx/private.h:4,
                 from wxWidgets-3.1.2/src/common/filefn.cpp:55:
wxWidgets-3.1.2/include/wx/osx/core/cfdictionary.h: In constructor 'wxCFDictionaryRef::wxCFDictionaryRef(const __CFDictionary*)':
wxWidgets-3.1.2/include/wx/osx/core/cfdictionary.h:83: error: class 'wxCFDictionaryRef' does not have any field named 'wxCFDictionaryRefCommon'
wxWidgets-3.1.2/include/wx/osx/core/cfdictionary.h: In constructor 'wxCFMutableDictionaryRef::wxCFMutableDictionaryRef()':
wxWidgets-3.1.2/include/wx/osx/core/cfdictionary.h:104: error: class 'wxCFMutableDictionaryRef' does not have any field named 'wxCFDictionaryRefCommon'
wxWidgets-3.1.2/include/wx/osx/core/cfdictionary.h: In constructor 'wxCFMutableDictionaryRef::wxCFMutableDictionaryRef(__CFDictionary*)':
wxWidgets-3.1.2/include/wx/osx/core/cfdictionary.h:109: error: class 'wxCFMutableDictionaryRef' does not have any field named 'wxCFDictionaryRefCommon'
fvisibility=hidden -fvisibility-inlines-hidden wxWidgets-3.1.2/src/common/mstream.cpp

Compiler:

Code: Select all

/tmp/wxwidgets/bk-deps i686-apple-darwin10-g++ -arch x86_64 -m64 -D__DARWIN__ -D__APPLE__ -isysroot /usr/lib/apple/SDKs/MacOSX10.5.sdk -mmacosx-version-min=10.5 -c -o basedll_mstream.o  -D__WXOSX_COCOA__      -DWXBUILDING   -IwxWidgets-3.1.2/src/jpeg -IwxWidgets-3.1.2/src/png  -IwxWidgets-3.1.2/src/regex  -DwxUSE_GUI=0 -DWXMAKINGDLL_BASE -DwxUSE_BASE=1 -dynamic -fPIC -DPIC -Wall -Wundef -Wunused-parameter -Wno-ctor-dtor-privacy -Woverloaded-virtual -Wno-deprecated-declarations -D_FILE_OFFSET_BITS=64 -DwxDEBUG_LEVEL=0 -I/tmp/wxwidgets/lib/wx/include/i686-apple-darwin10-osx_cocoa-unicode-3.1 -IwxWidgets-3.1.2/include -O2 -fpermissive -fvisibility=hidden -fvisibility-inlines-hidden -I/usr/i686-apple-darwin10/include -fno-common -fvisibility=hidden -fvisibility-inlines-hidden wxWidgets-3.1.2/src/common/mstream.cpp

Configure:

Code: Select all

"wxWidgets-3.1.2/configure" --host=i686-apple-darwin10 --target=i686-apple-darwin10 --build=x86_64-linux-gnu LDFLAGS="-static-libgcc -static-libstdc++ -fpermissive -fvisibility=hidden -fvisibility-inlines-hidden -I/usr/i686-apple-darwin10/include -L/usr/lib/i686-apple-darwin10/" CXX="i686-apple-darwin10-g++ -arch x86_64 -m64 -D__DARWIN__ -D__APPLE__" CXXFLAGS="-fpermissive -fvisibility=hidden -fvisibility-inlines-hidden -I/usr/i686-apple-darwin10/include" --disable-compat28 --disable-compat30 --disable-debug --disable-debug_flag --without-subdirs --without-libtiff --disable-iff --disable-tga --disable-gif --disable-pcx --disable-pnm --disable-dynlib --disable-dynamicloader --disable-stl --with-mac --with-macosx-sdk=/usr/lib/apple/SDKs/MacOSX10.5.sdk --with-macosx-version-min=10.5 --enable-unicode --enable-webkit --enable-geometry --enable-image --enable-controls --enable-menus --enable-std_iostreams --enable-streams --enable-file --enable-ffile --enable-variant --enable-dataobj --enable-filesystem --enable-dynlib --enable-filedlg --enable-dirdlg --enable-dirpicker --enable-treectrl --enable-imaglist --enable-textctrl --enable-choice --enable-msgdlg --enable-stattext --enable-timer --enable-button --enable-commondlg --enable-stopwatch --enable-longlong --enable-config

checking build system type... x86_64-pc-linux-gnu
checking host system type... i686-apple-darwin10
checking for toolkit... osx_cocoa
checking for i686-apple-darwin10-gcc... i686-apple-darwin10-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... yes
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether i686-apple-darwin10-gcc accepts -g... yes
checking for i686-apple-darwin10-gcc option to accept ISO C89... none needed
checking whether we are using the Intel C compiler... no
checking how to run the C preprocessor... i686-apple-darwin10-gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking whether i686-apple-darwin10-gcc needs -traditional... no
checking whether we are using the GNU C++ compiler... yes
checking whether i686-apple-darwin10-g++ -arch x86_64 -m64 -D__DARWIN__ -D__APPLE__ accepts -g... yes
checking whether we are using the Intel C++ compiler... no
checking whether we are using the Sun C++ compiler... no
checking for i686-apple-darwin10-ar... i686-apple-darwin10-ar
checking for SDK directory /usr/lib/apple/SDKs/MacOSX10.5.sdk... exists
checking if C compiler (i686-apple-darwin10-gcc -isysroot /usr/lib/apple/SDKs/MacOSX10.5.sdk -mmacosx-version-min=10.5) works with SDK/version options... yes
checking if C++ compiler (i686-apple-darwin10-g++ -arch x86_64 -m64 -D__DARWIN__ -D__APPLE__ -isysroot /usr/lib/apple/SDKs/MacOSX10.5.sdk -mmacosx-version-min=10.5) works with SDK/version options... yes
checking if CoreFoundation/CFBase.h is usable... yes
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 for langinfo.h... yes
checking for wchar.h... yes
checking for sys/select.h... yes
checking for cxxabi.h... yes
checking for an ANSI C-conforming const... yes
checking for inline... inline
checking size of short... 2
checking size of void *... 8
checking size of int... 4
checking size of long... 8
checking size of size_t... 8
checking size of long long... 8
checking size of wchar_t... 4
checking for va_copy... yes
checking whether the compiler supports variadic macros... yes
checking for _FILE_OFFSET_BITS value needed for large files... 64
checking if large file support is available... yes
checking for _LARGEFILE_SOURCE value needed for large files... no
checking whether byte ordering is bigendian... no
checking for iostream... yes
checking for std::wstring in <string>... yes
checking for std::istream... yes
checking for std::ostream... yes
checking for type_traits... no
checking for tr1/type_traits... yes
checking for __sync_fetch_and_add and __sync_sub_and_fetch builtins... yes
checking for libraries directories... /usr/lib
checking for cos... yes
checking for floor... yes
checking if floating point functions link without -lm... yes
checking for strtoull... yes
checking for i686-apple-darwin10-pkg-config... no
checking for pkg-config... /usr/bin/pkg-config
configure: WARNING: using cross tools not prefixed with host triplet
checking pkg-config is at least version 0.9.0... yes
configure: WARNING: Defaulting to the builtin regex library for Unicode build.
checking for zlib.h >= 1.1.4... 
checking for zlib.h... yes
checking for deflate in -lz... yes
checking for png.h > 0.90... 
checking for png.h... no
configure: WARNING: system png library not found or too old, will use built-in instead
checking for jpeglib.h... no
configure: WARNING: system jpeg library not found, will use built-in instead
checking lzma.h usability... no
checking lzma.h presence... no
checking for lzma.h... no
checking for jbg_dec_init in -ljbig... no
checking for expat.h... yes
checking if expat.h is valid C++ header... yes
checking for XML_ParserCreate in -lexpat... yes
checking for X11/Xlib.h... yes
checking for X11/XKBlib.h... yes
checking if the linker accepts --version-script... no
checking for symbols visibility support... yes
checking for broken libstdc++ visibility... no
checking for mode_t... yes
checking for off_t... yes
checking for pid_t... yes
checking for size_t... yes
checking for ssize_t... yes
checking if size_t is unsigned int... no
checking if size_t is unsigned long... yes
checking if wchar_t is separate type... yes
checking for pw_gecos in struct passwd... yes
checking for wcslen... yes
checking for wcsftime... yes
checking for mbstate_t... yes
checking for wcsrtombs... yes
checking for snprintf... yes
checking for vsnprintf... yes
checking for vsscanf... yes
checking for vsnprintf declaration... yes
checking if vsnprintf declaration is broken... no
checking for snprintf declaration... yes
checking if snprintf supports positional arguments... configure: WARNING: Assuming Unix98 printf() is not available,
define HAVE_UNIX98_PRINTF as 1 in setup.h if it is available.
no
checking for vsscanf declaration... yes
checking if vsscanf() declaration is broken... no
checking for putws... no
checking for fputws... yes
checking for wprintf... yes
checking for vswprintf... yes
checking for vswscanf... yes
checking for _vsnwprintf... no
checking for fsync... yes
checking for round... yes
checking for iconv... yes
checking if iconv needs const... no
checking for sigaction... yes
checking for sa_handler type... int
checking for backtrace()... yes
checking for library containing backtrace... none required
checking for __cxa_demangle() in <cxxabi.h>... yes
checking for mkstemp... yes
checking for statfs... yes
checking for statfs declaration... yes
checking for fcntl... yes
checking for setenv... yes
checking for unsetenv... yes
checking for uname... yes
checking for strtok_r... yes
checking for inet_addr... yes
checking for inet_aton... yes
checking for fdopen... yes
checking for sysconf... yes
checking for getpwuid_r... yes
checking for getgrgid_r... yes
checking for the pthreads library -lpthread... yes
checking if more special flags are required for pthreads... no
checking for pthread_setconcurrency... yes
checking for pthread_cleanup_push/pop... yes
checking for sched.h... yes
checking for sched_yield... yes
checking for pthread_attr_getschedpolicy... yes
checking for pthread_attr_setschedparam... yes
checking for sched_get_priority_max... yes
checking for pthread_cancel... yes
checking for pthread_mutex_timedlock... no
configure: WARNING: wxMutex::LockTimeout() will not work
checking for pthread_attr_setstacksize... yes
checking for pthread_mutexattr_t... yes
checking for pthread_mutexattr_settype declaration... yes
checking for abi::__forced_unwind() in <cxxabi.h>... no
checking for localtime_r... yes
checking for gmtime_r... yes
checking how many arguments gethostbyname_r() takes... cannot find function declaration in netdb.h
checking for gethostbyname... yes
checking how many arguments getservbyname_r() takes... no
checking for getservbyname... yes
checking for dlopen... yes
checking for dlerror... yes
checking for dladdr... yes
checking for sys/inotify.h... no
checking for sys/event.h... yes
checking for SNDCTL_DSP_SPEED in sys/soundcard.h... no
checking xlocale.h usability... yes
checking xlocale.h presence... yes
checking for xlocale.h... yes
checking for locale_t... yes
checking for sys/epoll.h... no
configure: WARNING: sys/epoll.h not available, wxEpollDispatcher disabled
checking for gettimeofday... yes
checking whether gettimeofday takes two arguments... yes
checking for timezone variable in <time.h>... timezone
checking for localtime... yes
checking for tm_gmtoff in struct tm... yes
checking for _NL_TIME_FIRST_WEEKDAY in langinfo.h... no
checking for setpriority... yes
checking for socket... yes
checking what is the type of the third argument of getsockname... socklen_t
checking what is the type of the fifth argument of getsockopt... socklen_t
configure: WARNING: Dialup manager not supported on this platform... disabled
checking for WebKit/HIWebView.h... yes
checking for python... /usr/bin/python
checking for WebKit/HIWebView.h... (cached) yes
checking if AVKit is available... no
checking CXXWARNINGS for gcc -Woverloaded-virtual... -Woverloaded-virtual
checking for a BSD-compatible install... /usr/bin/install -c
checking for i686-apple-darwin10-ranlib... i686-apple-darwin10-ranlib
checking whether ln -s works... yes
checking whether make sets $(MAKE)... yes
checking for i686-apple-darwin10-ar... (cached) i686-apple-darwin10-ar
checking for i686-apple-darwin10-strip... i686-apple-darwin10-strip
checking for i686-apple-darwin10-nm... i686-apple-darwin10-nm
checking if make is GNU make... yes
checking for gcc 3.1 or later... yes
checking for dependency tracking method... gcc
checking whether make sets $(MAKE)... (cached) yes
configure: creating ./config.status
config.status: creating lib/wx/config/i686-apple-darwin10-osx_cocoa-unicode-3.1
config.status: creating lib/wx/config/inplace-i686-apple-darwin10-osx_cocoa-unicode-3.1
config.status: creating utils/ifacecheck/rungccxml.sh
config.status: creating Makefile
config.status: creating lib/wx/include/i686-apple-darwin10-osx_cocoa-unicode-3.1/wx/setup.h
config.status: executing wx-config commands

Configured wxWidgets 3.1.2 for `i686-apple-darwin10'

  Which GUI toolkit should wxWidgets use?                 osx_cocoa
  Should wxWidgets be compiled into single library?       no
  Should wxWidgets be linked as a shared library?         yes
  Should wxWidgets support Unicode?                       yes (using wchar_t)
  What level of wxWidgets compatibility should be enabled?
                                       wxWidgets 2.8      no
                                       wxWidgets 3.0      no
  Which libraries should wxWidgets use?
                                       STL                no
                                       jpeg               builtin
                                       png                builtin
                                       regex              builtin
                                       tiff               no
                                       lzma               no
                                       zlib               sys
                                       expat              sys
                                       libmspack          no
                                       sdl                no

Re: error: class 'wxCFDictionaryRef' does not have any field named 'wxCFDictionaryRefCommon'

Posted: Wed Oct 09, 2019 2:15 pm
by ONEEYEMAN
Hi,
I presume it is coming from compiling your own code?
Also, following is not supported anymore:

Code: Select all

-mmacosx-version-min=10.5
You should switch to 10.9 (at least) as this is the default one.
You can target 10.8, but it should be explicitly said.

Thank you.