lists.zerezo.com


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

***BOGO*** Re: [Mingw-users] STLport build



Hi

I finally successfully built STLport the way I wanted it to be built 
with the following link command:
c++ -Wall -Wsign-promo -Wcast-qual -fexceptions -mthreads -g  
-DWINVER=0x0501 -D_DEBUG -I../../stlport   -shared 
-Wl,--out-implib=obj/gcc/so_g/libstlportg.5.2.dll.a -nodefaultlibs  -o 
obj/gcc/so_g/libstlportg.5.2.dll obj/gcc/so_g/dll_main.o 
obj/gcc/so_g/fstream.o obj/gcc/so_g/strstream.o obj/gcc/so_g/sstream.o 
obj/gcc/so_g/ios.o obj/gcc/so_g/stdio_streambuf.o obj/gcc/so_g/istream.o 
obj/gcc/so_g/ostream.o obj/gcc/so_g/iostream.o obj/gcc/so_g/codecvt.o 
obj/gcc/so_g/collate.o obj/gcc/so_g/ctype.o obj/gcc/so_g/monetary.o 
obj/gcc/so_g/num_get.o obj/gcc/so_g/num_put.o 
obj/gcc/so_g/num_get_float.o obj/gcc/so_g/num_put_float.o 
obj/gcc/so_g/numpunct.o obj/gcc/so_g/time_facets.o 
obj/gcc/so_g/messages.o obj/gcc/so_g/locale.o obj/gcc/so_g/locale_impl.o 
obj/gcc/so_g/locale_catalog.o obj/gcc/so_g/facets_byname.o 
obj/gcc/so_g/complex.o obj/gcc/so_g/complex_io.o 
obj/gcc/so_g/complex_trig.o obj/gcc/so_g/string.o obj/gcc/so_g/bitset.o 
obj/gcc/so_g/allocators.o obj/gcc/so_g/c_locale.o obj/gcc/so_g/cxa.o 
obj/gcc/so_g/stlport.res  -Wl,-whole-archive -lsupc++  
-Wl,-no-whole-archive -lgcc -lm -lmoldname -lmingw32 -lmingwex -lmsvcrt 
-lkernel32

However I am still experimenting an issue. Despite I used 
-Wl,-whole-archive when linking libsupc++ I still have to specify it 
when linking an exec using STLport. Is this linker option not supported 
when using MinGW ? An other problem that I was expecting is that when 
running STLport unit tests each time an exception is thrown the 
application stop signaling it. As exception support been restored in 
latest experimental package ?

For your info I am using gcc 4.2.1 from an old experimental package 
granted on MinGW souceforge download page, I will try latest 
experimental package tomorrow.

Bests

