I'm trying to build on MIC. In order to do that, I have to cross compile. See attached cfg file.
Anyhow, I build with simfactory and get this:
End of options from '/home1/00044/tg457049/Cactus/configs/sim/OptionList'. creating cache ./config.cache checking host system type... x86_64-unknown-linux-gnu checking whether make sets ${MAKE}... yes checking whether the C compiler (mpicc -g3 -m128bit-long-double -mmic -rdynamic -Wunused-variable ) works... yes checking whether the C compiler (mpicc -g3 -m128bit-long-double -mmic -rdynamic -Wunused-variable ) is a cross-compiler... yes checking whether we are using GNU C... yes checking whether the C++ compiler (mpicxx -g3 -m128bit-long-double -mmic -std=c++03 -rdynamic -Wunused-variable ) works... yes checking whether the C++ compiler (mpicxx -g3 -m128bit-long-double -mmic -std=c++03 -rdynamic -Wunused-variable ) is a cross-compiler... yes checking whether we are using GNU C++... yes
So I expect the mpicc compiler to be used. It isn't. What am I doing wrong?
Cheers, Steve
Steve
Looking at the output, it seems that Cactus uses mpicc, while icc reports and error. Does mpicc maybe use icc? What happens if you type "mpicc --version"?
Generally, I recommend against using mpicc, since it complicates the configuration stage (it may be difficult to run small test programs). With cross-compiling, this may not be so much of an issue since you can't run test programs anyway.
I assume that you are trying this with an empty thorn list?
Your option list looks strage. Is this really a Fedora system?
You are setting MPI_DIR = /opt/apps/intel13/impi/4.1.0.024/intel64. Does this make sense, if you expect to not be using icc? What compiler should be used to generate the code, gcc or icc?
You are setting FPP_OPENMP_FLAGS = -D_OPENMP; this is only necessary for very old versions of GNU cpp. For modern versions, I recommend FPP_OPENMP_FLAGS = -fopenmp.
You are using -rdynamic in CFLAGS. This is a linker option; it should go to LDFLAGS instead.
-erik
On Fri, Dec 14, 2012 at 10:12 AM, Steven R. Brandt sbrandt@cct.lsu.eduwrote:
I'm trying to build on MIC. In order to do that, I have to cross compile. See attached cfg file.
Anyhow, I build with simfactory and get this:
End of options from '/home1/00044/tg457049/Cactus/** configs/sim/OptionList'. creating cache ./config.cache checking host system type... x86_64-unknown-linux-gnu checking whether make sets ${MAKE}... yes checking whether the C compiler (mpicc -g3 -m128bit-long-double -mmic -rdynamic -Wunused-variable ) works... yes checking whether the C compiler (mpicc -g3 -m128bit-long-double -mmic -rdynamic -Wunused-variable ) is a cross-compiler... yes checking whether we are using GNU C... yes checking whether the C++ compiler (mpicxx -g3 -m128bit-long-double -mmic -std=c++03 -rdynamic -Wunused-variable ) works... yes checking whether the C++ compiler (mpicxx -g3 -m128bit-long-double -mmic -std=c++03 -rdynamic -Wunused-variable ) is a cross-compiler... yes checking whether we are using GNU C++... yes
So I expect the mpicc compiler to be used. It isn't. What am I doing wrong?
Cheers, Steve
Users mailing list Users@einsteintoolkit.org http://lists.einsteintoolkit.org/mailman/listinfo/users
On 12/14/2012 11:03 AM, Erik Schnetter wrote:
Steve
Looking at the output, it seems that Cactus uses mpicc, while icc reports and error. Does mpicc maybe use icc? What happens if you type "mpicc --version"?
D'oh, of course. Didn't have my caffeine yet, I guess.
Generally, I recommend against using mpicc, since it complicates the configuration stage (it may be difficult to run small test programs). With cross-compiling, this may not be so much of an issue since you can't run test programs anyway.
I assume that you are trying this with an empty thorn list?
No, but it's not complete ET either. Empty's probably a good idea though.
Your option list looks strage. Is this really a Fedora system?
No. I just didn't fix the comments.
You are setting MPI_DIR = /opt/apps/intel13/impi/4.1.0.024/intel64 http://4.1.0.024/intel64. Does this make sense, if you expect to not be using icc? What compiler should be used to generate the code, gcc or icc?
You are setting FPP_OPENMP_FLAGS = -D_OPENMP; this is only necessary for very old versions of GNU cpp. For modern versions, I recommend FPP_OPENMP_FLAGS = -fopenmp.
Yes, but I have OPENMP = no. At least for now.
You are using -rdynamic in CFLAGS. This is a linker option; it should go to LDFLAGS instead.
Remnants of an older file.
-erik
On Fri, Dec 14, 2012 at 10:12 AM, Steven R. Brandt <sbrandt@cct.lsu.edu mailto:sbrandt@cct.lsu.edu> wrote:
I'm trying to build on MIC. In order to do that, I have to cross compile. See attached cfg file. Anyhow, I build with simfactory and get this: End of options from '/home1/00044/tg457049/Cactus/configs/sim/OptionList'. creating cache ./config.cache checking host system type... x86_64-unknown-linux-gnu checking whether make sets ${MAKE}... yes checking whether the C compiler (mpicc -g3 -m128bit-long-double -mmic -rdynamic -Wunused-variable ) works... yes checking whether the C compiler (mpicc -g3 -m128bit-long-double -mmic -rdynamic -Wunused-variable ) is a cross-compiler... yes checking whether we are using GNU C... yes checking whether the C++ compiler (mpicxx -g3 -m128bit-long-double -mmic -std=c++03 -rdynamic -Wunused-variable ) works... yes checking whether the C++ compiler (mpicxx -g3 -m128bit-long-double -mmic -std=c++03 -rdynamic -Wunused-variable ) is a cross-compiler... yes checking whether we are using GNU C++... yes So I expect the mpicc compiler to be used. It isn't. What am I doing wrong? Cheers, Steve _______________________________________________ Users mailing list Users@einsteintoolkit.org <mailto:Users@einsteintoolkit.org> http://lists.einsteintoolkit.org/mailman/listinfo/users-- Erik Schnetter <schnetter@cct.lsu.edu mailto:schnetter@cct.lsu.edu> http://www.perimeterinstitute.ca/personal/eschnetter/
users@lists.einsteintoolkit.org