[Dev-C++] compilation of Matrix Template Library for Win32 executable
Open Source C & C++ IDE for Windows
Brought to you by:
claplace
|
From: Robert M D. <bob...@us...> - 2002-09-09 12:05:52
|
I am having difficulty getting one of the example programs "contrib/examples/vec_min.cc" of the Matrix Template Library (developed for high-performance, numerical computing, see http://www.osl.iu.edu/research/mtl/ ) to compile properly. I'm using the Mingw port of gcc 3.2 (www.mingw.org/) to create a native Win32 executable. The makefile and compiler error messages are provided below. Any help is greatly appreciated! Bob Dorazio /****************************************** MAKEFILE *****************************/ # Project: TestMTL CC = g++.exe OBJ = vec_min.o LIBS = -Lc:/MinGW/lib INCS = -Ic:/MinGW/include -Ic:/MingGW/include/c++/3.2 -Ic:/mtl-2.1.2-20 BIN = TestMTL.exe CFLAGS = $(INCS) -s .PHONY: all all-before all-after clean clean-custom all: all-before TestMTL.exe all-after clean: clean-custom rm -f $(OBJ) $(BIN) $(BIN): $(OBJ) $(CC) $(OBJ) -o TestMTL.exe $(LIBS) $(CFLAGS) vec_min.o: vec_min.cc $(CC) -c vec_min.cc -o vec_min.o $(CFLAGS) /****************************************** COMPILER MESSAGES ***********************************************/ C:\Junk\hero>mingw32-make g++.exe -c vec_min.cc -o vec_min.o -Ic:/MinGW/include -Ic:/MingGW/include/c++/3.2 -Ic:/mtl-2.1.2-20 -s In file included from c:/mtl-2.1.2-20/mtl/light1D.h:34, from c:/mtl-2.1.2-20/mtl/dense1D.h:37, from vec_min.cc:2: c:/mtl-2.1.2-20/mtl/matrix_traits.h:10: parse error before `__attribute__' c:/mtl-2.1.2-20/mtl/matrix_traits.h:153: `SPARSE' was not declared in this scope c:/mtl-2.1.2-20/mtl/matrix_traits.h:153: enumerator value for `id' not integer constant In file included from c:/mtl-2.1.2-20/mtl/mtl.h:42, from vec_min.cc:3: c:/mtl-2.1.2-20/mtl/abs.h: In function `double std::abs(double)': c:/mtl-2.1.2-20/mtl/abs.h:8: redefinition of `double std::abs(double)' c:/MinGW/include/c++/3.2/cmath:87: `double std::abs(double)' previously defined here c:/mtl-2.1.2-20/mtl/abs.h:8: redefinition of `double std::abs(double)' c:/MinGW/include/c++/3.2/cmath:87: `double std::abs(double)' previously defined here c:/mtl-2.1.2-20/mtl/abs.h: In function `float std::abs(float)': c:/mtl-2.1.2-20/mtl/abs.h:11: redefinition of `float std::abs(float)' c:/MinGW/include/c++/3.2/cmath:91: `float std::abs(float)' previously defined here c:/mtl-2.1.2-20/mtl/abs.h:11: redefinition of `float std::abs(float)' c:/MinGW/include/c++/3.2/cmath:91: `float std::abs(float)' previously defined here In file included from c:/mtl-2.1.2-20/mtl/compressed1D.h:38, from c:/mtl-2.1.2-20/mtl/matrix.h:45, from c:/mtl-2.1.2-20/mtl/mtl.h:52, from vec_min.cc:3: c:/mtl-2.1.2-20/mtl/entry.h: In function `mtl::elt_ref<OneD>::value_type mtl::operator+(const mtl::elt_ref<T>&, const mtl::elt_ref<U>&)': c:/mtl-2.1.2-20/mtl/entry.h:255: warning: `typename mtl::elt_ref<OneD>::value_type' is implicitly a typename c:/mtl-2.1.2-20/mtl/entry.h:255: warning: implicit typename is deprecated, please see the documentation for details c:/mtl-2.1.2-20/mtl/entry.h: In function `mtl::elt_ref<OneD>::value_type mtl::operator-(const mtl::elt_ref<T>&, const mtl::elt_ref<U>&)': c:/mtl-2.1.2-20/mtl/entry.h:256: warning: `typename mtl::elt_ref<OneD>::value_type' is implicitly a typename c:/mtl-2.1.2-20/mtl/entry.h:256: warning: implicit typename is deprecated, please see the documentation for details c:/mtl-2.1.2-20/mtl/entry.h: In function `mtl::elt_ref<OneD>::value_type mtl::operator*(const mtl::elt_ref<T>&, const mtl::elt_ref<U>&)': c:/mtl-2.1.2-20/mtl/entry.h:257: warning: `typename mtl::elt_ref<OneD>::value_type' is implicitly a typename c:/mtl-2.1.2-20/mtl/entry.h:257: warning: implicit typename is deprecated, please see the documentation for details c:/mtl-2.1.2-20/mtl/entry.h: In function `mtl::elt_ref<OneD>::value_type mtl::operator/(const mtl::elt_ref<T>&, const mtl::elt_ref<U>&)': c:/mtl-2.1.2-20/mtl/entry.h:258: warning: `typename mtl::elt_ref<OneD>::value_type' is implicitly a typename c:/mtl-2.1.2-20/mtl/entry.h:258: warning: implicit typename is deprecated, please see the documentation for details c:/mtl-2.1.2-20/mtl/entry.h: In function `bool mtl::operator==(const mtl::elt_ref<T>&, const mtl::elt_ref<U>&)': c:/mtl-2.1.2-20/mtl/entry.h:275: warning: `typename mtl::elt_ref<OneD>::value_type' is implicitly a typename c:/mtl-2.1.2-20/mtl/entry.h:275: warning: implicit typename is deprecated, please see the documentation for details c:/mtl-2.1.2-20/mtl/entry.h: In function `bool mtl::operator!=(const mtl::elt_ref<T>&, const mtl::elt_ref<U>&)': c:/mtl-2.1.2-20/mtl/entry.h:276: warning: `typename mtl::elt_ref<OneD>::value_type' is implicitly a typename c:/mtl-2.1.2-20/mtl/entry.h:276: warning: implicit typename is deprecated, please see the documentation for details c:/mtl-2.1.2-20/mtl/entry.h: In function `bool mtl::operator<(const mtl::elt_ref<T>&, const mtl::elt_ref<U>&)': c:/mtl-2.1.2-20/mtl/entry.h:277: warning: `typename mtl::elt_ref<OneD>::value_type' is implicitly a typename c:/mtl-2.1.2-20/mtl/entry.h:277: warning: implicit typename is deprecated, please see the documentation for details c:/mtl-2.1.2-20/mtl/entry.h: In function `bool mtl::operator>(const mtl::elt_ref<T>&, const mtl::elt_ref<U>&)': c:/mtl-2.1.2-20/mtl/entry.h:278: warning: `typename mtl::elt_ref<OneD>::value_type' is implicitly a typename c:/mtl-2.1.2-20/mtl/entry.h:278: warning: implicit typename is deprecated, please see the documentation for details c:/mtl-2.1.2-20/mtl/entry.h: In function `bool mtl::operator<=(const mtl::elt_ref<T>&, const mtl::elt_ref<U>&)': c:/mtl-2.1.2-20/mtl/entry.h:279: warning: `typename mtl::elt_ref<OneD>::value_type' is implicitly a typename c:/mtl-2.1.2-20/mtl/entry.h:279: warning: implicit typename is deprecated, please see the documentation for details c:/mtl-2.1.2-20/mtl/entry.h: In function `bool mtl::operator>=(const mtl::elt_ref<T>&, const mtl::elt_ref<U>&)': c:/mtl-2.1.2-20/mtl/entry.h:280: warning: `typename mtl::elt_ref<OneD>::value_type' is implicitly a typename c:/mtl-2.1.2-20/mtl/entry.h:280: warning: implicit typename is deprecated, please see the documentation for details c:/mtl-2.1.2-20/mtl/entry.h: In function `mtl::const_elt_ref<OneD>::value_type mtl::operator+(const mtl::const_elt_ref<OneD>&, const mtl::const_elt_ref<U>&)': c:/mtl-2.1.2-20/mtl/entry.h:298: warning: `typename mtl::const_elt_ref<OneD>::value_type' is implicitly a typename c:/mtl-2.1.2-20/mtl/entry.h:298: warning: implicit typename is deprecated, please see the documentation for details c:/mtl-2.1.2-20/mtl/entry.h: In function `mtl::const_elt_ref<OneD>::value_type mtl::operator-(const mtl::const_elt_ref<OneD>&, const mtl::const_elt_ref<U>&)': c:/mtl-2.1.2-20/mtl/entry.h:299: warning: `typename mtl::const_elt_ref<OneD>::value_type' is implicitly a typename c:/mtl-2.1.2-20/mtl/entry.h:299: warning: implicit typename is deprecated, please see the documentation for details c:/mtl-2.1.2-20/mtl/entry.h: In function `mtl::const_elt_ref<OneD>::value_type mtl::operator*(const mtl::const_elt_ref<OneD>&, const mtl::const_elt_ref<U>&)': c:/mtl-2.1.2-20/mtl/entry.h:300: warning: `typename mtl::const_elt_ref<OneD>::value_type' is implicitly a typename c:/mtl-2.1.2-20/mtl/entry.h:300: warning: implicit typename is deprecated, please see the documentation for details c:/mtl-2.1.2-20/mtl/entry.h: In function `mtl::const_elt_ref<OneD>::value_type mtl::operator/(const mtl::const_elt_ref<OneD>&, const mtl::const_elt_ref<U>&)': c:/mtl-2.1.2-20/mtl/entry.h:301: warning: `typename mtl::const_elt_ref<OneD>::value_type' is implicitly a typename c:/mtl-2.1.2-20/mtl/entry.h:301: warning: implicit typename is deprecated, please see the documentation for details c:/mtl-2.1.2-20/mtl/entry.h: In function `bool mtl::operator==(const mtl::const_elt_ref<OneD>&, const mtl::const_elt_ref<U>&)': c:/mtl-2.1.2-20/mtl/entry.h:320: warning: `typename mtl::const_elt_ref<OneD>::value_type' is implicitly a typename c:/mtl-2.1.2-20/mtl/entry.h:320: warning: implicit typename is deprecated, please see the documentation for details c:/mtl-2.1.2-20/mtl/entry.h: In function `bool mtl::operator!=(const mtl::const_elt_ref<OneD>&, const mtl::const_elt_ref<U>&)': c:/mtl-2.1.2-20/mtl/entry.h:321: warning: `typename mtl::const_elt_ref<OneD>::value_type' is implicitly a typename c:/mtl-2.1.2-20/mtl/entry.h:321: warning: implicit typename is deprecated, please see the documentation for details c:/mtl-2.1.2-20/mtl/entry.h: In function `bool mtl::operator<(const mtl::const_elt_ref<OneD>&, const mtl::const_elt_ref<U>&)': c:/mtl-2.1.2-20/mtl/entry.h:322: warning: `typename mtl::const_elt_ref<OneD>::value_type' is implicitly a typename c:/mtl-2.1.2-20/mtl/entry.h:322: warning: implicit typename is deprecated, please see the documentation for details c:/mtl-2.1.2-20/mtl/entry.h: In function `bool mtl::operator>(const mtl::const_elt_ref<OneD>&, const mtl::const_elt_ref<U>&)': c:/mtl-2.1.2-20/mtl/entry.h:323: warning: `typename mtl::const_elt_ref<OneD>::value_type' is implicitly a typename c:/mtl-2.1.2-20/mtl/entry.h:323: warning: implicit typename is deprecated, please see the documentation for details c:/mtl-2.1.2-20/mtl/entry.h: In function `bool mtl::operator<=(const mtl::const_elt_ref<OneD>&, const mtl::const_elt_ref<U>&)': c:/mtl-2.1.2-20/mtl/entry.h:324: warning: `typename mtl::const_elt_ref<OneD>::value_type' is implicitly a typename c:/mtl-2.1.2-20/mtl/entry.h:324: warning: implicit typename is deprecated, please see the documentation for details c:/mtl-2.1.2-20/mtl/entry.h: In function `bool mtl::operator>=(const mtl::const_elt_ref<OneD>&, const mtl::const_elt_ref<U>&)': c:/mtl-2.1.2-20/mtl/entry.h:325: warning: `typename mtl::const_elt_ref<OneD>::value_type' is implicitly a typename c:/mtl-2.1.2-20/mtl/entry.h:325: warning: implicit typename is deprecated, please see the documentation for details In file included from c:/mtl-2.1.2-20/mtl/matrix.h:45, from c:/mtl-2.1.2-20/mtl/mtl.h:52, from vec_min.cc:3: c:/mtl-2.1.2-20/mtl/compressed1D.h: At global scope: c:/mtl-2.1.2-20/mtl/compressed1D.h:87: `index_from_zero' was not declared in this scope In file included from c:/mtl-2.1.2-20/mtl/matrix.h:52, from c:/mtl-2.1.2-20/mtl/mtl.h:52, from vec_min.cc:3: c:/mtl-2.1.2-20/mtl/dense2D.h: In member function `void mtl::dense2D<T, OffsetGen, MM, NN>::resize(mtl::generic_dense2D<std::vector<T, std::allocator<_CharT> >, mtl::refcnt_ptr<std::vector<T, std::allocator<_CharT> > >, OffsetGen, MM, NN>::size_type, mtl::generic_dense2D<std::vector<T, std::allocator<_CharT> >, mtl::refcnt_ptr<std::vector<T, std::allocator<_CharT> > >, OffsetGen, MM, NN>::size_type)': c:/mtl-2.1.2-20/mtl/dense2D.h:1232: warning: `typename mtl::dense2D<T, OffsetGen, MM, NN>::rep_ptr' is implicitly a typename c:/mtl-2.1.2-20/mtl/dense2D.h:1232: warning: implicit typename is deprecated, please see the documentation for details In file included from c:/mtl-2.1.2-20/mtl/matrix.h:53, from c:/mtl-2.1.2-20/mtl/mtl.h:52, from vec_min.cc:3: c:/mtl-2.1.2-20/mtl/array2D.h: In member function `void mtl::array2D<OneD_>::print() const': c:/mtl-2.1.2-20/mtl/array2D.h:319: warning: `typename std::vector<T, std::allocator<_CharT> >::const_iterator' is implicitly a typename c:/mtl-2.1.2-20/mtl/array2D.h:319: warning: implicit typename is deprecated, please see the documentation for details In file included from c:/mtl-2.1.2-20/mtl/matrix.h:55, from c:/mtl-2.1.2-20/mtl/mtl.h:52, from vec_min.cc:3: c:/mtl-2.1.2-20/mtl/envelope2D.h: At global scope: c:/mtl-2.1.2-20/mtl/envelope2D.h:362: warning: `typename mtl::envelope2D<T>::vec_ref::reference' is implicitly a typename c:/mtl-2.1.2-20/mtl/envelope2D.h:362: warning: implicit typename is deprecated, please see the documentation for details c:/mtl-2.1.2-20/mtl/envelope2D.h:366: warning: `typename mtl::envelope2D<T>::vec_ref::reference' is implicitly a typename c:/mtl-2.1.2-20/mtl/envelope2D.h:366: warning: implicit typename is deprecated, please see the documentation for details In file included from c:/mtl-2.1.2-20/mtl/matrix.h:60, from c:/mtl-2.1.2-20/mtl/mtl.h:52, from vec_min.cc:3: c:/mtl-2.1.2-20/mtl/uplo.h: In member function `std::pair<int, int> mtl::dynamic_uplo__::bandwidth(int, int) const': c:/mtl-2.1.2-20/mtl/uplo.h:90: `upper' undeclared (first use this function) c:/mtl-2.1.2-20/mtl/uplo.h:90: (Each undeclared identifier is reported only once for each function it appears in.) c:/mtl-2.1.2-20/mtl/uplo.h:93: `unit_upper' undeclared (first use this function) c:/mtl-2.1.2-20/mtl/uplo.h:96: `lower' undeclared (first use this function) c:/mtl-2.1.2-20/mtl/uplo.h:99: `unit_lower' undeclared (first use this function) In file included from c:/mtl-2.1.2-20/mtl/mtl.h:52, from vec_min.cc:3: c:/mtl-2.1.2-20/mtl/matrix.h: At global scope: c:/mtl-2.1.2-20/mtl/matrix.h:188: `internal' was not declared in this scope c:/mtl-2.1.2-20/mtl/matrix.h:211: `internal' was not declared in this scope c:/mtl-2.1.2-20/mtl/matrix.h:276: `dynamic_uplo' was not declared in this scope c:/mtl-2.1.2-20/mtl/matrix.h:323: `dynamic_uplo' was not declared in this scope c:/mtl-2.1.2-20/mtl/matrix.h:334: `dynamic_uplo' was not declared in this scope c:/mtl-2.1.2-20/mtl/matrix.h:385: `internal' was not declared in this scope c:/mtl-2.1.2-20/mtl/matrix.h:423: `internal' was not declared in this scope c:/mtl-2.1.2-20/mtl/matrix.h:426: parse error before `__attribute__' c:/mtl-2.1.2-20/mtl/matrix.h:426: missing ';' before right brace c:/mtl-2.1.2-20/mtl/matrix.h:438: `internal' was not declared in this scope c:/mtl-2.1.2-20/mtl/matrix.h:500: `internal' was not declared in this scope c:/mtl-2.1.2-20/mtl/matrix.h:501: `index_from_zero' was not declared in this scope c:/mtl-2.1.2-20/mtl/matrix.h:559: parse error before `<' token c:/mtl-2.1.2-20/mtl/matrix.h:562: `ARRAY' was not declared in this scope c:/mtl-2.1.2-20/mtl/matrix.h:562: `OneD' was not declared in this scope c:/mtl-2.1.2-20/mtl/matrix.h:562: parse error before `::' token c:/mtl-2.1.2-20/mtl/matrix.h:593: `internal' was not declared in this scope c:/mtl-2.1.2-20/mtl/matrix.h:594: definition of `struct envelope' inside template parameter list c:/mtl-2.1.2-20/mtl/matrix.h:595: confused by earlier errors, bailing out mingw32-make: *** [vec_min.o] Error 1 ****************************************************************************** Bob Dorazio United States Geological Survey 7920 NW 71 Street Gainesville, Florida 32653 Phone: (352) 378-8181 x373 Fax: (352) 378-4956 Email: bdo...@us... Internet: www.fcsc.usgs.gov |