octave-maintainers
[Top][All Lists]
Advanced

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

Re: link error during liboctave on MinGW in the development branch (symb


From: Tatsuro MATSUOKA
Subject: Re: link error during liboctave on MinGW in the development branch (symbols of in libgnu.a ?)
Date: Sun, 27 Dec 2009 05:31:36 +0900 (JST)

Hello


--- Tatsuro MATSUOKA  wrote:

> Hello
> 
> I have been trying to build octave from the source trees in the development 
> branch.
> 
> Now I have met link errors during linking liboctave.
> 
> libtool: link: g++ -shared-libgcc -shared -nostdlib
> c:/programs/mingw/bin/../lib/gcc/mingw32/4.4.0/../../../dllcrt2.o
> c:/programs/mingw/bin/../lib/gcc/mingw32/4.4.0/crtbegin.o 
> .libs/liboctave.la.lnkscript
> -Wl,--whole-archive ../libgnu/.libs/libgnu.a -Wl,--no-whole-archive 
> -Lc:/Programs/OctaveBuild/lib
> -LC:/Programs/WinDevTools/lib -Lc:/Programs/GnuWin32/lib 
> ../libcruft/.libs/libcruft.dll.a
> -Lc:/programs/mingw/bin/../lib/gcc/mingw32/4.4.0 
> -L/mingw/src/gccbf/mingw32/winsup/mingw
> -L/mingw/src/gccbf/mingw32/winsup/w32api/lib
> -Lc:/programs/mingw/bin/../lib/gcc/mingw32/4.4.0/../../..
> -luser32 -lkernel32 -lcholmod -lumfpack -lamd -lcamd -lcolamd -lccolamd 
> -lcxsparse -larpack
> -lqrupdate
> -lfftw3 -lfftw3f -lblas.dll -llapack.dll -lreadline -ltermcap
> c:/Programs/GnuWin32/lib/libregex.dll.a
> -LD:/Progra~1/GnuWin32/lib /WinDevTools/lib/libintl.a -L/WinDevTools/lib 
> -lwsock32 -lole32
> /mingw/lib/libuuid.dll.a -lmsvcp60 -LC:/Programs/GnuWin32/lib -lpcre
> -Lc:/programs/mingw/bin/../lib/gcc
> -Lc:/programs/mingw/bin/../lib/gcc/mingw32/4.4.0/../../../../mingw32/lib
> /mingw/lib/gcc/mingw32/4.4.0/libsupc++.a 
> /mingw/lib/gcc/mingw32/4.4.0/libgfortranbegin.a
> /mingw/lib/gcc/mingw32/4.4.0/libgfortran.dll.a -lmingw32 -lmoldname -lmingwex 
> -lmsvcrt -luser32
> -lkernel32 -ladvapi32 -lshell32 -luser32 -lkernel32 /mingw/lib/libiberty.a 
> -lpthread -lgdi32
> -lws2_32
> -luser32 -lkernel32 /mingw/lib/gcc/mingw32/4.4.0/libstdc++_s.a -lmingw32 
> -lgcc_s -lgcc
> -lmoldname
> -lmingwex -lmsvcrt -luser32 -lkernel32 -ladvapi32 -lshell32 -lmingw32 -lgcc_s 
> -lgcc -lmoldname
> -lmingwex -lmsvcrt c:/programs/mingw/bin/../lib/gcc/mingw32/4.4.0/crtend.o  
> -mieee-fp -Wl,-s  
> -o
> .libs/liboctave-3-3-50+.dll -Wl,--enable-auto-image-base -Xlinker 
> --out-implib -Xlinker
> .libs/liboctave.dll.a
>   :
>   :
> .libs/liboctave_la-glob-match.o:glob-match.cc:(.text+0x6e3): undefined 
> reference to `glob'
> .libs/liboctave_la-glob-match.o:glob-match.cc:(.text+0x893): undefined 
> reference to `globfree'
> ../libgnu/.libs/libgnu.a(getlogin_r.o):getlogin_r.c:(.text+0x11): undefined 
> reference to
> `getlogin'
> collect2: ld returned 1 exit status
> make[1]: *** [liboctave.la] Error 1
> make[1]: Leaving directory `/home/octaves/OctBuild/hg-devel/liboctave'
> make: *** [all] Error 2
> 

This error seemed to be header file location problem.
glob.o fnmatch.o were complied with header files, glob.h and fnmatch.h in 
libgnu/lib, respectively.
However, it seem that glob.h and fnmatch.h in libgnu/lib did not to be used in 
the compiling
glob-match.cc.  I placed the different version of  glob.h and fnmatch.h in the 
path specified in
CPPFLAGS.  The the different version of  glob.h and fnmatch.h are used for 
building 3.2.x branch.

Was the behavior correct ?

Anyway, I replaced the glob.h and fnmatch.h by those in libgnu/lib.
This time I have met compiling problem 

In file included from ../../../hg/octave-work/liboctave/glob-match.cc:28:
c:/Programs/OctaveBuild/include/glob.h:24:5: error: token "@" is not valid in 
preprocessor expressions
In file included from ../../../hg/octave-work/liboctave/glob-match.cc:27:
c:/Programs/OctaveBuild/include/fnmatch.h:62: error: expected initializer 
before '_GL_ARG_NONNULL'
In file included from c:/Programs/OctaveBuild/include/glob.h:60,
                 from ../../../hg/octave-work/liboctave/glob-match.cc:28:
../../../hg/octave-work/libgnu/glob-libc.h:178: error: expected initializer 
before '_GL_ARG_NONNULL'
../../../hg/octave-work/libgnu/glob-libc.h:181: error: expected initializer 
before '_GL_ARG_NONNULL'
../../../hg/octave-work/libgnu/glob-libc.h:208: error: expected initializer 
before '_GL_ARG_NONNULL'
../../../hg/octave-work/liboctave/glob-match.cc: In member function 'bool 
glob_match::match(const
std::string&)':
../../../hg/octave-work/liboctave/glob-match.cc:56: error: 'posix_fnmatch' was 
not declared in this
scope
../../../hg/octave-work/liboctave/glob-match.cc: In member function 
'string_vector
glob_match::glob_internal()':
../../../hg/octave-work/liboctave/glob-match.cc:100: error: '::rpl_glob' has 
not been declared
../../../hg/octave-work/liboctave/glob-match.cc:123: error: 'rpl_globfree' was 
not declared in this
scope
make[3]: *** [liboctave_la-glob-match.lo] Error 1
make[3]: Leaving directory `/home/octaves/OctBuild/octave-develop/liboctave'
make[2]: *** [all] Error 2

 
Any suggestions ?

Regards

Tatsuro

--------------------------------------
Get Disney character's mail address on Yahoo! Mail
http://pr.mail.yahoo.co.jp/disney/


reply via email to

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