BUG: Using the Iostream Library with Alternate Math in CLast reviewed: July 17, 1997Article ID: Q85873 |
7.00 | 1.00 1.50
MS-DOS | WINDOWS
kbprg kbbuglist
The information in this article applies to:
SYMPTOMSLinking an application that uses the iostream library with an alternate math library generates the following errors:
error L2029: 'FISRQQ': unresolved external error L2029: 'FJSRQQ': unresolved external error L2029: 'FIWRQQ': unresolved external error L2029: 'FIARQQ': unresolved external error L2029: 'FJARQQ': unresolved external error L2029: 'FICRQQ': unresolved external error L2029: 'FJCRQQ': unresolved external error L2029: 'FIDRQQ': unresolved external error L2029: 'FIERQQ': unresolved external RESOLUTIONIf the source was compiled with /FPa, explicitly link with the emulator or coprocessor library instead of letting the linker choose the alternative math libraries by default. This can be done by adding the /NOD option to the libraries field of the link command line as shown below:
link ... ,,, /NOD:<m>libca <m>libc<y> ...Where <m> is memory model: s, m, c, or l. <y> is math option: e or 7 -or- Recompile with /FPi or /FPi87, rather than /FPa, so that the linker is passed the name of the emulator or coprocessor library. -or- Convert the code so that it does not use the iostream library.
STATUSMicrosoft has confirmed this to be a problem in the products listed at the beginning of this article. We are researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available. This is not a problem in Visual C++ 32-bit Edition, because /FPa is not supported.
MORE INFORMATIONThe following code example demonstrates this problem:
Sample Code
/* Compile options needed: /FPa */ #include <iostream.h> void main( ){ float FloatVar=2.718; cout << FloatVar;}
|
Additional reference words: 7.00 1.00 1.50
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |