Hi Chris,
Alternatively, include ieeefp.h, it provides finite() on Solaris. That
way, you preserve nan handling.
Cheers,
Johannes
Mark Jenkinson schrieb:
> Hi,
>
> Sorry - I forgot that there was still one thing left to compile.
> It seems to be that the function finite() is not being found.
> I guess that in math.h on solaris 10 that this does not exist.
>
> It is not very important for the general functioning in avwmaths++
> (in fact, only -nan and -nanm use it) so the best approach is
> probably to bypass it.
>
> The easiest way is to modify the code avwmaths++.cc and
> avwmaths.c by inserting the function:
>
> int finite(double x) { return 1; }
>
> near the beginning of the file - just before the print_usage() or
> usage() functions would be good.
>
> Once you've done this it should compile without trouble.
> Let us know how you get on.
> All the best,
> Mark
>
>
> On 27 Nov 2006, at 13:05, Christopher J Cieply wrote:
>
>> I was having some problems with my mail account and was not sure if my
>> message was sent properly. If it was sorry for the repetition but here
>> is my query.
>>
>> Mark,
>>
>> Thanks for the for the help. It worked out almost all the errors. The
>> only part that now fails is avwutils. Below is the section containing
>> the error. Thanks once again for your continued help.
>>
>> Chris
>>
>>
>>
>>
>>
>> Making project src/avwutils
>>
>>
>> c++ -Wall -ansi -pedantic -O3 -fexpensive-optimizations -
>> I/home/local/fsl/extras/include/newmat -
>> I/home/local/fsl/extras/include/zlib -I. -I/home/local/fsl/include -
>> I/home/local/fsl/include -c -o avwmaths++.o avwmaths++.cc
>>
>> /usr/local/include/g++-v3/bits/stl_threads.h: In instantiation of
>> `__gthread_mutex_t std::_Swap_lock_struct<0>::_S_swap_lock':
>>
>> /usr/local/include/g++-v3/bits/stl_threads.h:122: instantiated from here
>>
>> /usr/local/include/g++-v3/bits/stl_threads.h:115: warning: aggregate has
>> a
>>
>> partly bracketed initializer
>>
>> avwmaths++.cc: In function `int fmrib_main(int, char**, short int) [with
>> T =
>>
>> char]':
>>
>> avwmaths++.cc:459: instantiated from here
>>
>> avwmaths++.cc:359: `finite' undeclared (first use this function)
>>
>> avwmaths++.cc:359: (Each undeclared identifier is reported only once for
>> each
>>
>> function it appears in.)
>>
>> make: *** [avwmaths++.o] Error 1
>>
>> make: Target `all' not remade because of errors.
>>
>>
>> =========================
>>
>> ERROR::Could not make avwutils successfully
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> On Tue, 2006-11-21 at 19:56 +0000, Mark Jenkinson wrote:
>>
>>> Hi,
>>>
>>> You can see from the errors near the beginning of the file
>>> that your version of install is unhappy with the -p flag, which
>>> it considers an illegal option. Therefore it is not installing
>>> any of the libraries, and hence the disastrous results.
>>>
>>> So you need to edit the file
>>> $FSLDIR/config/$FSLMACHTYPE/systemvars.mk
>>> and find the line that defines the variable INSTALL.
>>> You will then need to remove the -p option from this
>>> and insert whatever the nearest equivalent option is
>>> (if one exists). It is used, on most systems, to preserve
>>> the modification time. This isn't essential if you
>>> can't find an equivalent option in install (or ginstall
>>> if you have that) but it is nicer if you can find something.
>>>
>>> Let us know how you get on.
>>> All the best,
>>> Mark
>>>
>>>
>>> On 21 Nov 2006, at 18:55, Christopher J Cieply wrote:
>>>
>>>> Mark
>>>> Thanks for the help. It no builds some successfully but still
>>
>> fails.
>>
>>>> Any other thoughts would be appreciated. Couldn't attach the whole
>>>> build log because it said the file was too large but below is the
>>>> beginning and end of the file. Thank you very much once again.
>>>>
>>>> Chris
>
>
|