Bill Hoffman wrote:
Daniel Rueckert wrote:
Alan W. Irwin wrote:
On 2007-11-28 21:57-0000 Daniel Rueckert wrote:
Bill Hoffman wrote:
Daniel Rueckert wrote:
Hi,
I am trying to build some statically linked executables on a linux
box. I have added the "-static" option to the linker flags and
specified
static link libraries but for some reason cmake still adds the option
"-Wl,-Bdynamic" flag to the linker options. Is there any way
around this?
Thanks, Daniel
Sounds like you might have some explicit shared libraries linked
into you project with full paths.
-Bill
Not explicitly. The shared libraries are -lSM, -lICE (part of X11 I
believe)
and -lm. I have not found any way how to change them into static
libraries
in cmake. I have attached the linking command generated by cmake:
/usr/bin/c++ -fno-const-strings -ffloat-store -Wall -O2 -fPIC
-static "CMakeFiles/binarize.dir/binarize.o" -o ../bin/binarize
-rdynamic -L/vol/vipdata/project/linux-ubuntu-static/lib
-L/vol/vipdata/packages/Mesa-6.5/lib -Wl,-Bstatic -lz -lfltk_images
-lfltk -lfltk_gl -lfltk_forms -Wl,-Bdynamic -lSM -lICE -Wl,-Bstatic
-lX11 -lXext -Wl,-Bdynamic -lm -Wl,-Bstatic -lglut -lXmu -lXi -lGLU
-lGL -Wl,-Bdynamic -lSM -lICE -Wl,-Bstatic -lX11 -lXext -lznz
-lniftiio -lsegmentation++ -lregistration++ -ltransformation++
-lcontrib++ -limage++ -lgeometry++ -lcommon++ -lrecipes -lcontrib++
-limage++ -lgeometry++ -lcommon++ -lrecipes -ltransformation++
-lregistration++ -lsegmentation++ -lniftiio -lznz -lz -lfltk_images
-lfltk -lfltk_gl -lfltk_forms -Wl,-Bdynamic -lSM -lICE -Wl,-Bstatic
-lX11 -lXext -Wl,-Bdynamic -lm -Wl,-Bstatic -lglut -lXmu -lXi -lGLU
-lGL -Wl,-Bdynamic -lSM -lICE -Wl,-Bstatic -lX11 -lXext
-Wl,-Bdynamic
-Wl,-rpath,/vol/vipdata/project/linux-ubuntu-static/lib:/vol/vipdata/packages/Mesa-6.5/lib
I would be grateful for any suggestions.
Are you sure you have static versions of all your external libraries
(including libSM, libICE and libm) installed? Sometimes, the static
versions of libraries come in separate developmental packages than the
shared versions for Linux so there may be some additional
installation you
have to do to get the static versions.
Alan
__________________________
Alan W. Irwin
Astronomical research affiliation with Department of Physics and
Astronomy,
University of Victoria (astrowww.phys.uvic.ca).
Programming affiliations with the FreeEOS equation-of-state
implementation
for stellar interiors (freeeos.sf.net); PLplot scientific plotting
software
package (plplot.org); the libLASi project (unifont.org/lasi); the
Loads of
Linux Links project (loll.sf.net); and the Linux Brochure Project
(lbproject.sf.net).
Yes, the static libraries are available on the system (in the default dir
/usr/lib).
Thanks, Daniel
If you explicitly link in the static libraries it should work. Give
full paths to the /usr/libSM.a.
-Bill
Thanks. Unfortunately I cannot specify /usr/libSM.a via ccmake, there is
not option for this (in contrast to all the other X11 libs).
Daniel
--
Daniel Rueckert, Ph.D.
Department of Computing
Imperial College London
180 Queens' Gate Tel: +44 20 7594 8333
London SW7 2AZ Fax: +44 20 7581 8024
mailto:[EMAIL PROTECTED] http://www.doc.ic.ac.uk/~dr
_______________________________________________
CMake mailing list
[email protected]
http://www.cmake.org/mailman/listinfo/cmake