[MacPorts] #67672: qt5 @5.15.8+qt5-qtwebengine: QtWebEngineProcess has dependencies with absolute path

MacPorts noreply at macports.org
Thu Jun 22 09:46:38 UTC 2023


#67672: qt5 @5.15.8+qt5-qtwebengine: QtWebEngineProcess has dependencies with
absolute path
----------------------------------+---------------------------------
  Reporter:  kaamui               |      Owner:  MarcusCalhoun-Lopez
      Type:  defect               |     Status:  assigned
  Priority:  Normal               |  Milestone:
 Component:  ports                |    Version:
Resolution:                       |   Keywords:
      Port:  qt5 qt5-qtwebengine  |
----------------------------------+---------------------------------

Comment (by kaamui):

 I'm not manually placing the QtWebEngineProcess inside my app, it is added
 as a dependency like any other lib (except that this one contains an
 executable ?)

 I don't have to when using the default binaries (provided by Qt), but they
 aren't supporting proprietary codecs by default so I need to use the one
 provided by MacPorts.

 Is it some kind of issue in MacPorts way to build the Qt libs ? Should
 these libs already reference each others with relative paths or is it
 intentional and wanted by you and other devs handling these Qt ports ? I'm
 just curious.

 it looks like dylibbundler is performing what I was going to do manually :
 using install_name_tool everywhere it is needed. So it might indeed help,
 but I still wonder if it's just a workaround for a real issue that is
 remaining regarding dependencies.

 Also, you mention that "if I want to deploy MacPorts libraries to a
 different location as inside an app bundle" : my understanding is that it
 is mandatory and already what is always did when building an app. For
 example :

 {{{
 otool -L OpenBoard.app/Contents/MacOS/OpenBoard
 @executable_path/../Frameworks/libavformat.58.dylib (compatibility version
 58.0.0, current version 58.76.100)
         @executable_path/../Frameworks/libavcodec.58.dylib (compatibility
 version 58.0.0, current version 58.134.100)
         @executable_path/../Frameworks/libswscale.5.dylib (compatibility
 version 5.0.0, current version 5.9.100)
         @executable_path/../Frameworks/libswresample.3.dylib
 (compatibility version 3.0.0, current version 3.9.100)
         @executable_path/../Frameworks/libavutil.56.dylib (compatibility
 version 56.0.0, current version 56.70.100)
         @executable_path/../Frameworks/libz.1.dylib (compatibility version
 1.0.0, current version 1.2.13)
 /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation
 (compatibility version 300.0.0, current version 1953.255.0)
         /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa
 (compatibility version 1.0.0, current version 23.0.0)
         /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon
 (compatibility version 2.0.0, current version 169.0.0)
 /System/Library/Frameworks/AVFoundation.framework/Versions/A/AVFoundation
 (compatibility version 1.0.0, current version 2.0.0)
 /System/Library/Frameworks/CoreMedia.framework/Versions/A/CoreMedia
 (compatibility version 1.0.0, current version 1.0.0)
         @executable_path/../Frameworks/libcrypto.3.dylib (compatibility
 version 3.0.0, current version 3.0.0)
         @executable_path/../Frameworks/libquazip5.1.dylib (compatibility
 version 1.0.0, current version 1.0.0)
         @executable_path/../Frameworks/libpoppler.126.dylib (compatibility
 version 126.0.0, current version 126.0.0)
         @executable_path/../Frameworks/QtSvg.framework/Versions/5/QtSvg
 (compatibility version 5.15.0, current version 5.15.8)
 @executable_path/../Frameworks/QtMultimediaWidgets.framework/Versions/5/QtMultimediaWidgets
 (compatibility version 5.15.0, current version 5.15.8)
 @executable_path/../Frameworks/QtWebEngineWidgets.framework/Versions/5/QtWebEngineWidgets
 (compatibility version 5.15.0, current version 5.15.12)
 @executable_path/../Frameworks/QtPrintSupport.framework/Versions/5/QtPrintSupport
 (compatibility version 5.15.0, current version 5.15.8)
 @executable_path/../Frameworks/QtWidgets.framework/Versions/5/QtWidgets
 (compatibility version 5.15.0, current version 5.15.8)
 @executable_path/../Frameworks/QtMultimedia.framework/Versions/5/QtMultimedia
 (compatibility version 5.15.0, current version 5.15.8)
 @executable_path/../Frameworks/QtWebEngineCore.framework/Versions/5/QtWebEngineCore
 (compatibility version 5.15.0, current version 5.15.12)
 @executable_path/../Frameworks/QtQuick.framework/Versions/5/QtQuick
 (compatibility version 5.15.0, current version 5.15.8)
         @executable_path/../Frameworks/QtGui.framework/Versions/5/QtGui
 (compatibility version 5.15.0, current version 5.15.8)
         /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit
 (compatibility version 45.0.0, current version 2299.30.112)
         /System/Library/Frameworks/Metal.framework/Versions/A/Metal
 (compatibility version 1.0.0, current version 306.3.4)
 @executable_path/../Frameworks/QtQmlModels.framework/Versions/5/QtQmlModels
 (compatibility version 5.15.0, current version 5.15.8)
 @executable_path/../Frameworks/QtWebChannel.framework/Versions/5/QtWebChannel
 (compatibility version 5.15.0, current version 5.15.8)
         @executable_path/../Frameworks/QtQml.framework/Versions/5/QtQml
 (compatibility version 5.15.0, current version 5.15.8)
 @executable_path/../Frameworks/QtNetwork.framework/Versions/5/QtNetwork
 (compatibility version 5.15.0, current version 5.15.8)
         @executable_path/../Frameworks/QtXml.framework/Versions/5/QtXml
 (compatibility version 5.15.0, current version 5.15.8)
 @executable_path/../Frameworks/QtPositioning.framework/Versions/5/QtPositioning
 (compatibility version 5.15.0, current version 5.15.8)
 @executable_path/../Frameworks/QtConcurrent.framework/Versions/5/QtConcurrent
 (compatibility version 5.15.0, current version 5.15.8)
         @executable_path/../Frameworks/QtCore.framework/Versions/5/QtCore
 (compatibility version 5.15.0, current version 5.15.8)
 }}}

 As you can see here, some Qt libs are referenced, but not with absolute
 path.

 Pleas forgive me if I say dubious things I'm not quite confortable on Mac.

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


More information about the macports-tickets mailing list