stdcxx-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Patrick Happel" <phap...@quovadx.com>
Subject ifstream Behaves Strangely when using Static Linking
Date Tue, 06 Mar 2007 15:28:28 GMT
  A customer I'm supporting has run into an issue with ifstream when
linking an application statically on AIX.  I've attached a test case
that reads tokens in from a file three at a time, and prints them out.
When compiled with dynamic linking, the application behaves as expected,
but when compiled with static linking, the entire file is put into one
string, without breaking on whitespace.  I'm using a 12s build type for
this, so I'm not sure why there should be a problem with using static
linking.  The customer is specifying the linking via the '-bstatic'
flag.  I'm not entirely sure if this option is supported by the Standard
Library.  I noted in the documentation for Visual Age that the Native
Standard Library is always compiled with dynamic linking.  I'm not sure
of the reasons for this, but figured I should point it out.
  I tested this on AIX 5L v5.3, using XLC 7.0 64-bit, with patches up to
8/31/2005 applied.  The Standard Library being used is version 4.1.4.
I've attached the test file, and included included the output I get
below.  Any input would be appreciated.
 
Thanks,
 -Patrick Happel
 
Rogue Wave Software, 
A QUOVADX(tm) division 
Technical Support 
Phone: 303-545-3227 -- 1-800-404-4767 
E-mail: support@roguewave.com <mailto:support@roguewave.com> 
Web: http://www.roguewave.com/support <http://www.roguewave.com/support>




[phappel@gemini filetest]$ xlCcore_r -q64
-I/package/1/compilers/5.2.0/va70_20050831/root/usr/vacpp/include -I. -O
-D_REENTRANT -qsuppress=1500-029 -qnotempinc -c newtester.cpp -o
newtester.o
[phappel@gemini filetest]$ xlCcore_r -q64 -O -D_REENTRANT -Wl,-bh:5
-qnotempinc -o newtester newtester.o -lC    
[phappel@gemini filetest]$ ./newtester
first column value is: taco
first column value is: foo
first column value is: old
first column value is: one
first column value is: one
[phappel@gemini filetest]$ xlCcore_r -q64 -O -D_REENTRANT -Wl,-bh:5
-qnotempinc -o newtester newtester.o -bstatic -lC -bdynamic
[phappel@gemini filetest]$ ./newtester
first column value is: taco
first column value is: foo
first column value is: old
first column value is: one
first column value is: one
[phappel@gemini filetest]$ cp newtester.cpp ~/temp/newtester2.cpp
[phappel@gemini filetest]$ xlCcore_r -q64 -D_RWCONFIG=12s10g
-I./../Ed9_12s10g/include -I./../Ed9_12s10g/include/ansi
-I./../Ed9_12s10g/ -I. -O -D_REENTRANT -qsuppress=1500-029 -qnotempinc
-c newtester.cpp -o newtester.o [phappel@gemini filetest]$ xlCcore_r
-q64 -O -D_REENTRANT -Wl,-bh:5 -qnotempinc -D_RWCONFIG=12s10g -o
newtester newtester.o -L./../Ed9_12s10g/lib -lstd12s10g [phappel@gemini
filetest]$ ./newtester
first column value is: taco
first column value is: foo
first column value is: old
first column value is: one
first column value is: one
[phappel@gemini filetest]$ xlCcore_r -q64 -O -D_REENTRANT -Wl,-bh:5
-qnotempinc -D_RWCONFIG=12s10g -o newtester newtester.o -bstatic
-L./../Ed9_12s10g/lib -lstd12s10g -bdynamic
[phappel@gemini filetest]$ ./newtester
first column value is: taco burrito quesedilla foo bar boofar old now
new one two three

[phappel@gemini filetest]$ 
 

Mime
  • Unnamed multipart/mixed (inline, None, 0 bytes)
View raw message