- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I'm a newbie to mixed language environments and have run into trouble trying to call an IMSL routine from Visual C++ 6. I've read the documentation and samples but can't get a simple program to link. It complies OK but get a whole lot of likner error messages (87 in fact) that look something like:
imsl.lib(DTRSV.obj) : error LNK2001: unresolved external symbol _E1PSH@8
imsl.lib(DGER.obj) : error LNK2001: unresolved external symbol _E1PSH@8
etc.
The header of the C++ code has
extern "C" {
void __stdcall DRLINE(long*, double*, double*, double*, double*, double*);
}
I've used 'imsl.h' and tried to link with df all with the same problem.
help!
Thanks
John R
I'm a newbie to mixed language environments and have run into trouble trying to call an IMSL routine from Visual C++ 6. I've read the documentation and samples but can't get a simple program to link. It complies OK but get a whole lot of likner error messages (87 in fact) that look something like:
imsl.lib(DTRSV.obj) : error LNK2001: unresolved external symbol _E1PSH@8
imsl.lib(DGER.obj) : error LNK2001: unresolved external symbol _E1PSH@8
etc.
The header of the C++ code has
extern "C" {
void __stdcall DRLINE(long*, double*, double*, double*, double*, double*);
}
I've used 'imsl.h' and tried to link with df all with the same problem.
help!
Thanks
John R
Link Copied
3 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Are you also linking against the three IMSL libraries? The declaration you show isn't the one for the routine in the error message.
Steve
Steve
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks Steve,
This is a strange one. I did as suggested and link all three libraries. This threw up more link-time errorswith complaints about not finding __OtsMove, __FIsqrt and a whole lot of others.
So I added a whole lot of other libraries in for good measure dfor.lib dfqwin.lib dfqw_sdi.lib. Each time old errors were fixed but new ones were added! Finally I was left one error:
Linking...
dfqwin.lib(qwkentry.obj) : error LNK2001: unresolved external symbol __beginthreadex
Is there no simple way to add IMSL to C++? Or am I too dumb? I feel like it after playing around with this for a few days.
John
This is a strange one. I did as suggested and link all three libraries. This threw up more link-time errorswith complaints about not finding __OtsMove, __FIsqrt and a whole lot of others.
So I added a whole lot of other libraries in for good measure dfor.lib dfqwin.lib dfqw_sdi.lib. Each time old errors were fixed but new ones were added! Finally I was left one error:
Linking...
dfqwin.lib(qwkentry.obj) : error LNK2001: unresolved external symbol __beginthreadex
Is there no simple way to add IMSL to C++? Or am I too dumb? I feel like it after playing around with this for a few days.
John
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Get rid of all the df* libs you added and replace them with dformt.lib and dfconsol.lib.
Steve
Steve

Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page