- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - HP-UX
- >
- Re: Pro*C 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
Forums
Discussions
Discussions
Discussions
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
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
01-28-2009 03:40 AM
01-28-2009 03:40 AM
When we try to compile and link a pro*c file we get the below error. Can any one highlight what might be causing the error ?
Operating System: HP-UX Itanium 11.31
Database: 10.2.0.4
Pro*C compiler version: pro*C/C++: Release 10.2.0.4.0
C/C++ Version: HP C/aC++ for Integrity Servers B3910B A.06.17 [Mar 4 2008]
/home/builddir $ make build_plc_barts
/opt/ansic/bin/cc -o plc_barts assign_plc_chan.o init_plc_devices.o plc_barts.o queue_plc4
ld: Mismatched ABI (not an ELF file) for -lclntsh, found /lib/hpux64/libclntsh.so
Fatal error.
*** Error exit code 1
/home/builddir $ make build_get_plc_data
Making Object files for get_plc_data.c
/opt/ansic/bin/cc -c +DD64 -I. -I../lib -I/u01/dba/oracle/product/10.2.0/precomp/public c
/opt/ansic/bin/cc -o get_plc_data get_plc_data.o -L/lib/hpux64 -L/u01/dba/oracle/product/14
ld: Unsatisfied symbol "sqlcx2t" in file get_plc_data.o
ld: Unsatisfied symbol "main" in file
2 errors.
*** Error exit code 1 (ignored)
/bin/rm -f get_plc_data.o
The make file has the following
# C compiler flags
CFLAGS= +DD64
LFLAGS= -L/lib/hpux64 -L/u01/dba/oracle/product/10.2.0/lib -lclntsh +DD64
# C compiler include directories
IFLAGS= -I. -I../lib $(PRECOMPPUBLIC) -I/u01/dba/oracle/product/10.2.0/precomp/public
build_get_plc_data: get_plc_data.o
-$(CC) -o get_plc_data get_plc_data.o $(LFLAGS)
$(RM) get_plc_data.o
If required we can upload the complete make file.
Thanks,
Dhivya
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-28-2009 05:09 AM
01-28-2009 05:09 AM
Re: Pro*C Error
What does "file /lib/hpux64/libclntsh.so" show?
cc -o get_plc_data get_plc_data.o -L/lib/hpux64 -L/u01/dba/oracle/product/14
>-L/lib/hpux64
This path is incorrect, remove it since it is the default. You also are missing +DD64.
I don't see any -l options to specify the shlibs?
LFLAGS= -L/lib/hpux64 ...
Remove this -L.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-28-2009 07:31 PM
01-28-2009 07:31 PM
Re: Pro*C Error
file /lib/hpux64/libclntsh.so shows
ELF-64 shared object file - IA64
We get the below after removing /lib/hpux64 and removing -L from the LFLAGS
/opt/ansic/bin/cc -c +DD64 -I. -I../lib -I/u01/dba/oracle/product/1012ias/precomp/public plc_barts.c
/opt/ansic/bin/cc -o plc_barts assign_plc_chan.o init_plc_devices.o plc_barts.o queue_plc_read.o read_plc_ast.o translate4
ld: Mismatched ABI for -lclntsh, found /usr/lib/hpux64/libclntsh.so
Fatal error.
*** Error exit code 1
Thanks,
Dhivya
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-28-2009 08:22 PM
01-28-2009 08:22 PM
Re: Pro*C Error
So you need a 64 bit application.
>cc -c +DD64 plc_barts.c
>cc -o plc_barts assign_plc_chan.o init_plc_devices.o plc_barts.o queue_plc_read.o read_plc_ast.o translate4
ld: Mismatched ABI for -lclntsh
What does file(1) show for each object file:
assign_plc_chan.o init_plc_devices.o plc_barts.o queue_plc_read.o read_plc_ast.o
To get a list of each linker input you can use "-Wl,-t".
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-28-2009 09:10 PM
01-28-2009 09:10 PM
Re: Pro*C Error
init_plc_devices.o: ELF-32 relocatable object file - IA64
plc_barts.o: ELF-64 relocatable object file - IA64
queue_plc_read.o: ELF-32 relocatable object file - IA64
read_plc_ast.o: ELF-32 relocatable object file - IA64
It seems that C files uses 32 bit compiler.
All the files refers to /lib.
Please let us know what can be done.
Thanks,
Dhivya
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-28-2009 09:32 PM
01-28-2009 09:32 PM
Re: Pro*C Error
You need to find their makefiles and make sure CFLAGS has +DD64.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-28-2009 10:28 PM
01-28-2009 10:28 PM
Re: Pro*C Error
Appreciate your immediate response.
We are very new to Pro*C and your suggestions are really useful for us.
We have deleted all the object files and created again with +DD64 in the make files.
Now we get C specific errors.
We have a lot of programs. Few programs throw errors and few throuws warnings.
For instance, We get an error saying "Argument was incompatible with formal parameter".
Also we got an error "Cannot load upload_trim_program.o" . We gave 777 permissions to the file and tried compiling it again. It threw an error saying "Execute Permission denied".
Please help.
Thanks,
Dhivya
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-28-2009 11:00 PM
01-28-2009 11:00 PM
Re: Pro*C Error
(I know very little about Pro*c.)
>Now we get C specific errors.
Then you need to stop and use the 32 bit version of libclntsh. Going to 64 bit requires porting work.
>We get an error saying "Argument was incompatible with formal parameter".
This is likely an error you would have to fix if you had to port.
>we got an error "Cannot load upload_trim_program.o". We gave 777 permissions to the file and tried compiling it again. It threw an error saying "Execute Permission denied".
Who is giving the error? Where are your error logs?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-29-2009 12:36 AM
01-29-2009 12:36 AM
Re: Pro*C Error
I modified the CFLAGS and LFLAGS to +DD32 and tried compiling.
Now i get an error saying ". Stop.nnot read or get /u01/dba/oracle/product/10.2.0/precomp/lib/env_precomp.mk"
Please suggest.
Thanks,
Dhivya
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-29-2009 01:34 AM
01-29-2009 01:34 AM
Re: Pro*C Error
Is this before or after the previous errors?
Any other errors in your make output?
Does this env_precomp.mk file exist?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-29-2009 01:47 AM
01-29-2009 01:47 AM
Re: Pro*C Error
This error is occuring only after i modified the CFLAGS AND LFLAGS to +DD32 in the makefile.
I also tried changing it back to +DD64.
Still getting same error.
>Any other errors in your make output?
No i get only this error
>Does this env_precomp.mk file exist?
Yes, it exists.
Thanks,
Dhivya
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-29-2009 01:53 AM
01-29-2009 01:53 AM
Re: Pro*C Error
>>Does this env_precomp.mk file exist?
>Yes, it exists.
Is it accessible by the user and the contents not changed?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-29-2009 01:57 AM
01-29-2009 01:57 AM
Re: Pro*C Error
Thanks,
Dhivya
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-29-2009 02:04 AM
01-29-2009 02:04 AM
Re: Pro*C Error
Then you are going to have to go looking for zebras. :-)
We need to find out why make can't find that file by using tusc:
tusc -fp -o tusc.out your-make-command
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-29-2009 10:19 PM
01-29-2009 10:19 PM
Re: Pro*C Error
Actually while modifying the make file i FTPd it to local machine and opened using notepad and moved it back to the server. Notepad has inserted some junk characters and that was causing the issue.
Now, we get few warning when we try compiling the programs. And the program gets compiled when we use +D
We get the follwing error when we tried compiling a program.
ld: Unsatisfied symbol "sqlcx2t" in file get_plc_data.o
ld: Unsatisfied symbol "main" in file
2 errors.
*** Error exit code 1 (ignored)
/bin/rm -f get_plc_data.o
We guess that the fix may be as simple as adding a header file. But we donot knwo what that header file is.
Also, we get the following,
/home/builddir $ make build_sy_ocstobarts
Making Object files for sy_ocstobarts.c
/usr/ccs/bin/cc -c +DD64 +W2225,2009,2001,2174,2177,2117,2181,2180,4212,2549,2167,2169 -I. -I../lib -I/u01/dba/oracle/prodc
/usr/ccs/bin/cc -o sy_ocstobarts sy_ocstobarts.o -L/u01/dba/oracle/product/1012ias/lib -lclntsh +DD64
ld: Unsatisfied symbol "piut_setservernode" in file sy_ocstobarts.o
ld: Unsatisfied symbol "pipt_findpoint" in file sy_ocstobarts.o
ld: Unsatisfied symbol "piut_connect" in file sy_ocstobarts.o
ld: Unsatisfied symbol "pitm_systime" in file sy_ocstobarts.o
ld: Unsatisfied symbol "pitm_formtime" in file sy_ocstobarts.o
ld: Unsatisfied symbol "piut_netserverinfo" in file sy_ocstobarts.o
ld: Unsatisfied symbol "piar_compvalues" in file sy_ocstobarts.o
7 errors.
*** Error exit code 1
Gess they are refering to missing PI interface components.
Can you please help us out in this issue?
Thanks,
Dhivya
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-29-2009 10:37 PM
01-29-2009 10:37 PM
Re: Pro*C Error
You mean +W
ld: Unsatisfied symbol "sqlcx2t"
ld: Unsatisfied symbol "main"
Is the first in some Oracle shlib?
Where is your main?
>Guess they are referring to missing PI interface components.
Did you forget to add a -l library?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-30-2009 12:56 AM
01-30-2009 12:56 AM
Re: Pro*C Error
>Is the first in some Oracle shlib?
Am not sure of that.
>Did you forget to add a -l library?
Actually, we have been using these files in 64 bit so far in HP_UX PA-RISC 11i and when moved to HP_UX Itanium 11.31 these programs are throwing this error.
So we are not sure what libraries to include.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-30-2009 01:52 AM
01-30-2009 01:52 AM
Re: Pro*C Error
Are you still linking with -lclntsh?
>So we are not sure what libraries to include.
Start with the same -l but you'll need to change any -L.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-30-2009 02:12 AM
01-30-2009 02:12 AM
Re: Pro*C Error
# C compiler flags
CFLAGS= +DD64
LFLAGS= -L$(ORACLE_HOME)/lib -lclntsh +DD64
# C compiler include directories
IFLAGS= -I. -I../lib $(PRECOMPPUBLIC) -I$(ORACLE_HOME)/precomp/public
# Target definitions
build_get_plc_data: get_plc_data.o
-$(CC) -o get_plc_data get_plc_data.o $(LFLAGS)
$(RM) get_plc_data.o
Thanks,
Dhivya
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-30-2009 03:57 AM
01-30-2009 03:57 AM
Re: Pro*C Error
We get few warnings while compiling the files.
"core_cards2.c", line 355: warning #2181-D: argument is incompatible with
corresponding format string conversion
fscanf(infile, "%s", &uidx);
^
"core_cards2.c", line 853: warning #2174-D: expression has no effect
exit;
^
Please help.
Thanks,
Dhivya
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-30-2009 04:18 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-30-2009 04:27 AM
01-30-2009 04:27 AM
Re: Pro*C Error
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-30-2009 05:04 AM
01-30-2009 05:04 AM
Re: Pro*C Error
That isn't valid. Using &udix is a char**. This doesn't match %s. So remove the &.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-30-2009 05:19 AM
01-30-2009 05:19 AM
Re: Pro*C Error
But i dont understand why & should be removed.
Can you please explain?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-30-2009 05:53 AM
01-30-2009 05:53 AM
Re: Pro*C Error
I get an error,
"sc_upload_loads2.c", line 381: warning #2181-D: argument is incompatible with
corresponding format string conversion
roll_size, prod_order_tons);
^
in a statement " printf ("%6d %2d %6.2f %4.2f\n", weyer_order_no, count_knives,
roll_size, prod_order_tons);"
prod_order_tons is of type int.
I get another error,
"sc_upload_loads2.c", line 1301: warning #2181-D: argument is incompatible
with corresponding format string conversion
scanf ("%f", price);
^
here price is of type float.
Please suggest.
Thanks,
Dhivya