Re: [MacPorts] #1936: BUG: devel/mono doesn't look in /opt/local/lib at runtime
#1936: BUG: devel/mono doesn't look in /opt/local/lib at runtime -----------------------------------+---------------------------------------- Reporter: chris.ridd@… | Owner: mww@… Type: defect | Status: reopened Priority: Normal | Milestone: Component: ports | Version: 1.0 Resolution: | Keywords: Port: mono | -----------------------------------+---------------------------------------- Comment(by ionic@…): Is this still a problem for anyone? First off, libgdiplus is still not added to the dllmap, so that's bad, but can easily be fixed. But: even if libgdiplus is found by mono, you won't be able to use it on OS X, as the default installation of Cairo doesn't use Quartz (which is good, trust me.) libgdiplus bundles an old cairo version, but this is only used iff this bundled version is newer or at least the same version as the currently installed system cairo. As being said, it's pretty old, so this check will most likely always fail, and libgdiplus use the system cairo, with following implication: as this version doesn't have Quartz support (unlike the bundled cairo version which is getting configured with Quartz support), mono/libgdiplus won't find the function GdipCreateFromContext_macosx. Ok, bad. We basically have two or three options, neither which is really good, but at least both seem to work: 1.) use the system cairo and assume Quartz support is not enabled (nobody does that anyway and uses X11, I guess). In this case, we have to patch mono to use X11 drawing for WinForms instead of the Carbon functions. I haven't tested it yet, but am pretty sure it will work fine. Just rebuilding mono and testing this method in a few minutes, then reporting back. 2.) use the bundled cairo version and let gdiplus build its own Quartz enabled cairo library. We can do this by defining a bundled cairo version of like 9.9.9 to make sure libgdiplus will always use its bundled cairo library and statically link to it. Won't break your system and works, but doesn't look that good (flickering etc.). 3.) same as above, but unpack a new version of cairo which may be working much better on OS X before calling configure of gdiplus etc. Haven't tested this yet either, but will give it a shot later. However, if nobody is interested in this (this bug is pretty old and only a few whined), I wonder whether the effort of getting it into ports is worth the benefits. Yeah, you will be able to use WinForms again with mono from MacPorts on OS X, but hum, still. Who does that, besides me currently? -- Ticket URL: <https://trac.macports.org/ticket/1936#comment:25> MacPorts <http://www.macports.org/> Ports system for Mac OS
participants (1)
-
MacPorts