octave-maintainers
[Top][All Lists]
Advanced

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

Re: Creating a standalone executable


From: Andy Adler
Subject: Re: Creating a standalone executable
Date: Fri, 13 Dec 2002 21:27:30 -0500 (EST)

I just tried your test code under cygwin (with 2.1.40)
and liboctinterp _is_ a dependency

$ mkoctfile --link-stand-alone -loctinterp test.cc
g++: unrecognized option `-rdynamic'

$ ./a.exe
3.000000e+01

$ mkoctfile --link-stand-alone  test.cc
g++: unrecognized option `-rdynamic'
test.o(.text+0x95): In function `main':
/home/adler/test.cc:7: undefined reference to `install_types()'

Andy


On Fri, 13 Dec 2002, JD Cole wrote:

> Paul,
>    My mistake. I went back and checked the need for -loctinterp, and it
> isn't. It didn't make sense to me either. (This was a figment of me
> trying to get mode stand-alone app to work. But now I can't repeat the
> problem.) As for -lkpathsea, I have compiled octave with the
> --enable-shared --enable-dl. Perhaps when these switches are marked,
> kpathsea is not being linked in statically. I verified that it is not a
> shared library of my stand-alone app using ldd:
>
> ldd ./a
>
>     liboctave.so => /video_tmp/build/lib/octave-2.1.40/liboctave.so
> (0x40018000)
>     liboctinterp.so =>
> /video_tmp/build/lib/octave-2.1.40/liboctinterp.so (0x40157000)
>     libcruft.so => /video_tmp/build/lib/octave-2.1.40/libcruft.so
> (0x403c2000)
>     liblapack.so.3 => /usr/lib/liblapack.so.3 (0x4042e000)
>     libblas.so.3 => /usr/lib/libblas.so.3 (0x40871000)
>     libreadline.so.4 => /video_tmp/build_tools/lib/libreadline.so.4
> (0x408bc000)
>     libncurses.so.5 => /usr/lib/libncurses.so.5 (0x408e7000)
>     libdl.so.2 => /lib/libdl.so.2 (0x40929000)
>     libg2c.so.0 => /video_tmp/build_tools/lib/libg2c.so.0 (0x4092d000)
>     libm.so.6 => /lib/i686/libm.so.6 (0x4094c000)
>     libgcc_s.so.1 => /video_tmp/build_tools/lib/libgcc_s.so.1 (0x40970000)
>     libstdc++.so.5 => /video_tmp/build_tools/lib/libstdc++.so.5 (0x40978000)
>     libc.so.6 => /lib/i686/libc.so.6 (0x40a2d000)
>     /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
>
>
> Please note that this compilation only used an extra "-lkpathsea" and NO
> "-loctinterp". Which leads me to ask, why liboctinterp is still a
> dynamic library dependency.
>
> -JD
>
> Paul Kienzle wrote:
>
> >Can you include -lkpathsea on the mkoctfile line?  Those libs
> >should be passed directly through to the linker unless there
> >is a bug in mkoctfile.
> >
> >The reason not to include -loctinterp is that liboctave can
> >be used without liboctinterp.  On the other hand, it doesn't
> >hurt to specify -loctinterp even if nothing uses it, does it?
> >
> >I didn't realize kpathsea was a separate library.  I thought
> >it was statically linked into liboctave.
> >
> >
> >
>
>
>
>



reply via email to

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