Your post made me realize my mistake! I was thinking only of the preprocessor
definitions for compiling cvAdvDiff_non_p.c, forgetting about the previously
built library sundials_nvecparallel.lib, which is of course where
nvector_parallel.c was compiled. When I rebuild that library with OMPI_IMPORTS
my problem disappears.
Thanks Shiqing, and sorry Damien!
On 3/10/2012 4:02 a.m., Shiqing Fan wrote:
> Hi Gib,
> Actually, I also think defining OMPI_IMPORTS would solve the problem. And I
> also double checked the released binaries and the source code, those symbols
> are surely exported. So I'm now really confused.
> Gib, do you know how to generate preprocessor files in VS 2005? It should be
> one option under the C/C++ settings of the project. If you can provide me the
> preprocessor file of nvector_parallel.c, it would be helpful to find out the
> On 2012-10-02 8:25 AM, Gib Bogle wrote:
>> They don't make any difference. I had them in, but dropped them when I found
>> that the mpicc build didn't need them.
>> From: users-bounces_at_[hidden] [users-bounces_at_[hidden]] on behalf of
>> Damien Hocking [damien_at_[hidden]]
>> Sent: Tuesday, 2 October 2012 7:21 p.m.
>> To: Open MPI Users
>> Subject: Re: [OMPI users] Linking failure on Windows
>> There's two imports missing from there, OPAL_IMPORTS and ORTE_IMPORTS.
>> That might be part of it.
>> On 01/10/2012 10:20 PM, Gib Bogle wrote:
>>> I guess it's conceivable that one of these Sundials include files is
>>> doing something:
>>> #include <cvode/cvode.h> /* prototypes for CVODE
>>> fcts. */
>>> #include <nvector/nvector_parallel.h> /* definition of N_Vector and
>>> macros /
>>> #include <sundials/sundials_types.h> /* definition of realtype /
>>> #include <sundials/sundials_math.h> /* definition of EXP */
>>> I am a complete beginner with Sundials, so I have no idea how it might
>>> interfere with the preprocessor definitions.
>>> Here is the compile command line from VS:
>>> /O2 /Ob2 /I "E:\sundials-2.5.0\include" /I "E:\Sundials-Win32\include"
>>> /I "c:\Program Files (x86)\OpenMPI_v1.6.2-win32\include" /D "WIN32" /D
>>> "_WINDOWS" /D "NDEBUG" /D "OMPI_IMPORTS" /D "_CRT_SECURE_NO_WARNINGS"
>>> /D "CMAKE_INTDIR=\"Release\"" /D "_MBCS" /FD /MD
>>> /W3 /c /TC /errorReport:prompt
>>> On 2/10/2012 5:06 p.m., Damien Hocking wrote:
>>>> So mpicc builds it completely? The only thing I can think of is look
>>>> closely at both the compile and link command lines and see what's
>>>> different. It might be going sideways at the compile from something
>>>> in an include with a preprocessor def.
>>> users mailing list
>> users mailing list
>> users mailing list
Dr. Gib Bogle
Senior Research Fellow
Auckland Bioengineering Institute
University of Auckland
(64-9) 373-7599 Ext. 87030