03-26-2013
If you have the "extern int i" declaration in your file.h then I do not see why you would still get the multiple definition error...because the i in file2.c inside main is unrelated to the i in file1.c inside foo which in turn is unrelated to the global i that is defined in file2.c.
You have to look at the way the different variables are setup in the segments to understand the linkages between them. The global i defined in file2.c lies in the data segment and is unrelated to the local i inside main within the file2.c which lies on the stack frame created for main...similarly the local i inside foo of file1.c lies in the stack frame created for foo and is unrelated to the global i or the i that is local to main...let me know if this helps or if i have managed to confuse you even more
10 More Discussions You Might Find Interesting
1. Programming
Hi
I'm getting
ld: fatal: option -h and building a dynamic executable are incompatible
ld: fatal: Flags processing errors
When I run
ld -shared -L/usr/dt/lib -lDtSvc -o builtin.so Workspace.o
after running
gcc -fPIC -I/usr/X11R6/include -I/usr/dt/include -c Workspace.c
I'm... (6 Replies)
Discussion started by: laho
6 Replies
2. UNIX for Dummies Questions & Answers
Getting the following error ,
ld: /opt/syncsort39/lib/libsyncsort.sl: Mismatched ABI. 64-bit PA shared library found in 32-bit link.
Is there any difference in the ld options in opt file while linking a 64 bit shared library ? Or is the problem because we are trying to link both 32 bit and 64... (3 Replies)
Discussion started by: arunkumar_mca
3 Replies
3. Shell Programming and Scripting
Hi,
I got a script which sends the Email to the user based on certain variables received from Tivoli Server Monitoring 6.1.
Now to keep track of the mails I have wrote a stored procedure in DB2 as we use DB2 UDB as back end which take the variables that were used to send the mail and store it... (3 Replies)
Discussion started by: tcskurra
3 Replies
4. Programming
Hello,
we are a group of students (mechanical engineering) who are trying to port UNIX-software to a PC Linux system during a study project. The first goals were achieved: compiling the Fortran code and creating object files. However, we encounter errors during the linking process.
This is... (0 Replies)
Discussion started by: Dynamo
0 Replies
5. Programming
Hello. This shouldn't be an unusual problem, but I cannot find anything about it at google or at other search machine.
So, I've made an application using C++ and QtCreator. I 've made a new mime type for application's project files.
My system (ubuntu 10.10), when I right click a file and I... (3 Replies)
Discussion started by: hakermania
3 Replies
6. Programming
gcc -g -o MY_ELF test1.c test2.c -lm
I get this error multiple times...
/tmp/cc5TzMPo.o:(.data+0x0): multiple definition of 'XYZ' (1 Reply)
Discussion started by: dragonpoint
1 Replies
7. Programming
I have a C binary file(.so as extension) which is delivered by a product.
How do i use this functionalities of this .so file in my C program?
How can in link the .so to my C program? (1 Reply)
Discussion started by: vkca
1 Replies
8. UNIX for Advanced & Expert Users
Hi,
We have installed linux6(RHEL) OS and installed datastage application on that.
First time installation worked fine and our all services related to datastage was up and running.
When we stopped the datastage and restarted its giving below error while restart:-
./uv -admin -start
... (0 Replies)
Discussion started by: prasson_ibm
0 Replies
9. Programming
I am on a FreeBSD system trying to build a piece of software that I wrote. I had built it in the past but recently reinstalled FreeBSD. I am not sure what is going on. The software depends on and wxgtk2.8.
Using g++:
$ make
g++ -c `wx-config --cxxflags`... (9 Replies)
Discussion started by: AntumDeluge
9 Replies
10. Linux
Hi,
Currently I am migrating codes from unix to Linux. When doing linking(ld) getting the below error.
Error is :ld: invalid BFD target `--shared'
Providing the script of the ld:
ld -b -G -o lib/libatk.so ./src/atk_db.o ./src/atk_gcl.o ./src/atk_options.o ./src/atk_exception.o... (1 Reply)
Discussion started by: jrkar
1 Replies
XZDIFF(1) XZ Utils XZDIFF(1)
NAME
xzcmp, xzdiff, lzcmp, lzdiff - compare compressed files
SYNOPSIS
xzcmp [cmp_options] file1 [file2]
xzdiff [diff_options] file1 [file2]
lzcmp [cmp_options] file1 [file2]
lzdiff [diff_options] file1 [file2]
DESCRIPTION
xzcmp and xdiff invoke cmp(1) or diff(1) on files compressed with xz(1), lzma(1), gzip(1), or bzip2(1). All options specified are passed
directly to cmp or diff. If only one file is specified, then the files compared are file1 (which must have a suffix of a supported com-
pression format) and file1 from which the compression format suffix has been stripped. If two files are specified, then they are uncom-
pressed if necessary and fed to cmp(1) or diff(1). The exit status from cmp or diff is preserved.
The names lzcmp and lzdiff are provided for backward compatibility with LZMA Utils.
SEE ALSO
cmp(1), diff(1), xz(1), gzip(1), bzip2(1), zdiff(1)
BUGS
Messages from the cmp(1) or diff(1) programs refer to temporary filenames instead of those specified.
Tukaani 2009-07-05 XZDIFF(1)