0

I am attempting to use the version 1.3 of the palabos cfd library (which can be found at http://www.palabos.org/ ) in version 13.12 of Code::Blocks, using the progect file that was provided with the palabos distribution. Things went fine until i attempted to activate palabos's paralell processing features. The advice given in the palabos documentation is mostly directed tword people running the program from the command line in unix based systems. As such the advise they give regarding how to activate the built in paralellization features is: "edit the Makefile, set MPI_PARALLEL=true, and recompile" However, Code::blocks does not use makefiles by default, I have tried using the included makefile (check the download in the same folder as the "permeability" example), but it gives an error about there being no rule for release (even after i have changed seffings so that it should work in windows). What should i do?

Makefile contents:

palabosRoot   = C:\Users\estone\Documents\summers\summer 2014\Soil Research\palabos v1.3r0
# Name of source files in current directory to compile and link with Palabos
projectFiles = permeability.cpp

# Set optimization flags on/off
optimize     = true
# Set debug mode and debug flags on/off
debug        = false
# Set profiling flags on/off
profile      = false
# Set MPI-parallel mode on/off (parallelism in cluster-like environment)
MPIparallel  = true
# Set SMP-parallel mode on/off (shared-memory parallelism)
SMPparallel  = false
# Decide whether to include calls to the POSIX API. On non-POSIX systems,
#   including Windows, this flag must be false, unless a POSIX environment is
#   emulated (such as with Cygwin).
usePOSIX     = false

# Path to external libraries (other than Palabos)
libraryPaths =
# Path to inlude directories (other than Palabos)
includePaths =
# Dynamic and static libraries (other than Palabos)
libraries    =

# Compiler to use without MPI parallelism
serialCXX    = g++
# Compiler to use with MPI parallelism
parallelCXX  = mpicxx
# General compiler flags (e.g. -Wall to turn on all warnings on g++)
compileFlags = -Wall -Wnon-virtual-dtor
# General linker flags (don't put library includes into this flag)
linkFlags    =
# Compiler flags to use when optimization mode is on
optimFlags   = -O3
# Compiler flags to use when debug mode is on
debugFlags   = -g
# Compiler flags to use when profile mode is on
profileFlags = -pg


##########################################################################
# All code below this line is just about forwarding the options
# to SConstruct. It is recommended not to modify anything there.
##########################################################################

SCons     = $(palabosRoot)/scons/scons.py -j 2 -f $(palabosRoot)/SConstruct

SConsArgs = palabosRoot=$(palabosRoot) \
            projectFiles="$(projectFiles)" \
            optimize=$(optimize) \
            debug=$(debug) \
            profile=$(profile) \
            MPIparallel=$(MPIparallel) \
            SMPparallel=$(SMPparallel) \
            usePOSIX=$(usePOSIX) \
            serialCXX=$(serialCXX) \
            parallelCXX=$(parallelCXX) \
            compileFlags="$(compileFlags)" \
            linkFlags="$(linkFlags)" \
            optimFlags="$(optimFlags)" \
            debugFlags="$(debugFlags)" \
        profileFlags="$(profileFlags)" \
        libraryPaths="$(libraryPaths)" \
        includePaths="$(includePaths)" \
        libraries="$(libraries)"

compile:
    python $(SCons) $(SConsArgs)

clean:
    python $(SCons) -c $(SConsArgs)
    /bin/rm -vf `find $(palabosRoot) -name '*~'`
  • I wonder if this question might help you: http://stackoverflow.com/q/5141042/10077 – Fred Larson Jun 26 '14 at 13:29
  • I tried doing as that comment suggested but i recieve the error `"Palabos - Release": The compiler's setup (MPICC) is invalid, so Code::Blocks cannot find/run the compiler. Probably the toolchain path within the compiler options is not setup correctly?! (Do you have a compiler installed?) Goto "Settings->Compiler...->Global compiler settings->MPICC->Toolchain executables" and fix the compiler's setup. Skipping...` Despite the fact that i have installed the compiller. Notably, my compiler's directory does not seem to include "mpicc" or "mpicxx" – user3665620 Jun 27 '14 at 01:31
  • Some of those settings may be specific to MPICH2. It looks like your compiler command should be `mpicxx`. You'll probably have to adjust the settings based on what's in the makefile you posted. – Fred Larson Jun 27 '14 at 03:14

0 Answers0