help-octave
[Top][All Lists]
Advanced

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

Re: parcellfun test issue on Mac OS 10.8, was Re: problems installing op


From: Alexander Hansen
Subject: Re: parcellfun test issue on Mac OS 10.8, was Re: problems installing openmpi_ext
Date: Sun, 08 Sep 2013 10:50:38 -0700
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:17.0) Gecko/20130801 Thunderbird/17.0.8

On 9/8/13 8:27 AM, Alexander Hansen wrote:
(thought I'd change the subject)

On 9/8/13 7:54 AM, Alexander Hansen wrote:
On 9/8/13 6:33 AM, Benjamin Abbott wrote:
On Sep 8, 2013, at 8:42 AM, Francis Poulin <address@hidden> wrote:

Hello,

Thanks to both of you for looking into this.  I am happy to try this
in the debugger but I admit that I've never used it before and I'm
having problems getting started.

First, you don't mean to use the debugger in octave I bather?  I
tried starting

octave --debug

and that give a lot of output, none of which seemed at all useful.

Second ,you suggest running octave in a debugger and show 'run-octave
-g'.  I did not know you could run octave in a debugger and am not
sure exactly how to do that.  If you could get me started I'm happy
to share the output.

Thanks again,
Francis

Run octave in the gnu debugger, start octave, execute the
parcell_example script, when octave crashes run a back trace. The
commands are ...

run-octave -g
run
parcell_example
bt

The copy the output from bt into your reply.

Ben


Let me elaborate on how to do this via Fink:

1)  "run-octave" doesn't get installed under the default Octave build
and install operation, which is more or less what we do, and Fink by
default deletes the Octave build directory to save space, so it's
probably not present.

"fink -k rebuild octave" will do another build but not delete the build
directory. (The default location is /sw/src/fink.build/octave-3.6.4-5/)

2)  When you do that rebuild, You might want to edit the CFLAGS and
CXXFLAGS settings in
/sw/fink/10.7/stable/main/finkinfo/sci/octave-3.6.4.info to include the
"-g" flag, e.g

  export CFLAGS='-O3 -MD -g'

to generate debug symbols (I'll probably turn that on for everybody the
next time I put out a new revision).

3)  However, I found when I tried this kind of operation last that
Apple's clang didn't seem to generate the full debugging information, or
possibly that the gdb debugger as provided by Xcode 4.x didn't know what
to do with it.  Some additional things to try would be

a) Install Fink's gdb package, which is newer than what Xcode has
b) Switch the compilers in the "SetCC" and "SetCXX" lines of
octave-3.6.4.info to be gcc-fsf-4.8 and g++-fsf-4.8, respectively.

I've got a build going right now to do any or all of these.

Here's what I'm seeing right now, with the -g option turned on, using
clang as the C|C++ compiler, and using the gdb from the Xcode 4.6
Command Line Tools:

octave:2> parcellfun_example
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Elapsed time is 19.6002 seconds.
parcellfun: child process 72538 created
parcellfun: child process 72539 created
parcellfun: 0/200 jobs donepanic: Trace/BPT trap: 5 -- stopping myself...
panic: Trace/BPT trap: 5 -- stopping myself...
Reading symbols for shared libraries . done


Program received signal EXC_SOFTWARE, Software generated exception.
<signal handler called>
(gdb)
(gdb) bt
#0  <signal handler called>
#1  0x00007fff8e44c280 in read$NOCANCEL ()
#2  0x00007fff86e027b0 in _sread ()
#3  0x00007fff86e01d2f in __srefill1 ()
#4  0x00007fff86dff3e3 in __fread ()
#5  0x00007fff86dff2eb in fread ()
#6  0x00000001027d6f9b in std::istream::read ()



Using a "real" (FSF) gcc and g++ for the C|C++ compilers, and with optimizations at 0, I got the following:

