Problem compiling luminancehdr on mac OS X 12

Thanks a lot, just pushed. Is LHDR stable on OS X? Any major issues?

Seems stable without issue.

1 Like

@HIRAM

@fcomida emailed about Luminance refusing to launch on El Capitan (10.11). I think this is because you have linked to the 10.12 SDK. You can change that on the command-line by setting the environment string MACOSX_DEPLOYMENT_TARGET=10.9 (or whatever SDK you target). For example:

$ make MACOSX_DEPLOYMENT_TARGET=10.9 or $ env MACOSX_DEPLOYMENT_TARGET=10.9 make

If you’re building in Xcode, search for MACOSX_DEPLOYMENT_TARGET in the UI and you’ll find a key you can set. There’s a discussion here about setting this in CMake. http://stackoverflow.com/questions/10165335/can-cmake-specify-the-base-sdk-on-mac-os-x

You can download the platform SDK from developer.apple.com

Leopard, Snow Leopard, Lion, Mountain Lion 10.5 10.6 10.7 10.8 Maverics, Yosemite, El Capitan, Sierra 10.9 10.10 10.11 10.12

Another possibility is that it has something to do with Qt.

Luminance was claiming support for 10.8 and greater. As MacOS-X upgrades are free, we should encourage users to upgrade the OS. My 9 year old iMac which I bought on Black Friday 2007 runs 10.11 because 10.12 refuses to install on such an elderly machine. Great Machine.

I only have Xcode 8.3, which only has the 10.12 sdk. I’ll try getting Xcode 6.3 and running xcodelegacy to bring in the older sdk. GitHub - devernay/xcodelegacy: Legacy components for XCode 4-9 (deprecated compilers and Mac OS X SDKs)
Also found the sdk by itself on GitHub. GitHub - phracker/MacOSX-SDKs: A collection of those pesky SDK folders: MacOSX10.1.5.sdk thru MacOSX11.3.sdk

As I’m compiling from the command line, in addition to the environment setting you mentioned I had to call cmake -DCMAKE_OSX_SYSROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk ../L*

Things go ok, except now the make is warning that my fftw3 was compiled for 10.12. So now off to try and rebuild fftw3 for 10.9. Not sure how to go about that but will give it a try,.

Thanks for working on this and discovering xcodelegacy.

Testing is a challenge. The disk on my 9.5 year old iMac died a few weeks ago and I don’t think it’s worth fixing. I only use the machine to run TimeMachine, so I purchased a 3GB portable drive and attached it to the buildserver. I can’t bring myself to take such a beautiful machine to the e-trash collector. I’ve stored it lovingly in a closet.

I believe I can (legally) install a previous edition of MacOS-X on a VM on the buildserver (a 2014 MacMini). I’ll install Yosemite/10.11 because the issue was raised on 10.11. I’ll see if I can reproduce the report with your 2.5.1 DMG. When we triumph over that, we can discuss with @fcomida how far back in the MacOS-X release chain Luminance needs to reach.

Incidentally, I occasionally build and test Exiv2 on an old Apple Powerbook running Tiger/10.4 using GCC 4.0. I do this primarily to test our big-endian support. However I also feel pride that the Exiv2 code is so sturdy and builds/runs on many platforms.

After convincing findfftw to find fftw per MacOSX build of Luminance_HDR_2.5.1 - #16 by clanmills the build did succeed without the warnings.
https://filebin.net/2djmoa4x4sf6r6nc/Luminance_HDR_2.5.1.dmg

@HIRAM Thanks. We make a good team. Your DMG is working on Sierra.

I think I’ve persuaded Parallels on my MacBookPro to install El Cap (10.11) on a VM. It’s going through the whole install process at the moment. I think it’ll take about an hour to get it installed and working. It’s 18:22 (6:22pm) in England and we have guests for dinner in a few minutes. If this all works, I’ll let you know. If I have to start digging about, it will have to wait until Saturday.

Apple don’t make it easy to install MacOS-X on a VM. That’s the Apple way. Their way, or no way!

And you guys won’t stop at it. I got a request for a build that can run on ENIAC. A virtual machine isn’t enough in this case, you should find an ENIAC emulator…

ENIAC? That was my first machine. I think there might be one in Bletchley Park or somewhere near here.

Good News: El Cap (10.11) is running on a VM on my MacBook Pro. Even Better News: LHDR is working on it! And when it demanded a donation, I clicked “No. Stop bothering me.”.

Right. Time for breakfast.

1 Like

Self-donations are against the law, I suppose.
Great job guys, does it mean I can put the build on sourceforge?

Yes. Publish it. I don’t think we need to build on anything earlier than El Cap. Every Mac that’s less than 10 years old can run El Cap. If somebody shows up wanting support for Leopard (10.5) we can investigate, or simply decline.

I do occasionally build Exiv2 on Tiger (10.4) on a PowerBook with the big-endian PowerPC processor. Building a library on elderly machines is one thing, building an application is a bigger undertaking. In the case of Exiv2, I support 17 different build platforms and believe the code will build on almost any platform from the 21st Century. An application such as LHDR is published to run on various platforms. Users of very old systems have no ground for complaint when the application doesn’t work on obsolete equipment.

I’ve enjoyed working with @HIRAM. I hope to persuade him to build/publish LHDR on the Exiv2 buildserver.

Somebody should update Findfftwf.cmake in master.

Thanks again guys. Robin you should have write access to the repo or there are still problems?

@HIRAM Are there other changes to be submitted to master?

Gentlemen: It’s amazing what we can achieve when we cooperate. The future will be a fantastic place. By 2050, there could be more people alive (10 billion) than all the humans in history. And we’re connected together as never before by our digital technology. Life is good.

1 Like

Another thing, is this build going to replace the old one? Meaning: does it runs on El Cap and later? If this is the case, is the old build better on Sierra and newer (in terms of stability, performance)?

@clanmills just few people don’t realize that yet: the POWER ELITE!!!

@fcomida Technically the build using the 10.9 SDK will not be taking advantage of the SDK developments since then which would be present in the 10.12 build. I have no idea to what extent that affects the performance.
@clanmills I haven’t had to touch the 2.5.1 code beside your additions to findfftw.cmake. Just had to set the OS X version environment variable and the cmake sysroot argument to point to the imported SDK.

It’s a tax loophole which doesn’t yet exist.

@HIRAM Since we already have a build with the new SDK I just renamed your last one Luminance_HDR_2.5.1_osx_10.11.dmg

OK. BTW theoretically it should work on 10.9+ as I used the 10.9 sdk.

I’ll submit the change to findfftw.cmake and we’re good.

I’d be surprised if there’s anything in MacOS-X 10.12 that makes much difference to LHDR. Apple appear to have lost interest in desktops and servers and pumping all their energy into the iPhone. If LHDR wanted to use the touch-pad doo-dah in the latest MacBooks, it’d have to be build with the 10.12 SDK. However the UI and Core Graphics in 10.12 is probably most unchanged in the last 10 years.