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]

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


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).

Regards,
Mumit



--
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]