This is the mail archive of the cygwin mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: port of linux code: linker does not find .a

Mirko wrote:

I am trying to compile a c code that has been developed on linux (monte-carlo plasma simulation).

(Ahem, keep in mind that I am not a master programmer or linux user, so I may be going a bit over my head)

The code consists of two utilities, xgrafix and xdp1. xgrafix creates a library that xpdp1 is supposed to link to.

I managed to compile the xgrafix and generate the library (the makefile uses the ar command for that). However, when trying to link xpdp1, the linker fails to recognize the xgrafix library, even though the path is correct or if I move the library to the working directory.

From browsing the cygwin mailing list I gleaned that I may in fact need to create a .dll and not an .a and that the linker is failing because it can link only with a dll. Correct?So my question is three-fold:

1) am I supposed to create a dll instead of an a(rchive)
2) if so, should I use the instructions in the cygwin docs regarding the makings of a dll? I ask that because in those instructions, we use gcc while in the original makefile, we used ar.
3) Is cygwin the right environment for this? I like to have it on my pc, and would rather not have to learn to use mingw.



Well, half an hour after posting my question, I was poking at the mingw site I found a link to a tutorial that mentined the -lXXX and libXXX.a naming convention. Sure enough, when I applied the correct naming scheme the linker found the library. I now have other issues and questions, but I want to tinker a bit more before coming out more questions.



-- Unsubscribe info: Problem reports: Documentation: FAQ:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]