![]() | |
![]() |
| | Thread Tools | Display Modes |
#1
| |||
| |||
|
#2
| |||
| |||
|
#3
| |||
| |||
|
|
Hi All, After some hacking and reading of manuals and consulting venerable Fortran Gurus...I've managed to get the blasted thing to compile. Sadly when I attempt to build the application image I get link errors: [snip] :add_cr.f .text+0x69): undefined reference to `f_open':add_cr.f .text+0xa4): undefined reference to `s_rsfe':add_cr.f .text+0xd0): undefined reference to `do_fio':add_cr.f .text+0xeb): undefined reference to `e_rsfe'...etc... Anyone got any idea about these? Marty |

#4
| |||
| |||
|
|
Hi All, After some hacking and reading of manuals and consulting venerable Fortran Gurus...I've managed to get the blasted thing to compile. Sadly when I attempt to build the application image I get link errors: [snip] :add_cr.f .text+0x69): undefined reference to `f_open':add_cr.f .text+0xa4): undefined reference to `s_rsfe':add_cr.f .text+0xd0): undefined reference to `do_fio':add_cr.f .text+0xeb): undefined reference to `e_rsfe'...etc... Anyone got any idea about these? Marty |

#5
| |||
| |||
|
|
Hi Mike, I have a two possibilities: 1. /usr/lib/gcc-lib/x86_64-redhat-linux/3.2.3/libg2c.a 2. /usr/lib/gcc-lib/x86_64-redhat-linux/3.2.3/32/libg2c.a I'm running on II 9.1.1 (a64.lnx/105)NPTL so I assumed I needed the former. I altered abflnk.opt to include: * * * * -L/usr/lib/gcc-lib/x86_64-redhat-linux/3.2.3 * * * * -lg2c The abfimage command has now resolved almost all the undefined references.... Building runnable image of addtrial . . . abextract.obj .data+0x1728): undefined reference to `add_cr'collect2: ld returned 1 exit status E_AB0020 Link failed * * The link failed with status '69891'. *This could mean either that the * * linker could not be run or that it ran and returned an error. But add_cr is the name of the fortran procedure that caused all this nonsense to begin with. So I blew away the abf directory holding the application and rebuilt the image...and got the same result. I can't find an abextract.* program in the source or in the application definition. What is it and why is it pissing me off? Marty -----Original Message----- From: info-ingres-boun... (AT) kettleriverconsulting (DOT) com [mailto:info-ingres-boun... (AT) kettleriverconsulting (DOT) com] On Behalf Of MikeT Sent: 22 January 2009 18:12 To: info-ing... (AT) kettleriverconsulting (DOT) com Subject: Re: [Info-Ingres] abf problems on fortran program On Jan 22, 7:51*am, "Martin Bowes" <martin.bo... (AT) ctsu (DOT) ox.ac.uk> wrote: Hi All, After some hacking and reading of manuals and consulting venerable Fortran Gurus...I've managed to get the blasted thing to compile. Sadly when I attempt to build the application image I get link errors: [snip] :add_cr.f .text+0x69): undefined reference to `f_open':add_cr.f .text+0xa4): undefined reference to `s_rsfe':add_cr.f .text+0xd0): undefined reference to `do_fio':add_cr.f .text+0xeb): undefined reference to `e_rsfe'...etc... Anyone got any idea about these? Marty Marty, IIRC abf compilation uses sepfortr, or maybe it's just for testing? At any rate, a sample run is below. $ sepfortr quel apxd EQUEL apxd: /usr/bin/f77 -o apxd.exe apxd.f -rdynamic /devsrc/main/toumi01/install/ build/ingres/lib/libingres.a -lpthread -lrt -lm -lc -lcrypt -ldl /lib/ libgcc_s.so.1 The unresolved symbols you listed should be in libg2c.a, and I'm under the impression that g77 (a.k.a. f77) will use this without any -l specification needed. That said, since I'm under 60 years old, I'm no FORTRAN guru. ![]() MikeT _______________________________________________ Info-Ingres mailing list Info-Ing... (AT) kettleriverconsulting (DOT) comhttp://www.kettleriverconsulting.com/mailman/listinfo/info-ingres |
#6
| |||
| |||
|
|
Hi Mike, I have a two possibilities: 1. /usr/lib/gcc-lib/x86_64-redhat-linux/3.2.3/libg2c.a 2. /usr/lib/gcc-lib/x86_64-redhat-linux/3.2.3/32/libg2c.a I'm running on II 9.1.1 (a64.lnx/105)NPTL so I assumed I needed the former. I altered abflnk.opt to include: * * * * -L/usr/lib/gcc-lib/x86_64-redhat-linux/3.2.3 * * * * -lg2c The abfimage command has now resolved almost all the undefined references.... Building runnable image of addtrial . . .abextract.obj .data+0x1728): undefined reference to `add_cr'collect2: ld returned 1 exit status E_AB0020 Link failed * * The link failed with status '69891'. *This could mean either that the * * linker could not be run or that it ran and returned an error. But add_cr is the name of the fortran procedure that caused all this nonsense to begin with. So I blew away the abf directory holding the application and rebuilt the image...and got the same result. I can't find anabextract.* program in the source or in the application definition. What is it and why is it pissing me off? Marty |
#7
| |||
| |||
|
|
Still fighting this battle? |
|
The abextract program is generated by abf. Guessed that bit. |
|
As for add_cr, I assume your program is generating that link need? Is this for a crypto function? |
#8
| |||
| |||
|
|
Hi Mike, Still fighting this battle? Yes. Plus I decided to raise an issue with the Corp about this as well. The abextract program is generated by abf. Guessed that bit. As for add_cr, I assume your program is generating that link need? Is this for a crypto function? It must be. But add_cr is not a crypto function, its actually taking a report and making sure there are carriage returns at the end of the lines. I'm not sure why its necessary, it might be something peculiar to VMS, but given that its part of the application I'm hesitant to try and unpick it at this point. Marty |
#9
| |||
| |||
|
|
Hi Mike, Still fighting this battle? Yes. Plus I decided to raise an issue with the Corp about this as well. The abextract program is generated by abf. Guessed that bit. As for add_cr, I assume your program is generating that link need? Is this for a crypto function? It must be. But add_cr is not a crypto function, its actually taking a report and making sure there are carriage returns at the end of the lines. I'm not sure why its necessary, it might be something peculiar to VMS, but given that its part of the application I'm hesitant to try and unpick it at this point. Marty |
#10
| |||
| |||
|
|
Hi Scott et al, Well done to Kristoff Picard in Tech support, who pointed out that due toa quirk in the g77 compiler the object was defined with a trailing underscore! So all I had to do was edit the procedure definition and alter the 'Symbol' field to inclde the trailing underscrore. But, g77 wasn't quite done with us...the name add_cr already has an underscore, so g77 defines a symbol with TWO trailing underscores!! A quick edit of the Symbol field to 'add_cr__' and now the blasted thing links beautifully! Yay Team! Now that's why I pay for support! Marty -----Original Message----- From: info-ingres-boun... (AT) kettleriverconsulting (DOT) com [mailto:info-ingres-boun... (AT) kettleriverconsulting (DOT) com] On Behalf Of OldSchool Sent: 29 January 2009 16:38 To: info-ing... (AT) kettleriverconsulting (DOT) com Subject: Re: [Info-Ingres] abf problems on fortran program On Jan 28, 10:31Â*am, "Martin Bowes" <martin.bo... (AT) ctsu (DOT) ox.ac.uk wrote: Hi Mike, Still fighting this battle? Yes. Plus I decided to raise an issue with the Corp about this as well. The abextract program is generated by abf. Guessed that bit. As for add_cr, I assume your program is generating that link need? Is this for a crypto function? It must be. But add_cr is not a crypto function, its actually taking a report and making sure there are carriage returns at the end of the lines. I'm not sure why its necessary, it might be something peculiar to VMS, but given that its part of the application I'm hesitant to try and unpick it at this point. Marty this may have been asked elsewhere, if so apologies.... so add_cr has been defined in the abf app as a procedure, with the correct return type? _______________________________________________ Info-Ingres mailing list Info-Ing... (AT) kettleriverconsulting (DOT) comhttp://www.kettleriverconsulting.com/mailman/listinfo/info-ingres |
![]() |
| Thread Tools | |
| Display Modes | |
| |