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

Redistributable Files for IVF 9.0 DLL

Yitzak_B_
Beginner
835 Views
My Visual Basic 6.0 application uses CVF 6.6 Dll, and the redistributable file DFORRT.dll. The DLL has recently beenbuild by IVF 9.0.(Visual Net 2003 IDE) and works well and faster( with the Main program VB 6.0) .
What are the redistributable files and their dependancies suitable to IVF9.0 and toreplace DFORRT.dll ?
Many thanks for your help.
0 Kudos
19 Replies
Steven_L_Intel1
Employee
835 Views
Probably what you need is ifcorert.dll.
0 Kudos
Yitzak_B_
Beginner
835 Views
Hi Steve,
ifcorert.dll is not part of IVF 9.0 compiler. Do I need to download it? If so, what is the link ?.
Many thanks
Yitzak
0 Kudos
Steven_L_Intel1
Employee
835 Views
Sorry - libifcorert.dll is the correct name.
0 Kudos
Yitzak_B_
Beginner
835 Views
libifcorert.dll does not help! nor any other libifcore*.dll in the BIN folder.
I get the massage " can not find FUNCALC.dll " - same massage that CVF without DFORRT.dll would have sent. Clearly I need the RTL dll to replace DFORRT.dll.
Yitzak
0 Kudos
Steven_L_Intel1
Employee
835 Views
Oh, I think I know. It's not that you're missing the file - you're not. It's that it can't be found because the path to it isn't in your PATH. When you install IVF, it asks you if you want to update the system environment variables. If you say no, you can't run code that depends on the DLLs because Microsoft's rules for Windows Installer is that "thou shalt not install DLLs in the Windows or Windows System folder" (except that MS breaks this rule themselves with abandon.)

So. Right click on My Computer, select Properties, Advanced, Environment Variables. Under System Variables, click PATH and select Edit. Add to the end of the string:

;"C:Program FilesIntelCompilerFortran9.0IA32Lib"

Click OK, OK.

See if that helps.
0 Kudos
Yitzak_B_
Beginner
835 Views
Sorry Steve, perhaps I was not clear enough to state the problem.
It's not that the application does not work on the computer that built it. i.e the computer that has on it the IVF 9.0 and all other Microsoft tools. The application does not work on another computer that does not have any of the above tools. On the development computer,I created an instance of the application; todeliberately crash it, so that I can see the the RTL DLL handling the error. It turns out to be libifcoremd.dll. I then installed the application by Mcirosoft SETUP created byVB 6.0 WIZARD which incidentally puts libifcoremd.dll in the application folder by default. Still can not find the DLL !!
Yitzak
0 Kudos
Steven_L_Intel1
Employee
835 Views
Ok. Copy all of the .dll files found in the compiler IA32Lib folder. Depending on which DLLs your application uses, it will need some of these.

Putting the DLL in the application folder does not help, unless the VB program is being built as an EXE. You need to put them in a folder listed in the PATH environment variable, or the Window or Windows System folder.

If this doesn't help, I'll point you at a tool to help diagnose this.
0 Kudos
Yitzak_B_
Beginner
835 Views
Recap:
1. VB6.0 Application is EXE
2. The Application calls functions contained in DLL library built by a) CVF6.6say CVFDLL ( the real name is FUNCALC.dll) b) IVF9.0 say IVFDLL (the real name again is FUNCALC.dll)
3.Iinstallation routine is SETUP.exe built by VB6.0 WIZARD
Runs:
1. On the development computer: No problem !!
a) CVF run: In the application folder there are CVFDLL and DFORTT.DLL
, runOK as it should. Removing either CVFDLL or DFORRT.dll
or both result in a message : cannot find the DLL file as it should be.
b) IVF run : In the application folder there is IVFDLL,andCVFDLLDFORRT.DLL are removed. Works fine !!!
2) Installing the application on a computer with XP professional sp2 with no development tools of any kind. ( ie. Intel, Microsoft or CVF)
a) CVF : The CAB contains CVFDLL and DFORRT.DLL which are placed in the application folder. runs fine no problem!!!
b) IVF : The CAB contains IVFDLL and all DLLs found in IA32lib. which are placed in the application folder ( I also tried tohave them installed in system32)
NO LUCK!! Still the message: cannot find the dll.
Steve, I have an application that is Mixed-Language and Mixed-IDE, so maybe IVFDLL contains some dependencies belonging to NET environment, whichmay not have been picked by the WIZARD.
Thanks for your help
Yitzak
0 Kudos
Steven_L_Intel1
Employee
835 Views
Unpack the attached ZIP file onto the target system in the place that has the EXE you are running. From a command prompt, type:

