← Back to team overview

dolfin team mailing list archive

Re: Build error on Windows

 

On Sun, December 21, 2008 22:51, Anders Logg wrote:
> On Sun, Dec 21, 2008 at 09:46:24PM +0100, Johannes Ring wrote:
>> On Sun, December 21, 2008 21:20, Anders Logg wrote:
>> > On Sun, Dec 21, 2008 at 09:09:58PM +0100, Johannes Ring wrote:
>> >> On Sun, December 21, 2008 20:34, Anders Logg wrote:
>> >> > On Sun, Dec 21, 2008 at 06:43:10PM +0100, Johannes Ring wrote:
>> >> >> Hi,
>> >> >>
>> >> >> I get the error below when trying to build DOLFIN on Windows. It
>> is a
>> >> >> fresh hg clone and all optional dependencies are turned off. MPI
>> is
>> >> not
>> >> >> installed (yet).
>> >> >>
>> >> >> Any ideas?
>> >> >>
>> >> >> Johannes
>> >> >
>> >> > Looks like swig can't spot the difference between int* and double*
>> >> > (I guess it's casting everything to void*).
>> >> >
>> >> > I've added an ignore to dolfin/swig/ignores.i. See if it helps.
>> >>
>> >> Yes, it did but there are still problems:
>> >>
>> >> swig -o dolfin\swig\cpp_wrap.cc -python -c++ -shadow -Iinclude\swig
>> >> -IC:\Python25\include
>> -IC:\Python25\lib\site-packages\numpy\core\include
>> >> -Ic:\johannr\jhbuildbot\fenics\include -IC:\Python25\include
>> >> -Ic:\local\src\boost_1_35_0\ -Ic:\local\include dolfin\swig\dolfin.i
>> >> c++ -o dolfin\swig\cpp_wrap.o -c -Wall -pipe -ansi -Werror -DDEBUG -g
>> >> -DNDEBUG -O2 -DPACKAGE_VERSION=\"0.8.1\" -fno-strict-aliasing -I.
>> >> -IC:\johannr\jhbuildbot\fenics\include -IC:\local\src\boost_1_35_0
>> >> -IC:\local\include -IC:\Python25\include -IC:\Python25\include
>> >> -IC:\Python25\lib\site-packages\numpy\core\include
>> >> -IC:\johannr\jhbuildbot\fenics\include -IC:\Python25\include
>> >> -IC:\local\src\boost_1_35_0 -IC:\local\include
>> dolfin\swig\cpp_wrap.cc
>> >> c++ -shared -Wl,--enable-auto-import -o dolfin\swig\_cpp.pyd
>> >> dolfin\swig\cpp_wrap.o -Ldolfin -LC:\Python25\libs -LC:\Python25\libs
>> >> -LC:\local\bin -LC:\local\lib -lpython25 -lpython25 -lxml2 -ldolfin
>> >> -Wl,--out-implib,dolfin\swig\libcpp.a
>> >> -Wl,--output-def,dolfin\swig\cpp.def
>> >> scons: building terminated because of errors.
>> >> Creating library file: dolfin\swig\libcpp.a
>> >> dolfin\swig\cpp_wrap.o: In function
>> >> `wrap_MPI_gather':dolfin/swig/cpp_wrap.cc:62774: undefined reference
>> to
>> >> `dolfin::MPI::gather(std::vector<unsigned int,
>> std::allocator<unsigned
>> >> int> >&)'
>> >> dolfin\swig\cpp_wrap.o: In function
>> >> `wrap_MPI_distribute__SWIG_0':dolfin/swig/cpp_wrap.cc:62620:
>> undefined
>> >> reference to `dolfin::MPI::distribute(std::vector<unsigned int,
>> >> std::allocator<unsigned int> >&, std::vector<unsigned int,
>> >> std::allocator<unsigned int> >&)'
>> >> dolfin\swig\cpp_wrap.o: In function
>> >> `wrap_MPI_distribute__SWIG_1':dolfin/swig/cpp_wrap.cc:62679:
>> undefined
>> >> reference to `dolfin::MPI::distribute(std::vector<double,
>> >> std::allocator<double> >&, std::vector<unsigned int,
>> >> std::allocator<unsigned int> >&)'
>> >> collect2: ld returned 1 exit status
>> >> scons: *** [dolfin\swig\_cpp.pyd] Error 1
>> >>
>> >> Johannes
>> >
>> > The implementations of these functions were missing in MPI.cpp.
>> > This should be fixed now.
>>
>> Now it fails when compiling MPI.cpp:
>>
>> c++ -o dolfin\main\MPI.o -c -Wall -pipe -ansi -Werror -DDEBUG -g
>> -DNDEBUG
>> -O2 -DPACKAGE_VERSION=\"0.8.1\" -I.
>> -IC:\johannr\jhbuildbot\fenics\include
>> -IC:\local\src\boost_1_35_0 -IC:\local\include dolfin\main\MPI.cpp
>> cc1plus.exe: warnings being treated as errors
>> dolfin\main\MPI.cpp: In static member function 'static dolfin::uint
>> dolfin::MPI::send_recv(double*, dolfin::uint, dolfin::uint, double*,
>> dolfin::uint, dolfin::uint)':
>> dolfin\main\MPI.cpp:168: warning: control reaches end of non-void
>> function
>> dolfin\main\MPI.cpp: In static member function 'static dolfin::uint
>> dolfin::MPI::send_recv(dolfin::uint*, dolfin::uint, dolfin::uint,
>> dolfin::uint*, dolfin::uint, dolfin::uint)':
>> dolfin\main\MPI.cpp:162: warning: control reaches end of non-void
>> function
>> scons: building terminated because of errors.
>> scons: *** [dolfin\main\MPI.o] Error 1
>>
>> Johannes
>
> Fixed (I hope).

Yes, but now I got this:

c++ -o dolfin\main\MPI.o -c -Wall -pipe -ansi -Werror -DDEBUG -g -DNDEBUG
-O2 -DPACKAGE_VERSION=\"0.8.1\" -I. -IC:\johannr\jhbuildbot\fenics\include
-IC:\local\src\boost_1_35_0 -IC:\local\include dolfin\main\MPI.cpp
scons: building terminated because of errors.
dolfin\main\MPI.cpp: In static member function 'static void
dolfin::MPI::gather(std::vector<unsigned int, std::allocator<unsigned int>
>&)':
dolfin\main\MPI.cpp:156: error: return-statement with a value, in function
returning 'void'
scons: *** [dolfin\main\MPI.o] Error 1

Johannes




Follow ups

References