This is the mail archive of the cygwin@sources.redhat.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: g77 -lm link problem [Re: Results for 2.97 20010115 (experimental) testsuite on i686-pc -cygwin]


On Tue, Jan 23, 2001 at 09:09:48PM -0600, Mumit Khan wrote:
>On Tue, 23 Jan 2001, Christopher Faylor wrote:
>
>> On Wed, Jan 24, 2001 at 12:38:56AM -0000, Billinghurst, David (CRTS) wrote:
>> 
>> I guess I was vainly hoping that someone would actually debug the
>> problem or offer insight into the reason for the problem rather than
>> saying "Just remove -lm! Works for me!"
>
>The problem is that the g77 runtime library (libg2c) contains main, and
>internal reordering of libraries by gcc driver causes the problem.
>
>  $ cat libm-bugf.f
>
>        program libm_bug
>        write (*,*) 'libm bug'
>        stop
>        end
>  
>Following causes a problem because g77 driver puts -lm before -lg2c
>(use -v to see it):
>
>  $ g77 -o libm-bugf.exe libm-bugf.f -lm
>  /usr/lib/libm.a(libcmain.o)(.text+0x6a):libcmain.c: undefined reference 
>  to `WinMain@16' collect2: ld returned 1 exit status
>
>Following "fixes" the problem now that we know that libg2c must come
>beforehand (use -v to see it):
>
>  $ g77 -o libm-bugf.exe libm-bugf.f -lg2c -lm
>  $ 
>
>I know the symptom, but don't know the real problem, hence don't know
>the solution (yet).

Maybe the only solution is to remove -lm.  I do appreciate the analysis
of the problem.  Now I at least understand why this is happening.

cgf

--
Want to unsubscribe from this list?
Check out: http://cygwin.com/ml/#unsubscribe-simple


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]