François Dumont wrote:
> Hello
>
>    I am one of the STLport contributors that many MinGW users are also 
> using. STLport is a C++ Standard library implementation like libstdc++. 
> Under a number of platforms (Linux, Darwin...) STLport is built in order 
> to avoid dependency with libstdc++, I would like to do the same under 
> MinGW. So I have started to modify our build system and obtain the 
> following result:
>
> c++ -Wall -Wsign-promo -Wcast-qual -fexceptions -mthreads -g  
> -DWINVER=0x0501 -D_DEBUG -I../../stlport   -shared 
> -Wl,--out-implib=obj/gcc/so_g/libstlportg.5.2.dll.a,--enable-auto-image-base 
> -nostdlib  -o obj/gcc/so_g/libstlportg.5.2.dll  obj/gcc/so_g/dll_main.o 
> obj/gcc/so_g/fstream.o obj/gcc/so_g/strstream.o obj/gcc/so_g/sstream.o 
> obj/gcc/so_g/ios.o obj/gcc/so_g/stdio_streambuf.o obj/gcc/so_g/istream.o 
> obj/gcc/so_g/ostream.o obj/gcc/so_g/iostream.o obj/gcc/so_g/codecvt.o 
> obj/gcc/so_g/collate.o obj/gcc/so_g/ctype.o obj/gcc/so_g/monetary.o 
> obj/gcc/so_g/num_get.o obj/gcc/so_g/num_put.o 
> obj/gcc/so_g/num_get_float.o obj/gcc/so_g/num_put_float.o 
> obj/gcc/so_g/numpunct.o obj/gcc/so_g/time_facets.o 
> obj/gcc/so_g/messages.o obj/gcc/so_g/locale.o obj/gcc/so_g/locale_impl.o 
> obj/gcc/so_g/locale_catalog.o obj/gcc/so_g/facets_byname.o 
> obj/gcc/so_g/complex.o obj/gcc/so_g/complex_io.o 
> obj/gcc/so_g/complex_trig.o obj/gcc/so_g/string.o obj/gcc/so_g/bitset.o 
> obj/gcc/so_g/allocators.o obj/gcc/so_g/c_locale.o obj/gcc/so_g/cxa.o  
> obj/gcc/so_g/stlport.res  -Wl,--whole-archive -lsupc++  
> -Wl,--no-whole-archive -lgcc -lm -lmingw32 -lmingwex -lmsvcrt -lkernel32
> Info: resolving _atexit by linking to __imp__atexit (auto-importCreating 
> library file: obj/gcc/so_g/libstlportg.5.2.dll.a
> obj/gcc/so_g/complex.o(.text+0x7df): In function 
> `ZN8stlp_std3absIeEET_RKNS_7complexIS1_EE':
> c:/Utils/STLport/trunk/build/lib/../../src/complex.cpp:49: undefined 
> reference to `hypot'
> obj/gcc/so_g/complex.o(.text+0x809): In function 
> `ZN8stlp_std3absIdEET_RKNS_7complexIS1_EE':
> c:/Utils/STLport/trunk/build/lib/../../src/complex.cpp:44: undefined 
> reference to `hypot'
> obj/gcc/so_g/complex.o(.text+0x84a): In function 
> `ZN8stlp_std3absIfEET_RKNS_7complexIS1_EE':
> c:/Utils/STLport/trunk/build/lib/../../src/complex.cpp:41: undefined 
> reference to `hypot'
> obj/gcc/so_g/complex.o(.text+0x8ec): In function 
> `ZN8stlp_std4logTIeEENS_7complexIT_EERKS3_':
> c:/Utils/STLport/trunk/build/lib/../../src/complex.cpp:250: undefined 
> reference to `hypot'
> obj/gcc/so_g/complex.o(.text+0x9b1): In function 
> `ZN8stlp_std4powTIeEENS_7complexIT_EERKS3_S5_':
> c:/Utils/STLport/trunk/build/lib/../../src/complex.cpp:297: undefined 
> reference to `hypot'
> obj/gcc/so_g/complex.o(.text+0xae9):c:/Utils/STLport/trunk/build/lib/../../src/complex.cpp:287: 
> more undefined references to `hypot' follow
> c:/utils/msys/1.0/mingw/bin/../lib/gcc/mingw32/4.2.1/../../../libsupc++.a(pure.o)(.text$__cxa_pure_virtual+0x1e):pure.cc: 
> undefined reference to `write'
> fu000001.o(.idata$3+0xc): undefined reference to `libmsvcrt_a_iname'
> fu000002.o(.idata$3+0xc): undefined reference to `libmsvcrt_a_iname'
> fu000003.o(.idata$3+0xc): undefined reference to `libmsvcrt_a_iname'
> fu000004.o(.idata$3+0xc): undefined reference to `libmsvcrt_a_iname'
> nmth000000.o(.idata$4+0x0): undefined reference to `_nm__atexit)
>
>    You see I have almost complete the task. I am missing mainly hypot 
> and write symbols, where can I find those? Any feedback on the linker 
> command is welcome.
>
> In fact I would like to build STLport like libstdc++ is built, is there 
> a way to see how this lib is built ? I would also appreciate any doc on 
> the gcc components, what the crt0.o, crtbegin.o ... or all the libs do 
> represent.
>
> Thank you in advance.
>
> Bests
>
> François
>
>
> -------------------------------------------------------------------------
> Check out the new SourceForge.net Marketplace.
> It's the best place to buy or sell services for
> just about anything Open Source.
> http://sourceforge.net/services/buy/index.php
> _______________________________________________
> MinGW-users mailing list
> MinGW-users@xxxxxxxxxxxxxxxxxxxxx
>
> You may change your MinGW Account Options or unsubscribe at:
> https://lists.sourceforge.net/lists/listinfo/mingw-users
>
>
>   

-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
MinGW-users mailing list
MinGW-users@xxxxxxxxxxxxxxxxxxxxx

You may change your MinGW Account Options or unsubscribe at:
https://lists.sourceforge.net/lists/listinfo/mingw-users