Comments (8)
Hi Ran,
Thanks for reaching out! I'm sorry you ran into compiler issues, but on the upside this one should be easy to resolve :-)
That error crops up sometimes. The issue is that some compilers have different restrictions on how 'constants' are / can be treated in OpenMP statements. I haven't found a clean solution that'll work for all cases yet, but in the mean time there's an easy fix that should allow it to compile.
If you modify line 133 of NETCDF_IO/write_field_to_output.cpp
to remove fmiddle
, that should resolve the issue [ there might be a second variable that needs to be removed as well, but a similar error will crop up to tell you which one ]. As far as I remember, this is the only file that needs to be modified around that compiler issue.
For the sake of explicit clarity:
- Line 133 is currently
default(none) shared(output_field, field, mask, fmiddle, scale_factor) \
- Needs to be changed to
default(none) shared(output_field, field, mask, scale_factor) \
Let me know if you run into any further issues :-)
from flowsieve.
Hi Bastorer,
Thank you very much for your help! I came over the error about fmiddle
along with your guideline and I came to the second error as you predicted. But I'm not sure this error is similar to the last one. This error is as follows:
Functions/dataset_class.cpp:142:65: error: ‘dataset::areas’ is not a variable in clause ‘shared’ reduction(+ : local_area, local_area_water_only) ^ Functions/dataset_class.cpp:142:65: error: ‘dataset::mask’ is not a variable in clause ‘shared’ Functions/dataset_class.cpp:145:43: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (Ilat = 0; Ilat < Nlat; ++Ilat) { ^ Functions/dataset_class.cpp:146:47: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (Ilon = 0; Ilon < Nlon; ++Ilon) { ^ make: *** [Functions/dataset_class.o] Error 1
Attached is the detailed make log. Many thanks again!
Sincerely,
Ran
from flowsieve.
Hi Ran,
Hmm, those are unexpected. Could you send a copy of your system.mk
file?
Regards,
Ben
from flowsieve.
Hi Ran,
Hmm, those are unexpected. Could you send a copy of your
system.mk
file?
Regards,
Ben
Hi Ben,
It's okay~ systme.mk
is as follows:
CXX := mpicc -std=c++11
MPICXX := mpicc -std=c++11
#mpicxx
# Linking flags for netcdf
LINKS:=-lnetcdf -lhdf5_hl -lhdf5 -lz -lcurl -lm -fopenmp
# Default compiler flags
CFLAGS:=-Wall
# Debug flags
DEBUG_FLAGS:=-g
DEBUG_LDFLAGS:=-g
# Basic optimization flags
OPT_FLAGS:=-O3
# Extra optimization flags (intel inter-process optimizations)
#EXTRA_OPT_FLAGS:=-ip -ipo
# Specify optimization flags for ALGLIB
ALGLIB_OPT_FLAGS:=-O3 -DAE_CPU=AE_INTEL
# Modules are automatically on lib dir
NETCDF_LIBS=
nc-config --cxx4libs
NETCDF_INCS=nc-config --cxx4flags
LIB_DIRS:=${NETCDF_LIBS}
INC_DIRS:=${NETCDF_INCS}
Cheers,
Ran
from flowsieve.
My MPI compiler is also Intel /opt/compiler/intel2018u4/compilers_and_libraries_2018.5.274/linux/mpi/intel64/bin
from flowsieve.
Hi Ran,
Thanks! I'll look into it a little deeper and will get back to you soon.
Regards,
Ben
from flowsieve.
Hi Ran,
What's the output of mpicc --version
on your system?
Also, can you retry compiling with std=c++14
instead of c++11
? I'm not sure how much changed between those standards, but development used the c++14
standard.
Regards,
Ben
from flowsieve.
Hi Ran,
I'm going to go ahead and close this issue. We've made some updates recently on the openmp statements (particularly in regards to GCC support), that might resolve some of the issues that you were running into.
If you try installing FlowSieve again and run into issues, feel free to open a new ticket. We could try to schedule a Zoom meeting to work through set-up issues if that would help.
Regards,
Ben
from flowsieve.
Related Issues (20)
- When does filter commute with derivatives? HOT 5
- Scalar Tutorial HOT 4
- Makefile for Jasmin HOT 14
- question about irregular longitude and latitude, and many times HOT 4
- Cannot find -lhdf5 HOT 9
- Specify minimum requirements for installation in documentation HOT 7
- Installation errors with gcc 10 HOT 14
- Helmholtz decomposition in a high-resolution current HOT 2
- Add a copy of `constants.hpp` with the specific values in Tutorials HOT 3
- Example of usage with MPI parallelism HOT 6
- Filering on cartesian grid HOT 2
- How to make an appropriate system.mk file HOT 2
- The range to which coarse-grain is performed locally HOT 8
- ''from matpy import FiniteDiff'' failed HOT 2
- Compilation error
- Successfull compile but 'Assertion `input_nc_format == (3)' failed.' on JASMIN HPC
- Errors, compute_KE_spectra_and_slopes.cpp:(.text+0x139a): undefined reference to functions, such as `potential_vel_from_F HOT 8
- About Parallelization HOT 1
- Some improvement HOT 1
- FlowSieve to compute the kinetic energy spectrum
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from flowsieve.