Thu 23 Jun 2011 01:38:01 PM UTC, comment #17:
OK, thanks. I'm closing this report now.
|
Thu 23 Jun 2011 12:50:40 PM UTC, comment #16:
rc2 build on cygwin and pass the tests
|
Wed 22 Jun 2011 09:05:29 PM UTC, comment #15:
Thanks, I'm building -rc2 now.
|
Wed 22 Jun 2011 08:42:09 PM UTC, comment #14:
John,
with your latest fix (file #23548) octave compiles on mingw32 again, thanks!
Kai
P.S the command to compile mkoctfile was:
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -I../libgnu -I../libgnu -I../lib
cruft/misc -I../liboctave -I../liboctave -I. -I. -g -O2 -DHAVE_CONFIG_H -mieee-f
p -I/usr/local/include -IC:/MinGW/include -Wall -W -Wshadow -Wold-style-cast -Wf
ormat -Wpointer-arith -Wwrite-strings -Wcast-align -Wcast-qual -g -O2 -g -O2 -MT
DLD-FUNCTIONS/DLD_FUNCTIONS_urlwrite_la-urlwrite.lo -MD -MP -MF DLD-FUNCTIONS/.
deps/DLD_FUNCTIONS_urlwrite_la-urlwrite.Tpo -c DLD-FUNCTIONS/urlwrite.cc -DDLL_
EXPORT -DPIC -o DLD-FUNCTIONS/.libs/DLD_FUNCTIONS_urlwrite_la-urlwrite.o
depbase=`echo mkoctfile.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
g++ -DHAVE_CONFIG_H -I. -I.. -I../libgnu -I../libgnu -I../libcruft/misc
-I../liboctave -I../liboctave -I. -I. -g -O2 -DHAVE_CONFIG_H -mieee-fp -I/us
r/local/include -IC:/MinGW/include -Wall -W -Wshadow -Wold-style-cast -Wforma
t -Wpointer-arith -Wwrite-strings -Wcast-align -Wcast-qual -g -O2 -g -O2 -MT mk
octfile.o -MD -MP -MF $depbase.Tpo -c -o mkoctfile.o mkoctfile.cc &&\
I hope I have found the correct line.
|
Tue 21 Jun 2011 11:13:17 PM UTC, comment #13:
And I should add that the problem compiling mkoctfile appears to be due to a change I made, not the cleanup that Rik did...
|
Tue 21 Jun 2011 11:12:25 PM UTC, comment #12:
Can you please show me the command that is used for creating mkoctfile.o?
Does the attached change avoid the problem for you?
(file #23548)
|
Tue 21 Jun 2011 08:24:52 PM UTC, comment #11:
Following Rik's steps in #8 the mingw32 compilation fails now for mkoctfile.exe. It seems the linker misses some gnulib symbols.
Kai
mv DLD-FUNCTIONS/PKG_ADD-t DLD-FUNCTIONS/PKG_ADD
/bin/sh ../libtool --tag=CXX --mode=link g++ -g -O2 -DHAVE_CONFIG_H -mieee-fp
-I/usr/local/include -IC:/MinGW/include -Wall -W -Wshadow -Wold-style-cast -
Wformat -Wpointer-arith -Wwrite-strings -Wcast-align -Wcast-qual -g -O2 -g -O2
-L/mingw/bin -o mkoctfile.exe mkoctfile.o -liberty -lm -lpthread -lgdi32 -lw
s2_32 -luser32 -lkernel32 -lgdi32 -lws2_32 -luser32 -lkernel32
libtool: link: g++ -g -O2 -DHAVE_CONFIG_H -mieee-fp -I/usr/local/include -IC:/Mi
nGW/include -Wall -W -Wshadow -Wold-style-cast -Wformat -Wpointer-arith -Wwrite-
strings -Wcast-align -Wcast-qual -g -O2 -g -O2 -o .libs/mkoctfile.exe mkoctfile.
o -L/mingw/bin -liberty -lpthread -lgdi32 -lws2_32 -luser32 -lkernel32
mkoctfile.o:mkoctfile.cc:(.debug_info+0x2539b): undefined reference to `rpl_fclo
se'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x253b3): undefined reference to `rpl_fflu
sh'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x254f3): undefined reference to `rpl_rena
me'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x25584): undefined reference to `rpl_strd
up'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x2559e): undefined reference to `rpl_stre
rror'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x255d7): undefined reference to `rpl_mall
oc'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x25602): undefined reference to `rpl_real
loc'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x25641): undefined reference to `rpl_mkti
me'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x25756): undefined reference to `rpl_mbsi
nit'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x2576f): undefined reference to `rpl_mbrt
owc'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x25784): undefined reference to `rpl_mbsr
towcs'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x2579d): undefined reference to `rpl_fclo
se'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x257aa): undefined reference to `rpl_fflu
sh'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x25811): undefined reference to `fpurge'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x258c9): undefined reference to `fseeko'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x258eb): undefined reference to `ftello'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x259d5): undefined reference to `rpl_rena
me'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x25abd): undefined reference to `memrchr'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x25ae4): undefined reference to `rpl_strd
up'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x25b0b): undefined reference to `rpl_stre
rror'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x25b18): undefined reference to `canonica
lize_file_name'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x25b3f): undefined reference to `rpl_mall
oc'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x25b61): undefined reference to `mkstemp'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x25b8d): undefined reference to `rpl_real
loc'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x25bb4): undefined reference to `realpath
'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x25bec): undefined reference to `nanoslee
p'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x25c19): undefined reference to `rpl_mkti
me'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x25c4b): undefined reference to `localtim
e_r'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x25c58): undefined reference to `gmtime_r
'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x25c84): undefined reference to `strptime
'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x25d28): undefined reference to `rpl_mbsi
nit'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x25d5e): undefined reference to `rpl_mbrt
owc'
mkoctfile.o:mkoctfile.cc:(.debug_info+0x25d94): undefined reference to `rpl_mbsr
towcs'
collect2: ld returned 1 exit status
make[3]: *** [mkoctfile.exe] Error 1
make[3]: *** Waiting for unfinished jobs....
|
Tue 21 Jun 2011 03:51:36 PM UTC, comment #10:
Great. I've committed the patch and a 3.4.2 release cycle can start now.
|
Tue 21 Jun 2011 06:54:53 AM UTC, comment #9:
tested yesterday on latest dev
changeset: 12759:34cd2fcfdcb8
tag: tip
parent: 12751:c8f451df37a7
parent: 12758:ecd1364a2700
user: John W. Eaton <jwe@octave.org>
date: Mon Jun 20 11:12:39 2011 -0400
summary: periodic merge of stable to default
using equivalent attached patch.
Build and test fine.
(file #23542)
|
Mon 20 Jun 2011 05:45:46 PM UTC, comment #8:
I think jwe is right about what went wrong. Happily, its a small change. I don't have access to Cygwin or MinGW so could someone else test the proposed patch which I have attached to this bug report?
Steps
|
Mon 20 Jun 2011 03:49:10 PM UTC, comment #7:
Rik, I think the problem is that your change deleted OCT_LINK_DEPS from src/Makefile.am. Probably you thought it wasn't used because it doesn't appear in src/Makefile.am, but it is used in the included file DLD-FUNCTIONS/module.mk.
|
Sun 19 Jun 2011 11:01:48 PM UTC, comment #6:
Thanks for all the testing. There has been some discussion on the maintainers list and as a result there is going to be an attempt to make a quick 3.4.2 point release which targets a few specific issues. This bug has been included in the list of ones which must be fixed before the 3.4.2 release so I have increased the priority.
Kai, could you do a 'make clean' in the src directory and then 'make all' and capture the output in a log for attachment to this bug report?
I looked at the linking command you inserted in the bug report and it looks basically the same as my command on Linux so I'll need the entire output.
|
Sun 19 Jun 2011 07:03:49 PM UTC, comment #5:
Rik,
I get the error for the 3.4.1 tarball on mingw (32bit) as well.
Kai
libtool: link: g++ -shared -nostdlib c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../..
/../dllcrt2.o c:/mingw/bin/../lib/gcc/mingw32/4.5.2/crtbegin.o DLD-FUNCTIONS/.l
ibs/__contourc__.o -L/mingw/bin -liberty -lpthread -luser32 -lkernel32 -lgdi32
-lws2_32 -luser32 -lkernel32 -Lc:/mingw/bin/../lib/gcc/mingw32/4.5.2 -Lc:/mingw
/bin/../lib/gcc -Lc:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../../mingw32/lib
-Lc:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../.. -L/mingw/lib /mingw/lib/gcc/min
gw32/4.5.2/libstdc++.dll.a -L/projetos/gcc/bld/452/build/mingw32/libstdc++-v3/sr
c -L/projetos/gcc/bld/452/build/mingw32/libstdc++-v3/src/.libs -L/projetos/gcc/b
ld/452/build/mingw32/winsup/mingw -L/projetos/gcc/bld/452/build/mingw32/winsup/w
32api/lib -lmingw32 -lgcc_s -lgcc -lmoldname -lmingwex -lmsvcrt -luser32 -lkerne
l32 -ladvapi32 -lshell32 -lmingw32 -lgcc_s -lgcc -lmoldname -lmingwex -lmsvcrt c
:/mingw/bin/../lib/gcc/mingw32/4.5.2/crtend.o -O2 -mieee-fp -O2 -O2 -o DLD-FU
NCTIONS/.libs/__contourc__-0.dll -Wl,--enable-auto-image-base -Xlinker --out-imp
lib -Xlinker DLD-FUNCTIONS/.libs/__contourc__.dll.a
Creating library file: DLD-FUNCTIONS/.libs/__contourc__.dll.a
DLD-FUNCTIONS/.libs/__contourc__.o: In function `~octave_base_value':
C:\MinGW\msys\1.0\home\Kai\octave-3.4.1\src/./ov-base.h:211: undefined reference
to `vtable for octave_base_value'
DLD-FUNCTIONS/.libs/__contourc__.o: In function `G__contourc__':
C:\MinGW\msys\1.0\home\Kai\octave-3.4.1\src/DLD-FUNCTIONS/__contourc__.cc:302: u
ndefined reference to `check_version(std::string const&, std::string const&)'
C:\MinGW\msys\1.0\home\Kai\octave-3.4.1\src/DLD-FUNCTIONS/__contourc__.cc:302: u
ndefined reference to `error_state'
C:\MinGW\msys\1.0\home\Kai\octave-3.4.1\src/DLD-FUNCTIONS/__contourc__.cc:302: u
ndefined reference to `octave_dld_function::create(octave_value_list (*)(octave_
value_list const&, int), octave_shlib const&, std::string const&, std::string co
nst&)'
DLD-FUNCTIONS/.libs/__contourc__.o: In function `Array':
C:\MinGW\msys\1.0\home\Kai\octave-3.4.1\src/../liboctave/Array.h:199: undefined
reference to `dim_vector::safe_numel() const'
C:\MinGW\msys\1.0\home\Kai\octave-3.4.1\src/../liboctave/Array.h:201: undefined
reference to `Array<double>::fill(double const&)'
DLD-FUNCTIONS/.libs/__contourc__.o: In function `add_point':
C:\MinGW\msys\1.0\home\Kai\octave-3.4.1\src/DLD-FUNCTIONS/__contourc__.cc:60: un
defined reference to `Matrix::append(Matrix const&) const'
DLD-FUNCTIONS/.libs/__contourc__.o: In function `end_contour':
C:\MinGW\msys\1.0\home\Kai\octave-3.4.1\src/DLD-FUNCTIONS/__contourc__.cc:76: un
defined reference to `Matrix::extract_n(int, int, int, int) const'
C:\MinGW\msys\1.0\home\Kai\octave-3.4.1\src/DLD-FUNCTIONS/__contourc__.cc:76: un
defined reference to `Matrix::append(Matrix const&) const'
DLD-FUNCTIONS/.libs/__contourc__.o: In function `ZN6Matrix6resizeEiid':
C:\MinGW\msys\1.0\home\Kai\octave-3.4.1\src/../liboctave/dMatrix.h:131: undefine
d reference to `Array<double>::resize(dim_vector const&, double const&)'
DLD-FUNCTIONS/.libs/__contourc__.o: In function `Z13F__contourc__RK17octave_valu
e_listi':
|
Sun 19 Jun 2011 02:05:48 PM UTC, comment #4:
Thank you for tracking things down. I took a look at the changeset in question and, even though it was big patch, there weren't any real changes involved. I was merely shifting the order of items in the file Makefile.am and this shouldn't affect things since it is really just a file that gets parsed, like a configuration file.
Separately, it seems that there is another bug which may require making a very quick 3.4.2 release. Could someone verify that the 3.4.1 tarball (http://www.gnu.org/software/octave/download.html) works on Cygwin and MinGW? If not, I will need to revert the changeset in question for the 3.4.2 release and start applying only bits of the patch until something breaks. Unfortunately, I don't have Cygwin or MinGW so that testing will have to rely on others.
|
Fri 17 Jun 2011 07:01:31 AM UTC, comment #3:
Hi Rik,
it took a while but the problem is coming from here:
changeset: 12730:633ef00d963c
branch: stable
parent: 12728:a17269b1148f
user: Rik <octave@nomad.inbox5.com>
date: Thu Jun 09 12:01:28 2011 -0700
summary: maint: Reorganize src/Makefile.am for understanding. No rules changed.
and propagated in the dev branch
after
changeset: 12734:8665c7957fdc
parent: 12731:f87ec8eb0ab0
parent: 12733:b67c2d580a25
user: John W. Eaton <jwe@octave.org>
date: Fri Jun 10 18:14:03 2011 -0400
summary: main: periodic merge of stable to default
Regards
Marco
|
Tue 14 Jun 2011 08:41:09 PM UTC, comment #2:
Could you try using hg bisect to see which changeset introduced the problem?
|
Tue 14 Jun 2011 07:48:35 PM UTC, comment #1:
I see the same error for a mingw (32bit) build of the same tip.
My compiler is 4.5.2
Kai
Creating library file: DLD-FUNCTIONS/.libs/__contourc__.dll.a
DLD-FUNCTIONS/.libs/__contourc__.o: In function `~octave_base_value':
C:\MinGW\msys\1.0\home\Kai\octave\src/./ov-base.h:211: undefined reference to `v
table for octave_base_value'
DLD-FUNCTIONS/.libs/__contourc__.o: In function `G__contourc__':
C:\MinGW\msys\1.0\home\Kai\octave\src/DLD-FUNCTIONS/__contourc__.cc:302: undefin
ed reference to `check_version(std::string const&, std::string const&)'
C:\MinGW\msys\1.0\home\Kai\octave\src/DLD-FUNCTIONS/__contourc__.cc:302: undefin
ed reference to `error_state'
C:\MinGW\msys\1.0\home\Kai\octave\src/DLD-FUNCTIONS/__contourc__.cc:302: undefin
ed reference to `octave_dld_function::create(octave_value_list (*)(octave_value_
list const&, int), octave_shlib const&, std::string const&, std::string const&)'
|
Tue 14 Jun 2011 02:12:16 PM UTC, original submission:
on cygwin with latest source (fresh download from scratch)
$ hg tip
changeset: 12738:0cb4e502fe5e
branch: stable
tag: tip
user: Rik <octave@nomad.inbox5.com>
date: Sun Jun 12 08:29:25 2011 -0700
summary: maint: Remove obsolete file diff-template from version control
$ gcc --version
gcc (GCC) 4.3.4 20090804 (release) 1
the build porcess stop here:
libtool: link: g++-4 -shared -nostdlib /usr/lib/gcc/i686-pc-cygwin/4.3.4/crtbegin.o DLD-FUNCTIONS/.libs/__contourc__ .o -L/usr/lib/gcc/i686-pc-cygwin/4.3.4 -L/usr/lib/gcc/i686-pc-cygwin/4.3.4/../../.. /usr/lib/gcc/i686-pc-cygwin/4.3 .4/libstdc++.dll.a -lgcc_s -lgcc_s -lcygwin -luser32 -lkernel32 -ladvapi32 -lshell32 -lgcc_s -lgcc_s /usr/lib/gcc/i68 6-pc-cygwin/4.3.4/crtend.o -O2 -mieee-fp -O2 -O2 -o DLD-FUNCTIONS/.libs/__contourc__-0.dll -Wl,--enable-auto-image -base -Xlinker --out-implib -Xlinker DLD-FUNCTIONS/.libs/__contourc__.dll.a
Creating library file: DLD-FUNCTIONS/.libs/__contourc__.dll.aDLD-FUNCTIONS/.libs/__contourc__.o: In function `~octave _base_value':
/pub/hg/octave_build/src/../../octave/src/ov-base.h:211: undefined reference to `vtable for octave_base_value'
DLD-FUNCTIONS/.libs/__contourc__.o: In function `G__contourc__':
/pub/hg/octave_build/src/../../octave/src/DLD-FUNCTIONS/__contourc__.cc:302: undefined reference to `check_version(st d::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits <char>, std::allocator<char> > const&)'
/pub/hg/octave_build/src/../../octave/src/DLD-FUNCTIONS/__contourc__.cc:302: undefined reference to `_error_state'
/pub/hg/octave_build/src/../../octave/src/DLD-FUNCTIONS/__contourc__.cc:302: undefined reference to `octave_dld_funct ion::create(octave_value_list (*)(octave_value_list const&, int), octave_shlib const&, std::basic_string<char, std::c har_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
|