With intel 2015.1.133 and gcc 5.1.0 in the path, error on make check with cxx interface

Rob Latham robl at mcs.anl.gov
Mon Jun 1 11:31:42 CDT 2015



On 06/01/2015 11:25 AM, Wei-keng Liao wrote:
> Hi, Nick,
>
> To print the trace of a segmentation fault is easy. You can run command
> "gdb corefile" and when at the gdb prompt, type command "where".
> If you can send me the printout, it will be helpful.

I just learned about an even easier way to get this information:  run it 
under 'catchsegv':  catchsegv <program> <args>.

==rob

>
> Just to clarify, if gcc 5.1.0 is used, are you saying there is no problem of building PnetCDF?
> Can you tell me the configure command line you used?
>
> Wei-keng
>
> On Jun 1, 2015, at 11:11 AM, Nick Papior Andersen wrote:
>
>>
>>
>> 2015-06-01 17:09 GMT+02:00 Wei-keng Liao <wkliao at eecs.northwestern.edu>:
>> Hi, Nick
>>
>> Your fix for the first bug makes all sense. I will add that to PnetCDF. Thanks.
>>
>> As for the second error, can you use gdb to print the location of the segmentation fault?
>> I haven't done that. I would rather not go that path? I ain't an avid user of gdb (yet).
>> Also, do both errors happen to Intel C compiler?
>> It is only the intel cxx compiler. I only show the gcc version as intel uses that for compatibility issues. (see -gcc-name)
>> I thought that this could be problem... Maybe it isn't.
>>
>> The two C compilers you used are the latest ones. I have not tried them.
>> Could you compile/run a simple C++ program to see if gcc works in your environment?
>> Or, if you installed gcc from source, have you tried run "make -k check"?
>> See https://gcc.gnu.org/install/test.html
>>
>> Gcc/g++ runs fine. I can compile 20 other different libraries with full support. If anything, it is related to the intel compiler. :(
>> If you do not need C++ component, you can build a PnetCDF without it, by adding option
>> "--disable-cxx" to the configure command.
>> This is already my diverting methodology :) Thanks.
>>
>> By the way, I plan to release 1.6.1 today, but it will not fix the second error you are seeing.
>> I will try if I can find those new versions of C compiler and fix the problem.
>> The fix will have to wait for the next release, though.
>> Ok. :)
>>
>> Thanks again for reporting the problem.
>> You are welcome.
>> Thanks for the software.
>>
>> Wei-keng
>>
>> On Jun 1, 2015, at 1:00 AM, Nick Papior Andersen wrote:
>>
>>> I am trying to compile and make check with these compilers:
>>> intel 2015.1.13
>>> and
>>> gcc 5.1.0 in the path.
>>>
>>> Compiling goes fine and everything seems to link correctly.
>>> However make check errors out in the CXX test.
>>>
>>> First I get this error message:
>>> ./nctst        ./testfile.nc
>>> terminate called after throwing an instance of 'std::logic_error'
>>>    what():  basic_string::_M_construct null not valid
>>> [n-62-12-2:09803] *** Process received signal ***
>>> [n-62-12-2:09803] Signal: Aborted (6)
>>> [n-62-12-2:09803] Signal code:  (-6)
>>> [n-62-12-2:09803] [ 0] /lib64/libpthread.so.0(+0xf710)[0x2aae4ac54710]
>>> [n-62-12-2:09803] [ 1] /lib64/libc.so.6(gsignal+0x35)[0x2aae4ae94625]
>>> [n-62-12-2:09803] [ 2] /lib64/libc.so.6(abort+0x175)[0x2aae4ae95e05]
>>> [n-62-12-2:09803] [ 3] /zdata/groups/common/nicpa/2015-test/generic/gcc/5.1.0/lib64/libstdc++.so.6(_ZN9__gnu_cxx27__verbose_terminate_handlerEv+0x15d)[0x2aae4a7428cd]
>>> [n-62-12-2:09803] [ 4] /zdata/groups/common/nicpa/2015-test/generic/gcc/5.1.0/lib64/libstdc++.so.6(+0x8c936)[0x2aae4a740936]
>>> [n-62-12-2:09803] [ 5] /zdata/groups/common/nicpa/2015-test/generic/gcc/5.1.0/lib64/libstdc++.so.6(+0x8c981)[0x2aae4a740981]
>>> [n-62-12-2:09803] [ 6] /zdata/groups/common/nicpa/2015-test/generic/gcc/5.1.0/lib64/libstdc++.so.6(+0x8cb98)[0x2aae4a740b98]
>>> [n-62-12-2:09803] [ 7] /zdata/groups/common/nicpa/2015-test/generic/gcc/5.1.0/lib64/libstdc++.so.6(_ZSt19__throw_logic_errorPKc+0x3f)[0x2aae4a767faf]
>>> [n-62-12-2:09803] [ 8] ./nctst[0x461b42]
>>> [n-62-12-2:09803] [ 9] ./nctst[0x4644b6]
>>> [n-62-12-2:09803] [10] ./nctst[0x40c313]
>>> [n-62-12-2:09803] [11] ./nctst[0x409f60]
>>> [n-62-12-2:09803] [12] /lib64/libc.so.6(__libc_start_main+0xfd)[0x2aae4ae80d5d]
>>> [n-62-12-2:09803] [13] ./nctst[0x409cb9]
>>> [n-62-12-2:09803] *** End of error message ***
>>>
>>>
>>> Secondly I change in file src/libcxx/ncmpiType.cpp:
>>> function inq_type has 'return NULL' which cannot be done using returns of string (unless it is a pointer, which it isn't)
>>> So I change it to an empty string:
>>> 'return ""'
>>> (I am not sure when this is reached, but the error message changes as can be seen below, hence my suspicion is at that code segment)
>>>
>>> Now I recompile and get this alternate error message:
>>> ./nctst        ./testfile.nc
>>> [n-62-12-2:23419] *** Process received signal ***
>>> [n-62-12-2:23419] Signal: Segmentation fault (11)
>>> [n-62-12-2:23419] Signal code: Address not mapped (1)
>>> [n-62-12-2:23419] Failing at address: 0xffffffffffffffe8
>>> [n-62-12-2:23419] [ 0] /lib64/libpthread.so.0(+0xf710)[0x2ab6b02fa710]
>>> [n-62-12-2:23419] [ 1] /zdata/groups/common/nicpa/2015-test/generic/gcc/5.1.0/lib64/libstdc++.so.6(_ZNSo6sentryC2ERSo+0x19)[0x2ab6afe61e79]
>>> [n-62-12-2:23419] [ 2] /zdata/groups/common/nicpa/2015-test/generic/gcc/5.1.0/lib64/libstdc++.so.6(_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l+0x29)[0x2ab6afe62589]
>>> [n-62-12-2:23419] [ 3] /zdata/groups/common/nicpa/2015-test/generic/gcc/5.1.0/lib64/libstdc++.so.6(_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc+0x27)[0x2ab6afe629e7]
>>> [n-62-12-2:23419] [ 4] ./nctst[0x40d4a5]
>>> [n-62-12-2:23419] [ 5] ./nctst[0x409f60]
>>> [n-62-12-2:23419] [ 6] /lib64/libc.so.6(__libc_start_main+0xfd)[0x2ab6b0526d5d]
>>> [n-62-12-2:23419] [ 7] ./nctst[0x409cb9]
>>> [n-62-12-2:23419] *** End of error message ***
>>> make[2]: *** [testing] Segmentation fault
>>>
>>> There seem to be something fishy with the cxx interface?
>>> I am no expert in cxx... :( So had troubles debugging further...
>>>
>>> --
>>> Kind regards Nick
>>
>>
>>
>>
>> --
>> Kind regards Nick
>

-- 
Rob Latham
Mathematics and Computer Science Division
Argonne National Lab, IL USA


More information about the parallel-netcdf mailing list