loadtest path-to-your-dll

and tell me what it says.
0 Kudos
Yitzak_B_
Beginner
835 Views
I cannot find any attached ZIP file
Yitzak
0 Kudos
Steven_L_Intel1
Employee
835 Views
Well, that's because I forgot to attach it. Here.
0 Kudos
Yitzak_B_
Beginner
835 Views
The message is :
About to load: funcalc.dll !( this is the IVF version )
?Error loading: funcalc.dll
?Error was: 0x7e <126.> - The specified module could not be found.
Note: funcalc.dll is visible. I run attrib -a -s -h -r funcalc.dll and itwas found.
Al other dlls including CVF version of funcalc.dll , as wel as the VB application were loaded correctly without errors.
Note : the IVF version of funcalc was loaded correctly on the the development computer!! .
Yitzak
0 Kudos
Steven_L_Intel1
Employee
835 Views
Try:

loadtest -d funcalc.dll
0 Kudos
Yitzak_B_
Beginner
835 Views
The message is:
DLL load at 7c900000 of:ntdll.dll
DLL load at 7c800000 of WINDOWSsystem32kernel32.dll
DLL load at 77dd0000 of WINDOWSsystem32ADVAPI32.dll
DLL load at 77e70000 of WINDOWSsystem32RPCRT4.dll
DLL load at 10000000 0f program filesBASfuncalc.dll
?Error loading: funcalc.dll
?Error was 0x7e <126.> - The specified module could not be found.
Yitzak
0 Kudos
Steven_L_Intel1
Employee
835 Views
Would you please put the DLL in a ZIP file and send it to me at steve.lionel at intel.com? I'd like to see what it wants.
0 Kudos
Yitzak_B_
Beginner
835 Views
Files were emailed.



Thanks



Yitzak

Message Edited by sblionel on 07-28-2005 09:00 AM

0 Kudos
Yitzak_B_
Beginner
835 Views
Yes!!!! it is working!!!

MSVCR71.DLL was missing.

It is truly wonderful and helpful working with you Steve.

Many thanks

Yitzak
0 Kudos
davidshort
Beginner
835 Views
I may not have the same problem, but I have it's little brother.

IVF 9.0.2713 Standard edition.
c# from some version of visual studio.net
.net 1
XP service pak2

A pair of application call fortran dll's from c# interfaces.
Both applications work fine on the development machine.
Both applications appear to fail when trying to access the DLL's on a target machine running the same OS.
(one says..."unable to load davids.dll. The specified module could not be found." The other says "Davidsprogram.exe has encountered a problem and needs to close. We are sorry for the inconvenience.") The second program is using the serial port routines.

I've gone the brute force route and taken all the DLL's from the IA32lib folder and my target DLL's and dropped them into windows, but that does not change either error message.

I'm confident that I've missed something pretty obvious, but I don't see what that "something" is.
0 Kudos
Steven_L_Intel1
Employee
835 Views
First, make sure you have built a "Release" configuration DLL and not Debug.

To find out what DLLs yours depends on, get the free tool Dependency Walker. A version of this had been included in MSVC 6. Very handy.
0 Kudos
Reply