octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

complie error of oct-fstrm.cc (MinGW build for 3.5.50+)


From: Tatsuro MATSUOKA
Subject: complie error of oct-fstrm.cc (MinGW build for 3.5.50+)
Date: Thu, 4 Mar 2010 17:00:27 +0900 (JST)

Hello


/bin/sh ../libtool  --tag=CXX   --mode=compile g++ -shared-libgcc 
-DHAVE_CONFIG_H -I.
-I../../../hg/octave-work/src -I..  -I/WinDevTools/include -I/GnuWin32/include 
-I../libgnu
-I../../../hg/octave-work/libgnu -I../../../hg/octave-work/libcruft/misc 
-I../liboctave
-I../../../hg/octave-work/liboctave -I. -I../../../hg/octave-work/src  
-I/WinDevTools/include
-I/GnuWin32/include -D_GLIBCXX_DLL -O3 -fomit-frame-pointer  -DHAVE_CONFIG_H 
-mieee-fp
-IC:/Programs/GnuWin32/include -I/WinDevTools/bin/../include/freetype2 
-I/WinDevTools/bin/../include
-Ic:/Programs/WinDevTools/include   -Wall -W -Wshadow -Wold-style-cast -Wformat 
-D_GLIBCXX_DLL -O3
-fomit-frame-pointer  -D_GLIBCXX_DLL -O3 -fomit-frame-pointer -MT 
liboctinterp_la-oct-fstrm.lo -MD -MP
-MF .deps/liboctinterp_la-oct-fstrm.Tpo -c -o liboctinterp_la-oct-fstrm.lo 
`test -f 'oct-fstrm.cc' ||
echo '../../../hg/octave-work/src/'`oct-fstrm.cc
libtool: compile:  g++ -shared-libgcc -DHAVE_CONFIG_H -I. 
-I../../../hg/octave-work/src -I..
-I/WinDevTools/include -I/GnuWin32/include -I../libgnu 
-I../../../hg/octave-work/libgnu
-I../../../hg/octave-work/libcruft/misc -I../liboctave 
-I../../../hg/octave-work/liboctave -I.
-I../../../hg/octave-work/src -I/WinDevTools/include -I/GnuWin32/include 
-D_GLIBCXX_DLL -O3
-fomit-frame-pointer -DHAVE_CONFIG_H -mieee-fp -IC:/Programs/GnuWin32/include
-I/WinDevTools/bin/../include/freetype2 -I/WinDevTools/bin/../include
-Ic:/Programs/WinDevTools/include -Wall -W -Wshadow -Wold-style-cast -Wformat 
-D_GLIBCXX_DLL -O3
-fomit-frame-pointer -D_GLIBCXX_DLL -O3 -fomit-frame-pointer -MT 
liboctinterp_la-oct-fstrm.lo -MD -MP
-MF .deps/liboctinterp_la-oct-fstrm.Tpo -c 
../../../hg/octave-work/src/oct-fstrm.cc  -DDLL_EXPORT
-DPIC -o .libs/liboctinterp_la-oct-fstrm.o
../../../hg/octave-work/src/oct-fstrm.cc: In constructor 
'octave_fstream::octave_fstream(const
std::string&, std::_Ios_O
penmode, oct_mach_info::float_format)':
../../../hg/octave-work/src/oct-fstrm.cc:55: error: no matching function for 
call to
'std::basic_fstream<char, std::char
_traits<char> >::open(const char*, std::_Ios_Openmode&, int)'
c:\programs\mingw\bin\../lib/gcc/mingw32/4.4.0/include/c++/fstream:865: note: 
candidates are: void
std::basic_fstream<_C
harT, _Traits>::open(const char*, std::_Ios_Openmode) [with _CharT = char, 
_Traits =
std::char_traits<char>]
make[3]: *** [liboctinterp_la-oct-fstrm.lo] Error 1
make[3]: Leaving directory `/home/octaves/OctBuild/hg-devel/src'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/octaves/OctBuild/hg-devel/src'
make[1]: *** [all-recursive] Error 1

c:\programs\mingw\bin\../lib/gcc/mingw32/4.4.0/include/c++/fstream:865:
      void
      open(const char* __s,
           ios_base::openmode __mode = ios_base::in | ios_base::out)

oct-fstrm.cc(47-57)

#if CXX_ISO_COMPLIANT_LIBRARY

  fs.open (nm.c_str (), arg_md);

#else
  // Override default protection of 0664 so that umask will appear to
  // do the right thing.

  fs.open (nm.c_str (), arg_md, 0666);

#endif

So I manually add -DCXX_ISO_COMPLIANT_LIBRARY compile went well.

I have checked config.h

/* Define if your C++ runtime library is ISO compliant. */
/* #undef CXX_ISO_COMPLIANT_LIBRARY */

and config.log

configure:8078: checking if C++ library is ISO compliant
configure:8126: g++ -shared-libgcc -o conftest.exe -D_GLIBCXX_DLL -O3 
-fomit-frame-pointer
-I/WinDevTools/include -I/GnuWin32/include -L/WinDevTools/lib -L/GnuWin32/lib 
-lsupc++
-Wl,--allow-multiple-definition conftest.cpp  >&5
In file included from
c:\programs\mingw\bin\../lib/gcc/mingw32/4.4.0/include/c++/backward/strstream:46,
                 from conftest.h:46,
                 from conftest.cpp:31:
c:\programs\mingw\bin\../lib/gcc/mingw32/4.4.0/include/c++/backward/backward_warning.h:28:2:
 warning:
#warning This file includes at least one deprecated or antiquated header which 
may be removed without
further notice at a future date. Please use a non-deprecated interface with 
equivalent functionality
instead. For a listing of replacement headers and interfaces, consult the file 
backward_warning.h. To
disable this warning use -Wno-deprecated.
C:\DOCUME~1\Tatsu\LOCALS~1\Temp\ccgLYjcw.o:conftest.cpp:(.text+0xc): undefined 
reference to
`_imp___ZNSt8ios_base4InitC1Ev'
C:\DOCUME~1\Tatsu\LOCALS~1\Temp\ccgLYjcw.o:conftest.cpp:(.text+0x2c): undefined 
reference to
`_imp___ZNSt8ios_base4InitD1Ev'
collect2: ld returned 1 exit status
configure:8133: $? = 1
configure: failed program was:
| /* confdefs.h.  */
| #define PACKAGE_NAME "GNU Octave"
| #define PACKAGE_TARNAME "octave"
| #define PACKAGE_VERSION "3.3.50+"
| #define PACKAGE_STRING "GNU Octave 3.3.50+"
| #define PACKAGE_BUGREPORT "address@hidden"
| #define PACKAGE "octave"
| #define VERSION "3.3.50+"
| #define OCTAVE_SOURCE 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define __EXTENSIONS__ 1
| #define _ALL_SOURCE 1
| #define _GNU_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define _TANDEM_SOURCE 1
| #define SEPCHAR ';'
| #define SEPCHAR_STR ";"
| #define OCTAVE_IDX_TYPE int
| #define __NO_MATH_INLINES 1
| #define CXX_NEW_FRIEND_TEMPLATE_DECL 1
| /* end confdefs.h.  */
| #include "conftest.h"
| int
| main ()
| {
| std::bitset<50> flags;
|         flags.set();
|         int digits = std::numeric_limits<unsigned long>::digits;
|         digits = 0;
|   ;
|   return 0;
| }
configure:8161: result: no



It is possible to be a GCC-4.4.0 on MinGW problem. I will check it further.

Regards

Tatsuro 
Check of
CXX_ISO_COMPLIANT_LIBRARY
for MinGW seemed  not to be successful.

At the moment I have report the fact.
I will check configure.ac 



--------------------------------------
Get the new Internet Explorer 8 optimized for Yahoo! JAPAN
http://pr.mail.yahoo.co.jp/ie8/


reply via email to

[Prev in Thread] Current Thread [Next in Thread]