|
From: | Tim Felty |
Subject: | RE: Building Standalone Executables |
Date: | Tue, 16 Feb 2010 10:09:35 -0600 |
Here is the output of mkoctfile > mkoctfile -v --link-stand-alone OctaveTest.cpp -o OctaveTest.exe mingw32-g++-4.4.0-dw2 -c -IC:\Octave\3.2.3_gcc-4.4.0\include\octave-3.2.3 -IC:\Octave\3.2.3_gcc-4.4.0\include\octave-3 .2.3\octave -IC:\Octave\3.2.3_gcc-4.4.0\include -mieee-fp -D_GLIBCXX_DLL -march=i686 -mtune=generic -O3 -Wall Octave Test.cpp -o OctaveTest.o mingw32-g++-4.4.0-dw2 -IC:\Octave\3.2.3_gcc-4.4.0\include\octave-3.2.3 -IC:\Octave\3.2.3_gcc-4.4.0\include\octave-3.2.3 \octave -IC:\Octave\3.2.3_gcc-4.4.0\include -mieee-fp -D_GLIBCXX_DLL -march=i686 -mtune=generic -O3 -Wall -shared-li bgcc -Wl,--allow-multiple-definition -o OctaveTest.exe OctaveTest.o -LC:\Octave\3.2.3_gcc-4.4.0\lib\octave-3.2.3 -LC :\Octave\3.2.3_gcc-4.4.0\lib -loctinterp -loctave -lcruft -llapack -lblas -lfftw3 -lfftw3f -lreadline -lreadline -lnc urses -liberty -lhdf5 -lz -lm -lgdi32 -lws2_32 -luser32 -lkernel32 -lgfortran -lstdc++_s > Date: Tue, 16 Feb 2010 10:21:10 +0100 > From: address@hidden > To: address@hidden > CC: address@hidden; address@hidden > Subject: Re: Building Standalone Executables > > Jaroslav Hajek wrote: > > On Mon, Feb 15, 2010 at 4:47 PM, Tim Felty wrote: > >> David, thanks for the help. > >> > >> I've been working on the code and I'm running into an error on my computer. > >> It says > >> > >> "error: No space left on device > >> terminate called after throwing an instance of 'octave_execution_exception' > >> This application has requested the Runtime to terminate it in an unusual > >> way. > >> Please contact the application's support team for more information." > >> > >> This seems to be caused by my calling of do_octave_atexit() > >> > > > > Calling do_octave_atexit doesn't clean up everything. You should call > > clean_up_and_exit instead. > > But the error is weird anyway. I get no problems running your code. > > Probably something specific to windows, or to older versions if you > > have one. It might also depend on what packages you have installed. > > > > I haven't tested your code sample yet, but I'm stating a guess here: > On windows the octave setup uses gcc's shared libgcc and libstdc++. This > is necessary to propagate exceptions across dll boundaries. Otherwise > errors like the one you describe (i.e. an exception being thrown) leads > to abnormal program termination (even simply loading a .oct file *not* > linked against shared libgcc will fail). > > So even a standalone executable will need the shared libgcc and shared > libstdc++. mkoctfile *should* take care of that. Perhaps there is > something wrong here wieh linking executables. > > Can you post the output of mkoctfile when called with "-v" as verbose flag? > > benjamin Hotmail: Trusted email with Microsoft’s powerful SPAM protection. Sign up now. |
[Prev in Thread] | Current Thread | [Next in Thread] |