- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - Linux
- >
- C compiler error
Categories
Company
Local Language
Forums
Discussions
Forums
- Data Protection and Retention
- Entry Storage Systems
- Legacy
- Midrange and Enterprise Storage
- Storage Networking
- HPE Nimble Storage
Discussions
Discussions
Discussions
Forums
Forums
Discussions
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
- BladeSystem Infrastructure and Application Solutions
- Appliance Servers
- Alpha Servers
- BackOffice Products
- Internet Products
- HPE 9000 and HPE e3000 Servers
- Networking
- Netservers
- Secure OS Software for Linux
- Server Management (Insight Manager 7)
- Windows Server 2003
- Operating System - Tru64 Unix
- ProLiant Deployment and Provisioning
- Linux-Based Community / Regional
- Microsoft System Center Integration
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Community
Resources
Forums
Blogs
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО07-05-2006 12:12 PM
тАО07-05-2006 12:12 PM
C compiler error
I have a C program and i receive this error
/libda05/dnpl/source $cc -Ae -lm SAP718B.c -lcl -lcurses -o SAP718B
"SAP718B.c", line 317: warning #3197-D: the prototype declaration of
"FILE *fopen(const char *, const char *)" (declared at line 285 of
"/usr/include/stdio.h") is ignored after this unprototyped
redeclaration
FILE *fopen(), *fp1;
^
"SAP718B.c", line 660: warning #2111-D: statement is unreachable
a=system("date");
^
ld: Unsatisfied symbol "RfcReceive" in file SAP718B.o
ld: Unsatisfied symbol "RfcOpen" in file SAP718B.o
ld: Unsatisfied symbol "RfcClose" in file SAP718B.o
ld: Unsatisfied symbol "RfcCall" in file SAP718B.o
4 errors.
i┬┤ve already put the libraries in the /usr/lib.
The c programs has this line
RfcRc = RfcReceive hRfc,Importing,Tables,&RfcException);
Please your help to solve the problem.
- Tags:
- unsat
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО07-05-2006 03:27 PM
тАО07-05-2006 03:27 PM
Re: C compiler error
Seems like you are not linking your source code to any of the SAP libraries. It is possible that your source code depends on them, more so since this error is being reported by the link-loader (ld), which resolves external dependencies.
~hope it helps
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО07-06-2006 02:54 AM
тАО07-06-2006 02:54 AM
Re: C compiler error
922:/libda05/dnpl/source => cc -lm SAP718B.c /usr/lib/librfc.a -lcl -lcurses >
"SAP718B.c", line 317: warning #3197-D: the prototype declaration of
"FILE *fopen(const char *, const char *)" (declared at line 285 of
"/usr/include/stdio.h") is ignored after this unprototyped
redeclaration
FILE *fopen(), *fp1;
^
"SAP718B.c", line 660: warning #2111-D: statement is unreachable
a=system("date");
^
ld: Mismatched Data ABI. Expected None but found EF_IA_64_ABI64 in file /usr/lib/librfc.a[rfcilib.o]
Fatal error.
Please your help.
- Tags:
- ABI mismatch
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО07-06-2006 03:13 AM
тАО07-06-2006 03:13 AM
Re: C compiler error
You have to compile your source in 64-bit mode by supplying the +DD64 switch at the command line i.e.
# cc +DD64 -lm SAP718B.c ...
~hope it helps
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО07-06-2006 03:41 AM
тАО07-06-2006 03:41 AM
Re: C compiler error
FILE *fopen(), *fp1;
^
simply change this to:
FILE *fp1;
because your unprototyped function declaration reflects a coding that is at least 15 years out of date. fopen is already declared in an included header file so your declaration is not needed and conflicts with the prior definition.
"SAP718B.c", line 660: warning #2111-D: statement is unreachable
a=system("date");
This one is more difficult but it is telling you that this statement will never be executed because, for example, it follows an unconditional return or exit or it is enclosed in a condition that is always false.
ld: Mismatched Data ABI. Expected None but found EF_IA_64_ABI64 in file /usr/lib/librfc.a[rfcilib.o]
Fatal error.
This one is telling you that you have mismatched binaries between your object files and those of this library. This can be the result of not compiling all the objects under the same data model or even mismatched machine types.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО07-06-2006 04:50 AM
тАО07-06-2006 04:50 AM
Re: C compiler error
You need to have IA-64 version of the library which you are trying to link. Otherwise, you will receive mismatched ABI error.
Prior to compile, export CFLAGS, CPPFLAGS and LDFLAGS.
-Arun
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО07-10-2006 07:06 PM - edited тАО11-11-2011 11:42 PM
тАО07-10-2006 07:06 PM - edited тАО11-11-2011 11:42 PM
Re: ld errors on Integrity
$ cc -lm SAP718B.c /usr/lib/librfc.a -lcl -lcurses
ld: Mismatched Data ABI. Expected None but found EF_IA_64_ABI64 in file /usr/lib/librfc.a[rfcilib.o]
As Arun says, you need a IPF version of librfc. These would typically be in /usr/lib/hpux32/ or /usr/lib/hpux64/.
If you used -lrfc, the linker would find the right one.
(Note: -lm should be after your .c or .o files. This is why you get that mismatch, it finds the PA libm first.
Also -lcl should be replaced by -lunwind, unless you need some Fortran libs.)