Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
29276 Discussions

VASP error:libmdy.a,could not read symbols,archive has no index:run ranlib to add one

zhangwei818800
Beginner
1,174 Views
I am compiling vasp.4.6 serial edition, the systemare redhat enterprise 5,ifort9.0,mkl9.0, CPU intel core T5800, when I do the last setp "make" in vasp.4.6 , it give errors such as libmdy.a,could not read symbols:archive has no index:run ranlib to add one,how can I solve this problem, I nearly crazy
0 Kudos
1 Solution
Ron_Green
Moderator
1,174 Views
Quoting - tim18
This message is intended to be nearly self-explanatory. Did you try "ranlib libmdy.a" as suggested? Your Makefile should do this automatically when it modifies a library, so it seems to have died before reaching that step, and only the person who is there (you) has access to the relevant information.
Your ifort and mkl versions are far too old to have been tested on RHEL5 before release, and there are significant differences between RHEL5 minor versions, but those questions don't necessarily bear on your issue.

To add to what Tim has said: Compiler and MKL 9.0 were only tested on RHEL 4, and older. RHEL 5 and gcc/binutils were quite different on RHEL 5 - perhaps the object files created by the old ifort 9.0 will not work.

For a modern system and Red Hat 5, you should use the latest compiler 11.1 and MKL.

This may not fix your build problem, but it will certainly remove one variable that is in doubt.

View solution in original post

0 Kudos
4 Replies
TimP
Honored Contributor III
1,174 Views
Quoting - zhangwei818800
I am compiling vasp.4.6 serial edition, the systemare redhat enterprise 5,ifort9.0,mkl9.0, CPU intel core T5800, when I do the last setp "make" in vasp.4.6 , it give errors such as libmdy.a,could not read symbols:archive has no index:run ranlib to add one,how can I solve this problem, I nearly crazy
This message is intended to be nearly self-explanatory. Did you try "ranlib libmdy.a" as suggested? Your Makefile should do this automatically when it modifies a library, so it seems to have died before reaching that step, and only the person who is there (you) has access to the relevant information.
Your ifort and mkl versions are far too old to have been tested on RHEL5 before release, and there are significant differences between RHEL5 minor versions, but those questions don't necessarily bear on your issue.
0 Kudos
Ron_Green
Moderator
1,175 Views
Quoting - tim18
This message is intended to be nearly self-explanatory. Did you try "ranlib libmdy.a" as suggested? Your Makefile should do this automatically when it modifies a library, so it seems to have died before reaching that step, and only the person who is there (you) has access to the relevant information.
Your ifort and mkl versions are far too old to have been tested on RHEL5 before release, and there are significant differences between RHEL5 minor versions, but those questions don't necessarily bear on your issue.

To add to what Tim has said: Compiler and MKL 9.0 were only tested on RHEL 4, and older. RHEL 5 and gcc/binutils were quite different on RHEL 5 - perhaps the object files created by the old ifort 9.0 will not work.

For a modern system and Red Hat 5, you should use the latest compiler 11.1 and MKL.

This may not fix your build problem, but it will certainly remove one variable that is in doubt.

0 Kudos
zhangwei818800
Beginner
1,174 Views

To add to what Tim has said: Compiler and MKL 9.0 were only tested on RHEL 4, and older. RHEL 5 and gcc/binutils were quite different on RHEL 5 - perhaps the object files created by the old ifort 9.0 will not work.

For a modern system and Red Hat 5, you should use the latest compiler 11.1 and MKL.

This may not fix your build problem, but it will certainly remove one variable that is in doubt.


Thank you, Mr Green.I know what you say. As I think ifort11 is so new that some vasp souce codes which are write by fortran77/90 cannot be read by ifort11 such as "goto"sentence. So just as the makefile in vasp said that " Linux varies a lot" ^_^
0 Kudos
Steven_L_Intel1
Employee
1,174 Views

No, that's not true. Intel Fortran supports Fortran 66, 77, 90 and 95 syntax. GOTO is still part of the Fortran language.

The issue you're having is not a failing of the compiler.
0 Kudos
Reply