Since C is ABI compatible, just build MPICH with GCC and like with ICC apps.
Thanks Rob, here is the specific part from my mpl config, almost looks like your config:configure:13058: checking for strncmpconfigure:13058: icc -std=gnu99 -o conftest conftest.c >&5configure:13058: $? = 0configure:13058: result: yesconfigure:13070: checking whether strncmp needs a declarationconfigure:13089: icc -std=gnu99 -c conftest.c >&5configure:13089: $? = 0configure:13097: result: noI get build errors even with GCC 4.9 and clang with older versions of mpich, so this is definitely a system issue as you mentioned.sg@sg:~/sources/mpich-3.1.4/build$ cat /etc/debian_version8.2sg@sg:~/sources/mpich-3.1.4/build$ uname -aLinux sg 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt11-1+deb8u5 (2015-10-09) x86_64 GNU/LinuxOn Wed, Oct 21, 2015 at 7:39 AM, Rob Latham <robl@mcs.anl.gov> wrote:The warnings are intel's preprocessor being a bit pickier than gnu's cpp
the errors, though, are indeed odd.
I will eat my sock if strncmp really truly is not on your system; far more likely the strncmp test failed for some unrelated reason.
Look at your src/mpl/config.log. On my system, the (successful) check for strncmp looks like this:
configure:12723: checking for strncmp
configure:12723: ccache gcc -o conftest -Wall -g -Wno-unused-label -fstack-usage -fPIC -ggdb3 -I /home/robl/work/soft/lustre/include conftest.c >&5
conftest.c:65:6: warning: conflicting types for built-in function 'strncmp'
char strncmp ();
^
configure:12723: $? = 0
configure:12723: result: yes
configure:12734: checking whether strncmp needs a declaration
configure:12752: ccache gcc -c -Wall -g -Wno-unused-label -fstack-usage -fPIC -ggdb3 -I /home/robl/work/soft/lustre/include conftest.c >&5
configure:12752: $? = 0
configure:12759: result: no
Does yours look like this?
==rob
_______________________________________________Hi,
I am getting an error while trying to compile the latest mpich (from the
git repo) with Intel 15.0.1 compiler...excerpt of the error:
In file included from ../../.././src/mpl/include/mpl.h(10),
from ../../.././src/mpl/src/mplstr.c(7):
./include/mplconfig.h(238): warning #14: extra text after expected end
of preprocessing directive
#ifndef _mpl_ ^
In file included from ../../.././src/mpl/include/mpl.h(10),
from ../../.././src/mpl/src/mplstr.c(7):
./include/mplconfig.h(239): warning #2217: white space is required
between the macro name "_mpl_" and its replacement text
#define _mpl_ ^
In file included from ../../.././src/mpl/include/mpl.h(111),
from ../../.././src/mpl/src/mplstr.c(7):
../../.././src/mpl/include/mplstr.h(48): error: #error directive:
"strncmp is required"
#error "strncmp is required"
^
../../.././src/mpl/src/mplstr.c(41): warning #266: function "isdigit"
declared implicitly
if (isdigit(nc)) {
^
Internal error: null pointer
Please suggest.
--
Regards,
Sayan
discuss mailing list discuss@mpich.org
To manage subscription options or unsubscribe:
https://lists.mpich.org/mailman/listinfo/discuss
--
Rob Latham
Mathematics and Computer Science Division
Argonne National Lab, IL USA
_______________________________________________
discuss mailing list discuss@mpich.org
To manage subscription options or unsubscribe:
https://lists.mpich.org/mailman/listinfo/discuss
--Regards,Sayan