c++.stl.port - port 4.5.3 compile and other issues
- Richard <fractal clark.net> Oct 24 2002
- "Walter" <walter digitalmars.com> Oct 24 2002
- Richard <fractal clark.net> Oct 29 2002
- "Walter" <walter digitalmars.com> Oct 29 2002
Hi Am having trouble with latest download update for CD version and stlport. The compile of stlport dies immediatly in "c_local.c". And this is with latest 8.30 update. The only way it would compile was *with* support for stl iostream enabled in stlport\src\config (_STLP_NO_NEW_IOSTREAMS undefined). After it compiled, I started getting some errors, so reinstalled from CD to 8.29n, installed 8.30 upgrade, and recompiled stlport with iostream enabled. Changed my path to point to stlport as per readme by mod of sc.ini and environment. Still no luck on stl lib compile with iostreams turned off. But libs compiled with iostream support enabled. Ok.. so what.. the libs compiled right.. Well, I started getting some odd behavior in compiling a program using <string> and <vector>. When #include <string> appeared first, the project compiled fine.. but with #include <vector> before <string> the messages following this note appeared. And.. so what.. just put <string> first.. Yeah, but then I started getting some funky deallocation related access violations when allowing a <map> to destroy some strings with erase() and pop_back(). And the problems reported below are related to basic_string character trait allocation. So I did a search in stlport to see if there was some easy define or something to help, and it was like a jungle with no clear exit strategy. After a while, it seemed clear that I am not qualified to modify STL source files. I noticed there was a post that suggested a workaround for the problem, and then Walter said he posted fix on download site. BUT I download CD upgrade with stl stuff and get problem noted earlier.. Please help. Richard sc Appliance.cpp -Ae -mn -C -WA -S -3 -a8 -c -gf -D_CONSOLE=1 -D_MT=1 -oAppliance.obj sc Connection.cpp -Ae -r -mn -C -WA -S -3 -a8 -c -gf -D_CONSOLE=1 -D_MT=1 -oConnection.obj sc Exception.cpp -Ae -r -mn -C -WA -S -3 -a8 -c -gf -D_CONSOLE=1 -D_MT=1 -oException.obj sc FDsets.cpp -Ae -r -mn -C -WA -S -3 -a8 -c -gf -D_CONSOLE=1 -D_MT=1 -oFDsets.obj sc Main.cpp -Ae -r -mn -C -WA -S -3 -a8 -c -gf -D_CONSOLE=1 -D_MT=1 -oMain.obj sc Proxy.cpp -Ae -r -mn -C -WA -S -3 -a8 -c -gf -D_CONSOLE=1 -D_MT=1 -oProxy.obj sc Socket.cpp -Ae -r -mn -C -WA -S -3 -a8 -c -gf -D_CONSOLE=1 -D_MT=1 -oSocket.obj sc Thread.cpp -Ae -r -mn -C -WA -S -3 -a8 -c -gf -D_CONSOLE=1 -D_MT=1 -oThread.obj sc WinsockBase.cpp -Ae -r -mn -C -WA -S -3 -a8 -c -gf -D_CONSOLE=1 -D_MT=1 -oWinsockBase.obj link /CO /NOI /DE /NOPACKF /XN /NT /ENTRY:mainCRTStartup /BAS:4194304 /A:512 auditor.LNK Error: D:\apps\digital_mars\auditor\Connection.OBJ(Connection) (6826083): Previous Definition Different : ??$__get_c_string DV?$char_traits D V?$allocator D YAPBDABV?$basic_string DV?$char_traits D V?$ Error: D:\apps\digital_mars\auditor\Main.OBJ(Main) (6826083): Previous Definition Different : ??$__get_c_string DV?$char_traits D V?$allocator D YAPBDABV?$basic_string DV?$char_traits D V?$ Error: D:\apps\digital_mars\auditor\Proxy.OBJ(Proxy) (6826083): Previous Definition Different : ??$__get_c_string DV?$char_traits D V?$allocator D YAPBDABV?$basic_string DV?$char_traits D V?$ Error: D:\apps\digital_mars\auditor\Socket.OBJ(Socket) (6826083): Previous Definition Different : ??$__get_c_string DV?$char_traits D V?$allocator D YAPBDABV?$basic_string DV?$char_traits D V?$ Lines Processed: 1115770 Errors: 4 Warnings: 0 Build failed
Oct 24 2002
Hmm. Try removing -C. "Richard" <fractal clark.net> wrote in message news:ap9skg$1090$1 digitaldaemon.com...Hi Am having trouble with latest download update for CD version and stlport. The compile of stlport dies immediatly in "c_local.c". And this is with
8.30 update. The only way it would compile was *with* support for stl
enabled in stlport\src\config (_STLP_NO_NEW_IOSTREAMS undefined). After it compiled, I started getting some errors, so reinstalled from CD
8.29n, installed 8.30 upgrade, and recompiled stlport with iostream
Changed my path to point to stlport as per readme by mod of sc.ini and environment. Still no luck on stl lib compile with iostreams turned off.
libs compiled with iostream support enabled. Ok.. so what.. the libs compiled right.. Well, I started getting some odd behavior in compiling a program using
and <vector>. When #include <string> appeared first, the project compiled
but with #include <vector> before <string> the messages following this
appeared. And.. so what.. just put <string> first.. Yeah, but then I started getting some funky deallocation related access violations when allowing a <map> to destroy some strings with erase() and pop_back(). And the problems reported below are related to basic_string character trait allocation. So I did a search in stlport to see if there was some easy define or
to help, and it was like a jungle with no clear exit strategy. After a
seemed clear that I am not qualified to modify STL source files. I noticed there was a post that suggested a workaround for the problem,
Walter said he posted fix on download site. BUT I download CD upgrade with
stuff and get problem noted earlier.. Please help. Richard sc Appliance.cpp -Ae -mn -C -WA -S -3 -a8 -c -gf -D_CONSOLE=1 -D_MT=1 -oAppliance.obj sc Connection.cpp -Ae -r -mn -C -WA -S -3 -a8 -c -gf -D_CONSOLE=1 -D_MT=1 -oConnection.obj sc Exception.cpp -Ae -r -mn -C -WA -S -3 -a8 -c -gf -D_CONSOLE=1 -D_MT=1 -oException.obj sc FDsets.cpp -Ae -r -mn -C -WA -S -3 -a8 -c -gf -D_CONSOLE=1 -D_MT=1 -oFDsets.obj sc
sc
jsc Socket.cpp -Ae -r -mn -C -WA -S -3 -a8 -c -gf -D_CONSOLE=1 -D_MT=1 -oSocket.obj sc Thread.cpp -Ae -r -mn -C -WA -S -3 -a8 -c -gf -D_CONSOLE=1 -D_MT=1 -oThread.obj sc WinsockBase.cpp -Ae -r -mn -C -WA -S -3 -a8 -c -gf -D_CONSOLE=1 -D_MT=1 -oWinsockBase.obj link /CO /NOI /DE /NOPACKF /XN /NT /ENTRY:mainCRTStartup /BAS:4194304
auditor.LNK Error: D:\apps\digital_mars\auditor\Connection.OBJ(Connection) (6826083): Previous Definition Different :
g DV?$char_traits D V?$Error: D:\apps\digital_mars\auditor\Main.OBJ(Main) (6826083): Previous Definition Different :
g DV?$char_traits D V?$Error: D:\apps\digital_mars\auditor\Proxy.OBJ(Proxy) (6826083): Previous Definition Different :
g DV?$char_traits D V?$Error: D:\apps\digital_mars\auditor\Socket.OBJ(Socket) (6826083):
Definition Different :
g DV?$char_traits D V?$Lines Processed: 1115770 Errors: 4 Warnings: 0 Build failed
Oct 24 2002
In article <apaiej$1ms8$2 digitaldaemon.com>, Walter says...Hmm. Try removing -C.
Tried that, but lib still refused to compile. Also tried in my project after using lib compiled with stream support to see if odd memory behavior evaporated. No diff. But the problem did go away.. The problem was header mismanagement in my code. After a complete review of header insertion the problem evaporated. My guess is that I was include iostream.h in a few places before <vector> or other stl and caused ambiguity in defines or structs. So now I do: #include stl headers #include windows headers #include c runtime headers #include my headers Richard
Oct 29 2002
I'm glad you were able to solve the problem. I try to make all the headers on my own projects independent of include order, I suppose the stlport designers didn't do that. "Richard" <fractal clark.net> wrote in message news:aplri8$28g0$1 digitaldaemon.com...In article <apaiej$1ms8$2 digitaldaemon.com>, Walter says...Hmm. Try removing -C.
Tried that, but lib still refused to compile. Also tried in my project
using lib compiled with stream support to see if odd memory behavior
No diff. But the problem did go away.. The problem was header mismanagement in my code. After a complete review
header insertion the problem evaporated. My guess is that I was include iostream.h in a few places before <vector> or other stl and caused
defines or structs. So now I do: #include stl headers #include windows headers #include c runtime headers #include my headers Richard
Oct 29 2002








"Walter" <walter digitalmars.com>