[Paraview] Is There An Error In vtkSocketCommunicator (2.4.2)?
Amy Squillacote
amy.squillacote at kitware.com
Wed Feb 22 15:05:07 EST 2006
Earlier this afternoon I committed a fix for this problem to the CVS
branch for ParaView 2.4. It will be in the next patch release of
ParaView 2.4. If you want to get the fix for this now, check out
ParaView with the tag ParaView-2-4.
- Amy
At 03:06 PM 2/21/2006, Kent Eschenberg wrote:
>Clint, that sounds like a bug in CMake or one of its files. Does
>this call for a bug submission?
>
>Bill asked about a place in CMakeOutput.log and CMakeError.log. The
>latter doesn't exist, and the former contains neither "socklen_t"
>nor "VTK_HAVE_GETSOCKNAME_WITH_SOCKLEN_T". These files are those
>left after 2 cycles of cmake/make. Given Clint's observation, is
>there a need to re-create the state of the first cycle?
>
>Thanks for your help!
>Kent
>
>--On Tuesday, February 21, 2006 09:50:38 AM -0700 Clinton Stimpson
><clinton at elemtech.com> wrote:
>
>>
>>I think it is because the vtkConfigure.h is written out before CMake has
>>a chance to go in the Parallel directory to find out whether to use
>>socklen_t or int. A second run of cmake updates the vtkConfigure.h file
>>with the right stuff, whereas the CMakeCache.txt file doesn't change at
>>all.
>>
>>Clint
>>
>>William A. Hoffman wrote:
>>
>>>This means a trycompile was bad. Can you look at CMakeOutput.log
>>>and CMakeError.log and find the place where socken_t was incorrectly
>>>determined.
>>>
>>>-Bill
>>>
>>>
>>>At 03:08 PM 2/17/2006, Kent Eschenberg wrote:
>>>
>>>
>>>>I can't tell whether this is a bug or another dumb thing I've done.
>>>>Compiling a fresh download of 2.4.2 on a Fedora Core 4 system (cmake
>>>>2.2-patch 2, gcc 4.0.2) with no changes yields the following error:
>>>>
>>>>======
>>>>.../VTK/Parallel/vtkSocketCommunicator.cxx:
>>>>In member function
>>>>virtual int vtkSocketCommunicator::GetPort(int):
>>>>error: invalid conversion from int* to socklen_t*
>>>>======
>>>>
>>>>At the top of this routine are the lines
>>>>
>>>>======
>>>># if defined(VTK_HAVE_GETSOCKNAME_WITH_SOCKLEN_T)
>>>>socklen_t sizebuf = sizeof(sockinfo);
>>>># else
>>>>int sizebuf = sizeof(sockinfo);
>>>># endif
>>>>======
>>>>
>>>>and the only line in CMakeCache.txt that includes the flag is
>>>>
>>>>======
>>>>VTK_HAVE_GETSOCKNAME_WITH_SOCKLEN_T:INTERNAL=1
>>>>======
>>>>
>>>>So, "&sizebuf" is an "int*" and gcc doesn't know how to convert it to
>>>>"socklen_t*".
>>>>
>>>>On a hunch I tried merely re-running cmake then make. None of the files
>>>>from the first cycle were changed. This worked without problems.
>>>>
>>>>What do you think is wrong?
>>>>
>>>>Thanks!
>>>>Kent
>>>>Pittsburgh Supercomputing Center
>_______________________________________________
>ParaView mailing list
>ParaView at paraview.org
>http://www.paraview.org/mailman/listinfo/paraview
More information about the ParaView
mailing list