c++ - Undefined symbols using stlport map
- Dimitri Kaparis (19/19) Sep 12 2002 Greetings,
- Christof Meerwald (13/26) Sep 13 2002 I guess you are compiling with -D_STLP_NO_NEW_IOSTREAMS from the command
- Dimitri Kaparis (14/30) Sep 13 2002 Actually I build from the command line without specifying any additional
Greetings, I have encountered the following problem: when using the map class from stlport (and these seem to be functions defined in stl\_tree.h), when building from the IDDE, I get the following errors on linking: Error: D:\MYPROJECTS\TEST\Main.OBJ(Main) (1293653086): Symbol Undefined ?_M_increment ?$_Rb_global _N SAPAU_Rb_tree_node_base PAU2 Z Error: D:\MYPROJECTS\TEST\Main.OBJ(Main) (1293653086): Symbol Undefined ?_M_decrement ?$_Rb_global _N SAPAU_Rb_tree_node_base PAU2 Z Error: D:\MYPROJECTS\TEST\Main.OBJ(Main) (1293653086): Symbol Undefined ?_Rebalance ?$_Rb_global _N SAXPAU_Rb_tree_node_base AAPAU2 Z The same file builds successfully from the command line, even without specifying the stlport static lib (this seems to be required only when using streams). It also builds successfully if I include the dynamic version of the library instead of the static one in the IDDE. Any ideas? Thanks, Dimitri http://www.universalstudyhelper.com Universal Study Helper - the quick and easy way to learn any subject
Sep 12 2002
On Thu, 12 Sep 2002 21:24:51 +0000 (UTC), Dimitri Kaparis wrote:I have encountered the following problem: when using the map class from stlport (and these seem to be functions defined in stl\_tree.h), when building from the IDDE, I get the following errors on linking: Error: D:\MYPROJECTS\TEST\Main.OBJ(Main) (1293653086): Symbol Undefined ?_M_increment ?$_Rb_global _N SAPAU_Rb_tree_node_base PAU2 Z Error: D:\MYPROJECTS\TEST\Main.OBJ(Main) (1293653086): Symbol Undefined ?_M_decrement ?$_Rb_global _N SAPAU_Rb_tree_node_base PAU2 Z Error: D:\MYPROJECTS\TEST\Main.OBJ(Main) (1293653086): Symbol Undefined ?_Rebalance ?$_Rb_global _N SAXPAU_Rb_tree_node_base AAPAU2 Z The same file builds successfully from the command line, even without specifying the stlport static lib (this seems to be required only when using streams).I guess you are compiling with -D_STLP_NO_NEW_IOSTREAMS from the command line (but not from the IDDE). The reason it doesn't work without _STLP_NO_NEW_IOSTREAMS is that DM doesn't support explicit template instantiation and therefore some template instantiations are currently missing from the STLport libraries (but when compiling with _STLP_NO_NEW_IOSTREAMS these STLport libraries aren't needed). bye, Christof -- http://cmeerw.org JID: cmeerw jabber.at mailto cmeerw at web.de ...and what have you contributed to the Net?
Sep 13 2002
In article <alsa0g$12mc$1 digitaldaemon.com>, Christof Meerwald says...On Thu, 12 Sep 2002 21:24:51 +0000 (UTC), Dimitri Kaparis wrote:Actually I build from the command line without specifying any additional parameters, like: sc test.cpp It does not seem this defines _STLP_NO_NEW_IOSTREAMS because if I try it with a file that uses streams and I don't specify the stlport lib, I still get a bunch of unresolved symbols at linking. I can use map, however without any problems - not so from the IDDE. Now I have tried defining _STLP_NO_NEW_IOSTREAMS in the project settings in IDDE and this indeed solves the problem with map and also I can use iostreams without linking with the stlport lib. However this also doesn't explain why I don't get these errors when linking with the dynamic library? Thanks, DimitriI have encountered the following problem: when using the map class from stlport (and these seem to be functions defined in stl\_tree.h), when building from the IDDE, I get the following errors on linking: Error: D:\MYPROJECTS\TEST\Main.OBJ(Main) (1293653086): Symbol Undefined ?_M_increment ?$_Rb_global _N SAPAU_Rb_tree_node_base PAU2 Z Error: D:\MYPROJECTS\TEST\Main.OBJ(Main) (1293653086): Symbol Undefined ?_M_decrement ?$_Rb_global _N SAPAU_Rb_tree_node_base PAU2 Z Error: D:\MYPROJECTS\TEST\Main.OBJ(Main) (1293653086): Symbol Undefined ?_Rebalance ?$_Rb_global _N SAXPAU_Rb_tree_node_base AAPAU2 Z The same file builds successfully from the command line, even without specifying the stlport static lib (this seems to be required only when using streams).I guess you are compiling with -D_STLP_NO_NEW_IOSTREAMS from the command line (but not from the IDDE).
Sep 13 2002