[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/