(gdb) bt
#0 0x00007fff5fc1a176 in __dyld__ZN26ImageLoaderMachOCompressed20doBindFastLazySymbolEjRKN11ImageLoader11LinkContextEPFvvES5_ () #1 0x00007fff5fc04017 in __dyld__ZN4dyld18fastBindLazySymbolEPP11ImageLoaderm ()
#2  0x00007fff89b658ee in dyld_stub_binder_ ()
#3 0x0000000100b38bf8 in int idx_vector::assign<octave_value>(octave_value const*, int, octave_value*) const::__func__ ()
#4  <signal handler called>
#5  0x00007fff8e44c212 in __pthread_kill ()
#6  0x00007fff86d96b54 in pthread_kill ()
#7  0x00007fff86ddadce in abort ()
#8  0x00007fff86dae9b9 in free ()
#9  0x00000001055e7c23 in Ffload ()
#10 0x00000001003db5cc in octave_builtin::do_multi_index_op (this=0x107052d90, nargout=1, address@hidden, lvalue_list=0x0) at ov-builtin.cc:131 #11 0x00000001003db27a in octave_builtin::subsref (this=0x107052d90, address@hidden, address@hidden, nargout=1, lvalue_list=0x0) at ov-builtin.cc:63 #12 0x00000001003db168 in octave_builtin::subsref (this=0x107052d90, address@hidden, address@hidden, nargout=1) at ov-builtin.cc:47 #13 0x00000001003dbdd5 in octave_builtin::subsref (this=0x107052d90, address@hidden, address@hidden) at ov-builtin.h:55 #14 0x0000000100484f0b in octave_value::subsref (this=0x7fff5fbfbd20, address@hidden, address@hidden, nargout=1) at ov.cc:1225 #15 0x0000000100484ff7 in octave_value::subsref (this=0x7fff5fbfbd20, address@hidden, address@hidden, nargout=1, lvalue_list=0x0) at ov.cc:1238 #16 0x00000001005203d2 in tree_index_expression::rvalue (this=0x10605a5b0, nargout=1, lvalue_list=0x0) at pt-idx.cc:413 #17 0x000000010051fb21 in tree_index_expression::rvalue (this=0x10605a5b0, nargout=1) at pt-idx.cc:284 #18 0x0000000100520668 in tree_index_expression::rvalue1 (this=0x10605a5b0, nargout=1) at pt-idx.cc:425 #19 0x000000010050d9d4 in tree_simple_assignment::rvalue1 (this=0x10605a720) at pt-assign.cc:210 #20 0x0000000100519b0e in tree_evaluator::visit_statement (this=0x100daa838, address@hidden) at pt-eval.cc:736 #21 0x0000000100538a5c in tree_statement::accept (this=0x106059fc0, address@hidden) at pt-stmt.cc:151 #22 0x0000000100519ccd in tree_evaluator::visit_statement_list (this=0x100daa838, address@hidden) at pt-eval.cc:772 #23 0x0000000100538de2 in tree_statement_list::accept (this=0x10604c7b0, address@hidden) at pt-stmt.cc:215 #24 0x00000001005195ad in tree_evaluator::visit_if_command_list (this=0x100daa838, address@hidden) at pt-eval.cc:573 #25 0x000000010053712a in tree_if_command_list::accept (this=0x10605a860, address@hidden) at pt-select.cc:83 #26 0x0000000100519497 in tree_evaluator::visit_if_command (this=0x100daa838, address@hidden) at pt-eval.cc:551 #27 0x00000001005373f4 in tree_if_command::accept (this=0x10605bf70, address@hidden) at pt-select.cc:108 #28 0x00000001005199fd in tree_evaluator::visit_statement (this=0x100daa838, address@hidden) at pt-eval.cc:706 #29 0x0000000100538a5c in tree_statement::accept (this=0x10605bfa0, address@hidden) at pt-stmt.cc:151 #30 0x0000000100519ccd in tree_evaluator::visit_statement_list (this=0x100daa838, address@hidden) at pt-eval.cc:772 #31 0x0000000100538de2 in tree_statement_list::accept (this=0x10604e4f0, address@hidden) at pt-stmt.cc:215 #32 0x000000010051a47c in tree_evaluator::visit_while_command (this=0x100daa838, address@hidden) at pt-eval.cc:1048 #33 0x0000000100523874 in tree_while_command::accept (this=0x106065a60, address@hidden) at pt-loop.cc:68 #34 0x00000001005199fd in tree_evaluator::visit_statement (this=0x100daa838, address@hidden) at pt-eval.cc:706 #35 0x0000000100538a5c in tree_statement::accept (this=0x106065aa0, address@hidden) at pt-stmt.cc:151 #36 0x0000000100519ccd in tree_evaluator::visit_statement_list (this=0x100daa838, address@hidden) at pt-eval.cc:772 #37 0x0000000100538de2 in tree_statement_list::accept (this=0x106065ac0, address@hidden) at pt-stmt.cc:215 #38 0x000000010051a335 in tree_evaluator::visit_unwind_protect_command (this=0x100daa838, address@hidden) at pt-eval.cc:1003 #39 0x000000010051b8da in tree_unwind_protect_command::accept (this=0x106068300, address@hidden) at pt-except.cc:99 #40 0x00000001005199fd in tree_evaluator::visit_statement (this=0x100daa838, address@hidden) at pt-eval.cc:706 #41 0x0000000100538a5c in tree_statement::accept (this=0x106068030, address@hidden) at pt-stmt.cc:151 #42 0x0000000100519ccd in tree_evaluator::visit_statement_list (this=0x100daa838, address@hidden) at pt-eval.cc:772 #43 0x0000000100538de2 in tree_statement_list::accept (this=0x106044e00, address@hidden) at pt-stmt.cc:215 #44 0x00000001005195ad in tree_evaluator::visit_if_command_list (this=0x100daa838, address@hidden) at pt-eval.cc:573 #45 0x000000010053712a in tree_if_command_list::accept (this=0x106044bb0, address@hidden) at pt-select.cc:83 #46 0x0000000100519497 in tree_evaluator::visit_if_command (this=0x100daa838, address@hidden) at pt-eval.cc:551 #47 0x00000001005373f4 in tree_if_command::accept (this=0x106071cf0, address@hidden) at pt-select.cc:108 #48 0x00000001005199fd in tree_evaluator::visit_statement (this=0x100daa838, address@hidden) at pt-eval.cc:706 #49 0x0000000100538a5c in tree_statement::accept (this=0x106071d20, address@hidden) at pt-stmt.cc:151 #50 0x0000000100519ccd in tree_evaluator::visit_statement_list (this=0x100daa838, address@hidden) at pt-eval.cc:772 #51 0x0000000100538de2 in tree_statement_list::accept (this=0x10613fbd0, address@hidden) at pt-stmt.cc:215 #52 0x0000000100478fcc in octave_user_function::do_multi_index_op (this=0x106071e20, nargout=1, address@hidden, lvalue_list=0x0) at ov-usr-fcn.cc:475 #53 0x0000000100478890 in octave_user_function::subsref (this=0x106071e20, address@hidden, address@hidden, nargout=1, lvalue_list=0x0) at ov-usr-fcn.cc:326 #54 0x000000010047877e in octave_user_function::subsref (this=0x106071e20, address@hidden, address@hidden, nargout=1) at ov-usr-fcn.cc:310 #55 0x000000010047c9fd in octave_user_function::subsref (this=0x106071e20, address@hidden, address@hidden) at ov-usr-fcn.h:299 #56 0x0000000100484f0b in octave_value::subsref (this=0x7fff5fbfced0, address@hidden, address@hidden, nargout=1) at ov.cc:1225 #57 0x0000000100484ff7 in octave_value::subsref (this=0x7fff5fbfced0, address@hidden, address@hidden, nargout=1, lvalue_list=0x0) at ov.cc:1238 #58 0x00000001005203d2 in tree_index_expression::rvalue (this=0x10737c390, nargout=1, lvalue_list=0x0) at pt-idx.cc:413 #59 0x000000010051fb21 in tree_index_expression::rvalue (this=0x10737c390, nargout=1) at pt-idx.cc:284 #60 0x0000000100520668 in tree_index_expression::rvalue1 (this=0x10737c390, nargout=1) at pt-idx.cc:425 #61 0x000000010050d9d4 in tree_simple_assignment::rvalue1 (this=0x10737cba0) at pt-assign.cc:210 #62 0x0000000100519b0e in tree_evaluator::visit_statement (this=0x100daa838, address@hidden) at pt-eval.cc:736 #63 0x0000000100538a5c in tree_statement::accept (this=0x10737b410, address@hidden) at pt-stmt.cc:151 #64 0x0000000100519ccd in tree_evaluator::visit_statement_list (this=0x100daa838, address@hidden) at pt-eval.cc:772 #65 0x0000000100538de2 in tree_statement_list::accept (this=0x107364c10, address@hidden) at pt-stmt.cc:215 #66 0x000000010047767b in octave_user_script::do_multi_index_op (this=0x10737c5c0, nargout=0, address@hidden) at ov-usr-fcn.cc:138 #67 0x00000001004853f0 in octave_value::do_multi_index_op (this=0x7fff5fbfd520, nargout=0, address@hidden) at ov.cc:1292 #68 0x000000010051d6d4 in tree_identifier::rvalue (this=0x107361280, nargout=0) at pt-id.cc:85 #69 0x000000010051d8ea in tree_identifier::rvalue1 (this=0x107361280, nargout=0) at pt-id.cc:106 #70 0x0000000100519b0e in tree_evaluator::visit_statement (this=0x100daa838, address@hidden) at pt-eval.cc:736 #71 0x0000000100538a5c in tree_statement::accept (this=0x1073612f0, address@hidden) at pt-stmt.cc:151 #72 0x0000000100519ccd in tree_evaluator::visit_statement_list (this=0x100daa838, address@hidden) at pt-eval.cc:772 #73 0x0000000100538de2 in tree_statement_list::accept (this=0x107361310, address@hidden) at pt-stmt.cc:215
#74 0x0000000100376e4b in main_loop () at toplev.cc:595
#75 0x000000010032a111 in octave_main (argc=6, argv=0x7fff5fbfd9f8, embedded=0) at octave.cc:943
#76 0x0000000100000f8c in main (argc=6, argv=0x7fff5fbfd9f8) at main.c:35


--
Alexander Hansen, Ph.D.
Fink User Liaison
My package updates: http://finkakh.wordpress.com/


reply via email to

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