what is equivilant to dll in linux
Joerg Faschingbauer
jfasch@hyperwave.com
Sat Feb 28 23:38:00 GMT 1998
ayehia@yahoo.com writes:
> HI all
> i had the code of a program written in VC++
> it consist of exe file and many dll files
> how can i port this to LINUX ..
The equivalent (roughly) of a DLL is a shared library.
To make one, be sure to have gcc documentation handy. Any reasonable
distribution should have it. Try
info gcc
from the commandline to get the standalone info browser, or
Control-h i
in emacs.
> how to compile
You must compile your C files position-independently. For example,
gcc -g -fPIC -o file.o -c file.c
or
g++ -g -fPIC -o file.o -c file.c
(depends on the language.)
> how to build
(Still don't know how you guys define 'build'.)
You link a shared library consisting of the object file file1.o
file2.o about as follows.
gcc -shared -o program file1.o file2.o -llibrary1 -llibrary2
or
g++ -shared -fPIC -o program file1.o file2.o -llibrary1 -llibrary2
You need to pass -fPIC here because C++ linking requires compiling
internal extra files to have the global ctors called.
> how to debug
gdb is your program of choice. As always, `info gdb`. There is a
graphical frontend available, xxgdb, but I'm not used to it.
> how to profile
info gprof
> how to port this large amount of code i have..
I'm afraid I can't help you with this (:-).
> please send me any URLs talking in that ..or
http://egcs.cygnus.com/
is a good starting point. I don't know of others as the extensive
documentation that comes with all the tools mostly sufficed. If it
doesn't, this newsgroup is a good place to ask.
Have fun,
Joerg
More information about the Cygwin
mailing list