I’ve been investigating how to build hugin properly for Apple Silicon (and if I manage to iron out the bugs), I’d be willing to help maintain a build for the recent OS.
I’ve found a few issues, which I was able to fix, mostly by updating to newer library versions.
The levmar code has an issue identical to https://github.com/astromatic/psfex/issues/12, which I fixed using the same fix as https://github.com/astromatic/psfex/commit/f096d495c7e1f21dedbd40b207935f500850a88e
However, the following code, in hugin-2025.0.0/src/hugin1/ptbatcher/ChangeUserDefinedDialog.cpp, seems to be wrong and cannot compile on macOS.
<snip>
Under defined __WXMAC__ && defined MAC_SELF_CONTAINED_BUNDLE, this results in attempting to compile the linehugin_utils::HuginMessageBox(_("xrc directory not found in bundle"), _("PTBatcherGUI"), wxOK|wxICON_ERROR, this);while being outside of a class method.
This looks like a refactor issue using a non method helper.
Since I’m more a git than a hg person, I haven’t gotten around figuring out when that issue was introduced though.
(More generally, is it the case that macOS builds have not been tested at all for a while?)
So, I sorted a large amount of nonsense due to clang++ picking up the wrong headers, and one wxWidgets incompatible change, now I just need to hunt down some library that are being picked up from homebrew (either change the configure options to disable or use built-in versions, or add them as Extra dependencies).
But it looks like I’ll soon have a build on Apple Silicon, macOS Tahoe.
Is there a checklist to ensure the software runs properly ?
Guillaume DIDIER
Le 19 nov. 2025 à 11:22, 'T. Modes' via hugin and other free panoramic software <hugi...@googlegroups.com> a écrit :
--
A list of frequently asked questions is available at: http://wiki.panotools.org/Hugin_FAQ
---
You received this message because you are subscribed to the Google Groups "hugin and other free panoramic software" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hugin-ptx+...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/hugin-ptx/3aca0192-d1f8-439f-b033-d9015c619d8bn%40googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/hugin-ptx/2539896E-3614-4AC9-B2A5-66D38A679A8B%40outlook.fr.
To view this discussion visit https://groups.google.com/d/msgid/hugin-ptx/CAHk3tqidRAh_HcpFWArkLHFRfxte6ZHVEN2z2yRxQhTRkVPSCQ%40mail.gmail.com.
The good news is that I have successfully compiled a Hugin.app standalone bundle for Apple Silicon macOS Tahoe & Sequoia.
The first one is that in MainFrame::MainFrame, the call to GetDPIScaleFactor() triggers a null pointer dereference in wxWindow::GetContentScaleFactor (/wxWidgets-3.3.1/src/osx/window_osx.cpp:1188).
(This could either be caused by wxWindowMac::GetPeer (window_osx.cpp:278 in wxWidgets-3.3.1) returning nullptr, OR an issue in wxWidgetCocoaImpl::GetContentScaleFactor (wxWidgets-3.3.1/src/osx/cocoa/window.mm:2840)
Once I replace this call with returning the 1.5 DPI scale factor that Retina display is supposed to use, I get the splash screen to appear, but get an error message about missing SVG assets. (The 1.5 factor might be wrong though).
--
A list of frequently asked questions is available at: http://wiki.panotools.org/Hugin_FAQ
---
You received this message because you are subscribed to the Google Groups "hugin and other free panoramic software" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hugin-ptx+...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/hugin-ptx/dfeba1db-1873-4ca2-a58a-55edc3cec28dn%40googlegroups.com.
<fix_dpiscale_MacOS.diff>
This indeed fixes the nullptr issue.
Here is the next issue.
The missing data files are all SVG files, and are not found in the bundle (I see no SVG files in it).(I do not see a single SVG file in the build tree, perhaps the bundle build process, by passes install and copy stuff separately, or this is done
--
A list of frequently asked questions is available at: http://wiki.panotools.org/Hugin_FAQ
---
You received this message because you are subscribed to the Google Groups "hugin and other free panoramic software" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hugin-ptx+...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/hugin-ptx/e3aa43a2-a008-470b-86f2-bb62f14837e1n%40googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/hugin-ptx/4E9F7815-0D50-4856-8B8F-DAB0D46CE782%40outlook.fr.
One of the fixes I had to do to get things to compile is remove the return false; at src/hugin1/stitch_project/hugin_stitch_project.cpp:126, since this is not a compatible type with a constructor return type.
I’m not sure what the appropriate behaviour is (return; nothing, or abort).
I have two other patches to the source code which I am confident in, and then I’ll have the dependency update.
--
A list of frequently asked questions is available at: http://wiki.panotools.org/Hugin_FAQ
---
You received this message because you are subscribed to the Google Groups "hugin and other free panoramic software" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hugin-ptx+...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/hugin-ptx/92cfb860-7520-4b57-9f4b-d0b8767b35fcn%40googlegroups.com.
Here are the first two patches of the series, which concern the source code.
From a changeling perspective, should I increment the patch version in CMakeLists.txt and refer to this version when updating the file documentations ?