[Insight-developers] JPEG2000 bool issue on OSX ppc
Bradley Lowekamp
blowekamp at mail.nih.gov
Tue May 28 10:53:22 EDT 2013
Sean,
Look at the file link below on github.
This old version of OpenJPEG2000 is compiled as a C library, but we use it from a C++. When compiled from C it defined the "bool" type as int. And sizeof (int) != sizeof(bool) for gcc on linux, x86 osx, and VS. On these systems it's just a byte. So I hacked it to define bool as "unsigned char". As the ITK dashboard shows, this works ok every where except mini0 with ppc running in software:
http://open.cdash.org/testSummary.php?project=2&name=itkJPEG2000Test01&date=2013-05-28
The correct thing to do is to upgrade to a more recent OPENJPEG2000 library, but that is non-trivial due to GDCM depending on the manipulated version in ITK. I know we had some problems with JPEG2000 in GDCM, at least related to streaming:
https://issues.itk.org/jira/browse/ITK-117
I am having a little trouble with the getting the try_run to work. So I am debating about just hard coding the PPC case in the pre-processor. Also note that ITK's OpenJpeg2000 ImageIO is "just" in review.
What are your suggestions?
Brad
On May 28, 2013, at 10:32 AM, Sean McBride <sean at rogue-research.com> wrote:
> On Tue, 28 May 2013 08:53:43 -0400, Bradley Lowekamp said:
>
>> My hack for JPEG2000's 1.2 bool issue:
>>
>> https://github.com/Kitware/ITK/commit/a7eee65
>>
>> is not working for OSX ppc:
>>
>> http://open.cdash.org/viewTest.php?onlyfailed&buildid=2920031
>>
>> because sizeof(bool) there is 4. So it looks like I'll need to do a try
>> compile thing to get the right size... it'll still be a hack until we
>> can upgrade to JPEG2000 2.0.
>
> Please never do try-compiles for such things, it doesn't work with OS X 'universal binaries' where a single library is simultaneously built for multiple architectures, any of which may have different sizes for pointers, bools, ints, etc.
>
> (I haven't followed this issue, but the language does not require a specific size of 'bool', why do you care?)
>
> Cheers,
>
> --
> ____________________________________________________________
> Sean McBride, B. Eng sean at rogue-research.com
> Rogue Research www.rogue-research.com
> Mac Software Developer Montréal, Québec, Canada
>
>
More information about the Insight-developers
mailing list