[Coin-ipopt] segmentation fault from IpoptSolve function
Tran Minh Tuan
tmtuan at laas.fr
Tue Oct 30 06:27:05 EDT 2007
Hi Andreas,
The problem is really caused by my function eval_jac_g, I did access
to variable x in both cases (return the structure and return the
values). But that is surprisingly compiled and executed on my Mac.
Fortunately in Linux it is detected and I fixed it.
Thanks for your suggestion,
On 29 Oct 2007, at 11:51 PM, Andreas Waechter wrote:
> Hi Tran,
>
> I recommend to recompile your code with debug information (e.g., do
> a 'make distclean', rerun configure and add the --enable-debug
> option, and then do a 'make install' again.). Then you can run
> your own program that binds the Ipopt library through a debugger,
> or even better with the memory checker 'valgrind' (for Intel
> Linux). The latter will tell you exactly where in the program the
> first failure in terms of memory access happens.
>
> Of course, it is possible that there is a bug in the Ipopt code,
> but before you file a ticket at the Ipopt project page, you might
> want to make sure that the segmentation fault is not happening
> within your own call-back functions that you give to Ipopt.
>
> If you still believe there is a bug in Ipopt, please open a ticket
> at the Ipopt project page and include exact instructions on how
> this error can be reproduced (including a sample C program).
>
> I don't understand what you mean by "My runnable program (in C) is
> transported from Mac Intel to Linux Fedora" - if you mean by that
> that you compiled an executable on a Mac and then copied it to a
> Linux Fedore machine, this by itself might constitute a problem.
> It is not clear to me if executables between those two operating
> systems are really binary compatible, and issues with inconsistent
> runtime libraries might be responsible for the problem you
> observe. (On the other hand, since you already get some output
> from Ipopt I would suspect that this is not the case.)
>
> Regards,
>
> Andreas
>
> On Mon, 29 Oct 2007, Tran Minh Tuan wrote:
>
>> Hi all,
>>
>> My runnable program (in C) is transported from Mac Intel to Linux
>> Fedora but I saw this when trying to execute it:
>>
>> *********************************************************************
>> *********
>> This program contains Ipopt, a library for large-scale nonlinear
>> optimization.
>> Ipopt is released as open source code under the Common Public
>> License (CPL).
>> For more information visit http://projects.coin-or.org/Ipopt
>> *********************************************************************
>> *********
>>
>> NOTE: You are using Ipopt only with the MUMPS linear solver.
>> Other linear solvers might be more efficient (see Ipopt
>> documentation).
>>
>> Segmentation fault
>>
>> I verified the parameters relative to memory and they are ok. So I
>> don't know which reason can cause this "segmentation fault" inside
>> calling IpoptSolve.
>>
>> Thanks for your explanation,
>> _______________________________________________
>> Coin-ipopt mailing list
>> Coin-ipopt at list.coin-or.org
>> http://list.coin-or.org/mailman/listinfo/coin-ipopt
>>
More information about the Coin-ipopt
mailing list