gcc Link problem


 
Thread Tools Search this Thread
Top Forums Programming gcc Link problem
# 1  
Old 11-18-2002
gcc Link problem

I have some crypting functions in object-file - for example,func.o
Main file,from where crypting functions called, named as main.cpp .
"gcc main.cpp -o main func.o" print "undefined reference to ... "
But if I rename main.cpp to main.c and execute
"gcc main.c -o main func.o" - ok. If anybody, what's wrong
in my actions please help, I'm really need .cpp file in project
# 2  
Old 11-18-2002
answer

i think that the word "gcc" compile only c file while your main.cpp file is a c++ file
# 3  
Old 11-19-2002
Re: answer

Quote:
Originally posted by dbargo
i think that the word "gcc" compile only c file while your main.cpp file is a c++ file
Hi !!
Try this
g++ main.cpp -o main func.o
also plz use g++ even to link c code and allways qualify ur c-functions with -->
#ifdef __CPLUSPLUS
extern "C" {
#endif

<return type> function_name ([args if any]) {
// function body
}

#ifdef __CPLUSPLUS
}
#endif
This is to ensure that ur c-function never face name mangling while getting processed by c++ compiler.
regards
Sachin.
iamsachinr
# 4  
Old 11-19-2002
Re: Re: answer

Quote:
Originally posted by iamsachinr


Hi !!
Try this
g++ main.cpp -o main func.o
also plz use g++ even to link c code and allways qualify ur c-functions with -->
#ifdef __CPLUSPLUS
extern "C" {
#endif

<return type> function_name ([args if any]) {
// function body
}

#ifdef __CPLUSPLUS
}
#endif
This is to ensure that ur c-function never face name mangling while getting processed by c++ compiler.
regards
Sachin.
ooooooops iam sorry.
correct the compiling command to
g++ -o main main.cpp func.o
I promise such mistake wont come up from my side now.
iamsachinr
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Programming

Gcc openmp programming problem

Dear Linux users, I'm a noob at openmp, gcc and c programming. I can run my own openmp code in terminal with no problem, eg. gcc -fopenmp program.c -o program. But now I'm trying to compile and run another person's code, it contains a makefile and multiple .c and .h files. I don't know how to... (2 Replies)
Discussion started by: pigeon151
2 Replies

2. Programming

problem with realloc( i think is gcc :/ )

Hi everyone, i made this program. is a simple one for practising malloc, realloc and structs. I have a struct named shop as global variable in which i take the size of the matrix from the keyboard and after i malloc it. I insert the values with the fullarray() and after i print the matrix with... (7 Replies)
Discussion started by: giampoul
7 Replies

3. Programming

gcc problem

Hi, I just try to solve the problem why one app failing on box1 and runs ok on box2, they have diff gcc version as I see from /proc/version: box1:: 3.4.1 box2:: 4.1.2 It's RedHat 64b boxes, so I can not run some <make all> command on box1, do you think I need to upgrade (if I'm using... (1 Reply)
Discussion started by: mario17
1 Replies

4. Solaris

gcc problem on Solaris

I just installed gcc from the latest package at sunfreeware.com using pkgadd. I write a simple 'Hello World!' program to test it. I try to compile it and I get this error: rockstar# gcc hello.c -o hello ld.so.1: gcc: fatal: libiconv.so.2: open failed: No such file or directory Killed I... (0 Replies)
Discussion started by: Bradj47
0 Replies

5. Red Hat

GCC version problem

I have a host PC and a target system . Host System -> gcc (3.2) Redhat linux kernel 2.4.20-8 , glibc 2.3 Target System -> gcc (4.1) Fedora linux kernel 2.6.18-1.2798.fc6, glibc 2.5 I would like to build test program that can be run on both systems --------------------------- ... (0 Replies)
Discussion started by: mugdha
0 Replies

6. Programming

How to link lib or Dll using gcc

I had this lib which I don't have access to the source code and is created by micosoft Visual C++ compiler ...... Right now I want to reuse this lib as part of my new project which only has gcc as the only compiler... I had the problem that the lib won't link to my other c code... my... (2 Replies)
Discussion started by: yuwang
2 Replies

7. Solaris

gcc 3.4 Regex problem

Hello All, I have been using String.h with gcc 2.95. Now I have upgraded to gcc 3.4. The support for String.h has been removed and I believe Regex.h support is also not inbuilt. So I tried to build my own library for String.h. I had to use Regex.h and rx.h for a succesful library compilation.... (0 Replies)
Discussion started by: manishs13
0 Replies

8. Programming

A problem of GCC

Hi mates, I am a new comer of this forums. I have a problem while using function "fread(buffer, size, number, file-pointer)" to read a binary file. While I used the "fread()" to read the binary file under Solaris UNIX System, it worked very well. But it gets a incorrect result... (6 Replies)
Discussion started by: cquedugdylp
6 Replies

9. Programming

use gcc and link with a library

Hello, J have a problem when I use gcc: This comand works: gcc -shared -fpic -I/usr/include/sys -I/usr/include -L/usr/lib/librt.sl essai1.c mylib.sl but gcc I/usr/include/sys -I/usr/include -L/usr/lib/librt.sl essai2.c -o essai don't work. The first command creates a dynamique... (1 Reply)
Discussion started by: AUBERT
1 Replies

10. UNIX for Dummies Questions & Answers

Problem installing gcc

Hi! I have downloaded a precompiled gcc package but I'm having problems installing it. It is supposed to install in /usr/local and there is plenty of space left there but during the installation I get the following error message “No space left on device”. Is it some kind of temp folder that is out... (2 Replies)
Discussion started by: alfabetman
2 Replies
Login or Register to Ask a Question