Hi Piotr, OK, I had a bit of downtime to check CMake and the v2.1.0 build - I've not used cmake before, so it was a first and I rather liked it I have to admit :)
I used the Windows GUI of cmake to generate for Visual Studio 11 x64 (i.e., vs2012) I then opened the IlmBase solution in VS2012. To build, the IEX solution needed the PLATFORM_WINDOWS define setting. After building, and using my test program (as outlined before) it would not link with a missing half::_toFloat and half::_eLut unresolved externals. I'm not sure if (apart from the missing PLATFORM_WINDOWS) this should just build using CMake generated projects and solutions so I've not delved deeper into this. Just to note, whilst I got lots of "non dll-interface class 'Iex_2_1::BaseExc' used as base for dll-interface class 'Iex_2_1::ArgExc'" type warnings, I did not change the code at all to attempt this half test. The fact that it's complaining about the _toFloat array is probably linked to the runtime errors I had - in that when I ran my test previously it was this structure that was corrupt/missing. Hope this helps identify any problems under VS2012/x64 ….. Best Regards, Simon ________________________ Simon C. Smith Co-founder & CTO Lightmap Ltd - Creators of HDR Light Studio Follow our Facebook page ________________________ Registered in England and Wales 06879016 International House, Brunel Drive, Newark, NG24 2EG. UK On 13 Feb 2014, at 18:51, Piotr Stanczyk wrote: > If you have a few spare cycles, could you build using cmake? > > thanks > > Piotr > > > > On 13 February 2014 10:40, Simon Smith <si...@lightmap.co.uk> wrote: > Hi Piotr, > > I used the version that's zipped up on the main OpenEXR website (v2.1.0). > > I then duplicated the vc 2010 directory to build for VS2012 (just upgrading > the projects on loading etc). > The projects there include the createDLL project and use them in the > post-build steps. > > I'm 99% sure the issue is that it's a DLL as mentioned because statically > building the libs works as expected. > > Best Regards, > Simon > > > > On 13 Feb 2014, at 17:12, Piotr Stanczyk wrote: > >> Which version are you using? We should be building without the createDLL >> path since we made a pass at setting the visibility attributes >> >> Piotr >> >> >> >> On 13 February 2014 06:03, Simon Smith <si...@lightmap.co.uk> wrote: >> I've built the OpenEXR files under Windows using VS2012 from the source >> linked from the OpenEXR website. >> Everything builds OK (after a few tweaks as mentioned on this group) and the >> HalfTest runs OK. >> >> I was having issues with half/floats in my application, so I wrote a quick >> test command line app to check everything was OK. >> Not unsurprisingly, it was not! >> >> This was the code … >> >> float f1 = 0.0f; >> float f2 = 4.0f; >> half h1 = f1; >> h1 += f2; >> float fRes = h1; >> >> assert(fRes = 4.0f); >> >> When converting from the half to a float to get fRes I'm getting an >> exception reading from the _toFloat array. >> >> I'm not quite sure how or why this happens - if I debug in the >> testArithmetic call in the HalfTest, it all seems OK … so why would my test >> program not load the DLL correctly, but the HalfTest does. >> >> Pretty sure it's something dumb that I'm doing, but cannot think what it >> might be. >> >> I'm using VS2012, Win8.1, running Debug x64 builds and the ilmbase-2.1.0 >> sour code (built in VS2012 too). >> >> As a side note, when building the source I had to do the following: >> 1) Include config.windows to the Iex and IMath libraries >> 2) Manually copy the halfExport.h files over to the deploy directory. >> 3) Patch BaseExc to have a std::string member & change the IEX_EXPORT >> decorations around (as outlined in an earlier post) >> >> So, any ideas, solutions, suggestions greatly appreciated to save my sanity >> :) >> >> Best Regards, >> Simon >> >> _______________________________________________ >> Openexr-devel mailing list >> Openexr-devel@nongnu.org >> https://lists.nongnu.org/mailman/listinfo/openexr-devel >> >> > >
_______________________________________________ Openexr-devel mailing list Openexr-devel@nongnu.org https://lists.nongnu.org/mailman/listinfo/openexr-devel