[M3devel] A strange link time warning using cm3]
Rodney M. Bates
rodney.bates at wichita.edu
Fri Aug 17 22:26:02 CEST 2007
I usually just manually edit my old cm3.cfg files, because I usually
have to merge my local library locations, etc. And I haven't done a
cminstall in a while. So I don't have the official version.
Right now, I have none of the libraries dynamically linked. I just
didn't realize there were some of them that would not work on.
From my cm3.cfg on the machine where I got the quoted message
(running Linux Mandrake 10.2):
------------------------------------------------------------------------
SYSTEM_LIBS = {
"LIBC" : [ "-lm" ],
% "LEX-YACC" : [ "-L/usr/lib", "-ll" ], %-- not on most Linux platforms
"FLEX-BISON" : [ "-L/usr/lib", "-lfl" ],
"POSTGRES95" : [ "-L/usr/local/postgres95/lib", "-lpq" ],
"OPENGL" : [ "-L/usr/lib", "-lGLU", "-lGL", "-lXext" ],
"MOTIF" : [ "-L/usr/X11R6/lib", "-lXm" ],
"X11" : [ "-L/usr/X11R6/lib", "-lXaw", "-lXmu", "-lXext",
"-lXt", "-lSM", "-lICE", "-lX11" ],
"PTHREAD" : [ "-L/usr/lib", "-lpthread" ],
"TCP" : [ ]
}
------------------------------------------------------------------------
Even so, the warning only happens when I compile a program with
build_standalone ( ) in the m3makefile.
I guess I'll put back the -Xlinker -Bdynamic in the libraries that
Stefan's diff shows. Will this change anything other than getting
rid of the warning message?
<comment>
After I read about dynamic linking in the 60's on the Multics system,
I always thought it was a great idea. After decades of waiting, I gave
up ever seeing it in anything but a research OS. Now that it has become
universal, I have often wondered if we would be better to put that genie
back in the bottle. Library version skew, when moving from machine to
machine can be a nightmare, even when your OS does allow multiple versions
to be installed simultaneously. But at least, I thought, the option to do
full static linking was still there, for those who chose it. So it is a
bit of a shock to learn that that option is now gone.
</comment>
Olaf Wagner wrote:
> On Fri, August 17, 2007 14:19, Stefan Sperling wrote:
>
>>On Fri, Aug 17, 2007 at 09:54:42AM +0200, Olaf Wagner wrote:
>>
>>>Stefan, I thought we had resolved this issue at least for Linux and
>>>Solaris setups with the last release. Did we miss something?
>>
>>We link system libraries dynamically on these platforms.
>>
>>It could be that Rodney's own program does not link
>>libraries dynamically, so he gets the warning.
>>
>>This is the diff that introduced dynamic linking on Linux.
>>Note that we explicitly enable dynamic linking on a per-library
>>basis... maybe we should enforce dynamic linking in general?
>
> [diff removed]
>
> No, I only want to find out why Rodney gets those warnings.
> Either he hasn't the cm3.cfg changes from the last release, or
> some other packages (Trestle?) import more libraries which cause
> the problem. Rodney, could you please check that?
>
> Olaf
--
-------------------------------------------------------------
Rodney M. Bates, retired assistant professor
Dept. of Computer Science, Wichita State University
Wichita, KS 67260-0083
316-978-3922
rodney.bates at wichita.edu
More information about the M3devel
mailing list