PDA

View Full Version : Isnīt Visual C++ enought??



felipestumpf
2009-03-02, 14:17
Hi everyone

I have to run my own hyperelastic law on Abaqus and I have to do it through user subroutines. When I first run the Abaqus Verification, it says that I donīt have "Microsoft Visual C++ 7.1 or 8.0".
Ok, then I installed Microsoft Visual C++ that comes with Microsoft Visual Studio 2008.
But after running again Abaqus Verification, it still says:
"Requirement: Microsoft Visual C++ 7.1 or 8.0
Product: Abaqus make utility with C++
Status: Fail - Unable to locate and/or determine the version of a
C++ compiler on this system. If Visual C++ or Visual Studio
.NET is installed on this system, please load the
vcvars32.bat file before running Abaqus."

When I find and run "vcvars32.bat" file, anything happens.
Isnīt Visual C++ enough? Does it have to be C++ Compiler from Visual Studio.NET or can I use the Compiler from Visual Studio 2008?

By searching in another foruns Iīve read that I also have to install Intel Fortran Compiler, is it true?
I want to write my subroutines in C++ language and still have to have installed Intel Fortran Compiler?

Please, if somebody have any clue of what Iīm doing wrong, help me because Iīm losing so much time...:mad:


Thank you
Regards
Felipe Stumpf

felipestumpf
2009-03-02, 14:40
I forgot to mention that I have Visual C++ 2005 Express Edition. If Visual Studio 2008 canīt be used, can this 2005 Express edition be? And then I also have to install a Fortran Compiler? Does it exists any free Fortran Compiler that could be used?

Thank you!!

Jorgen
2009-03-02, 19:44
I have struggled with those issues too. Here are some comments:

- I typically don't worry about the Abaqus verification. You don't need to pass that to use a user-subroutine.

- If you want to write your subroutine using C++, which is just fine, then you cannot use the Abaqus "make" approach. With Fortran subroutines you can often compile your subroutines using: abaqus make library=[fortran file name]
This does not work with C++ subroutines.

- I think (if I recall right) that both VS 2005 and VS 2008 work with Abaqus.

- For C++ subroutines you can instead create an obj-file by manually compiliing the source file using the cmd-line. You can then use the obj-file when using Abaqus by using a command like: abaqus job=[job name] user=[object file]

- You can also compile a shared dll library directly from your C++ file. Then you don't have to specify "user=[obj file]".

/Jorgen

felipestumpf
2009-03-03, 07:42
Thank you for the answer professor.

So I do not have to have installed both VS and Intel Fortran Compiler to make possible the use of subroutines? Only VC or Fortran Compiler is enought depending on the language Iīm going to use?

Another question: for someone who never worked on any kind of programming in any language, wich one would you think is easier to implement: C++ or Fortran?


Thank you very much

Regards,
Felipe Stumpf

Jorgen
2009-03-09, 20:11
I have both VC and Intel Fortran on my computer and that works with both C++ and Fortran and mixed language user subroutines. I think that you only need one of the compilers (but I not 100% sure).

Most people find Fortran easier to learn.

-Jorgen