[MacPorts] #49074: qt5-mac @5.4.2: error: declaration of anonymous struct must be a definition

MacPorts noreply at macports.org
Fri Oct 16 07:32:42 PDT 2015


#49074: qt5-mac @5.4.2: error: declaration of anonymous struct must be a definition
-----------------------+------------------------
  Reporter:  fpvvd1@…  |      Owner:  mcalhoun@…
      Type:  defect    |     Status:  new
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:  2.3.4
Resolution:            |   Keywords:  elcapitan
      Port:  qt5-mac   |
-----------------------+------------------------

Comment (by framic5@…):

 I ran into the same problem as mentioned before. This is due to a library
 which is not found by clang++:
 {{{
 :info:build [4153/10366] SOLINK(module) ffmpegsumo.so, POSTBUILDS
 :info:build FAILED: if [ ! -e ffmpegsumo.so -o ! -e ffmpegsumo.so.TOC ] ||
 otool -l ffmpegsumo.so | grep -q LC_REEXPORT_DYLIB ; then /usr/bin/clang++
 -bundle -Wl,-search_paths_first -stdlib=libc++ -Wl,-dead_strip -mmacosx-
 version-min=10.7 -isysroot
 /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk
 -Lgen/third_party/ffmpeg -arch x86_64 -L. -o ffmpegsumo.so
 @ffmpegsumo.so.rsp && { otool -l ffmpegsumo.so | grep LC_ID_DYLIB -A 5; nm
 -gP ffmpegsumo.so | cut -f1-2 -d' ' | grep -v U$; true; } >
 ffmpegsumo.so.TOC; else /usr/bin/clang++ -bundle -Wl,-search_paths_first
 -stdlib=libc++ -Wl,-dead_strip -mmacosx-version-min=10.7 -isysroot
 /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk
 -Lgen/third_party/ffmpeg -arch x86_64 -L. -o ffmpegsumo.so
 @ffmpegsumo.so.rsp && { otool -l ffmpegsumo.so | grep LC_ID_DYLIB -A 5; nm
 -gP ffmpegsumo.so | cut -f1-2 -d' ' | grep -v U$; true; } >
 ffmpegsumo.so.tmp && if ! cmp -s ffmpegsumo.so.tmp ffmpegsumo.so.TOC; then
 mv ffmpegsumo.so.tmp ffmpegsumo.so.TOC ; fi; fi
 :info:build clang: error: no such file or directory:
 '/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/lib/libz.dylib'
 }}}
 The first one is libz.dylib from the log above, others will follow. A
 complete list:
  * libz.dylib
  * libssl.dylib
  * libcrypto.dylib
  * libresolv.dylib
  * libbsm.dylib
  * libcups.dylib
 It seems that, beginning with Xcode 7, .tbd libraries instead of .dylib
 are used. Please refer to
 https://forums.developer.apple.com/message/8609#8609
 > For those who are curious, the .tbd files are new "text-based stub
 libraries", that provide a much more compact version of the stub libraries
 for use in the SDK, and help to significantly reduce its download size.
 In the folder
 /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/lib/
 only the .tbd version of the mentioned libraries is available, whereas the
 .dylib file can be found at /usr/lib.

 According to the link above, adding a flag for every library might be a
 solution, but that didn't work for me. I also failed to include the
 /usr/lib path or the tbd suffix to the qmake environment by altering
 make.conf for the chosen platform macx-clang.

 I could finish the build with symlinks from /usr/lib to the sysroot path
 set for clang++. But this is no proper solution to fix the Portfile, I
 guess.

-- 
Ticket URL: <https://trac.macports.org/ticket/49074#comment:11>
MacPorts <https://www.macports.org/>
Ports system for OS X


More information about the macports-tickets mailing list