Dear Alex The exact form taken by the external symbols depends on the compiler settings. The Compaq Fortran 6.6 compiler defaulted to adding an @ to the function name, followed by a number which was the sum of the sizes in bytes of the function arguments. This practice was not followed in later versions of the compiler, after the rights to it had been bought by Intel. We currently use the Intel 10 compiler to build the suite. You need to adjust your Project properties to get the external symbols right. Go to Project, Properties, Fortran, External Procedures and try adjusting the Calling Convention entry. 'C, Reference' is probably the one to use. (At least this is what you do with later versions of the compiler. It's a few years since I last used CVF6.6 so you might need to make minor modifications to these instructions. I assume you are running through the gui. If you are running CVF 6.6 from the command line, please get back to me and I'll try to dig out the command line way of doing this). Norman Stein CCP4 ________________________________
From: CCP4 bulletin board [mailto:[EMAIL PROTECTED] On Behalf Of Alex XIE Sent: 01 October 2008 03:07 To: CCP4BB@JISCMAIL.AC.UK Subject: [ccp4bb] mtz library in windows Dear all, I am using CCP4 mtz library and other libraries to develop a program. Because I am using a PC at home, I am actually using the CCP4 in windows. However, when I link the mtz library(hence libccp4c.lib), it happens that the compiler complains error LNK2001: unresolved external symbol [EMAIL PROTECTED] and some other functions that should be in libccp4c not found. I checked the project setting(I am using compaq visual fortran 6.6), I have included libccp4c, libccp4f in the library, and library path in /link/input/Additional Library Path, so I don't understand why the compiler still cannot resolve the functions. Can anybody help, please? Your suggestion is greatly appreciated. Alex