GCC 3.xx does not support wide character, but GCC 4.xx was supported. Compiler will report boost::filesystem::wpath is not a symblo if compile by GCC 3.xx, I think It isn't a compiler problem.

Thank for reply!



2008/12/4 <frederic.bron@alcan.com>


I think wide char support is not available with mingw.

F. Bron

boost-users-bounces@lists.boost.org a écrit sur 03/12/2008 17:45:54 :

> Hi Dear all
>
>     I can't link my program with boost::filesystem, the compiler
> report error below:
>
> ..\binaries\lib\libresourcemanager_d.a(resimg.o):resimg.cpp:(.
> text$_ZN5boost10filesystem6existsINS0_10basic_pathISbIwSt11char_traitsIwESaIwEENS0_12wpath_traitsEEEEENS_9enable_ifINS0_13is_basic_pathIT_EEbE4typeERKSB_[boost::
> enable_if<boost::filesystem::is_basic_path<boost::filesystem::
> basic_path<std::basic_string<wchar_t, std::char_traits<wchar_t>,
> std::allocator<wchar_t> >, boost::filesystem::wpath_traits> >,
> bool>::type boost::filesystem::exists<boost::filesystem::
> basic_path<std::basic_string<wchar_t, std::char_traits<wchar_t>,
> std::allocator<wchar_t> >, boost::filesystem::wpath_traits>
> >(boost::filesystem::basic_path<std::basic_string<wchar_t, std::
> char_traits<wchar_t>, std::allocator<wchar_t> >, boost::filesystem::
> wpath_traits> const&)]+0x77): undefined reference to `boost::
> filesystem::detail::status_api(std::basic_string<wchar_t, std::
> char_traits<wchar_t>, std::allocator<wchar_t> > const&, boost::
> system::error_code&)'
> ..\binaries\lib\libresourcemanager_d.a(resimg.o):resimg.cpp:(.
> text$_ZN5boost10filesystem6detail10path_proxyERKSbIwSt11char_traitsIwESaIwEESt13_Ios_Openmode[boost::
> filesystem::detail::path_proxy(std::basic_string<wchar_t, std::
> char_traits<wchar_t>, std::allocator<wchar_t> > const&, std::
> _Ios_Openmode)]+0xa8): undefined reference to `boost::filesystem::
> detail::create_file_api(std::basic_string<wchar_t, std::
> char_traits<wchar_t>, std::allocator<wchar_t> > const&, std::_Ios_Openmode)'
> ..\binaries\lib\libresourcemanager_d.a(resimg.o):resimg.cpp:(.
> text$_ZN5boost10filesystem6detail10path_proxyERKSbIwSt11char_traitsIwESaIwEESt13_Ios_Openmode[boost::
> filesystem::detail::path_proxy(std::basic_string<wchar_t, std::
> char_traits<wchar_t>, std::allocator<wchar_t> > const&, std::
> _Ios_Openmode)]+0x143): undefined reference to `boost::filesystem::
> detail::narrow_path_api(std::basic_string<wchar_t, std::
> char_traits<wchar_t>, std::allocator<wchar_t> > const&)'
> ..\binaries\lib\libresourcemanager_d.a(resimg.o):resimg.cpp:(.
> text$_ZN5boost10filesystem6detail10path_proxyERKSbIwSt11char_traitsIwESaIwEESt13_Ios_Openmode[boost::
> filesystem::detail::path_proxy(std::basic_string<wchar_t, std::
> char_traits<wchar_t>, std::allocator<wchar_t> > const&, std::
> _Ios_Openmode)]+0x1f8): undefined reference to `boost::filesystem::
> detail::remove_api(std::basic_string<wchar_t, std::
> char_traits<wchar_t>, std::allocator<wchar_t> > const&)'
> ..\binaries\lib\libresourcemanager_d.a(resimg.o):resimg.cpp:(.
> text$_ZN5boost10filesystem9file_sizeINS0_10basic_pathISbIwSt11char_traitsIwESaIwEENS0_12wpath_traitsEEEEENS_9enable_ifINS0_13is_basic_pathIT_EEyE4typeERKSB_[boost::
> enable_if<boost::filesystem::is_basic_path<boost::filesystem::
> basic_path<std::basic_string<wchar_t, std::char_traits<wchar_t>,
> std::allocator<wchar_t> >, boost::filesystem::wpath_traits> >,
> unsigned long long>::type boost::filesystem::file_size<boost::
> filesystem::basic_path<std::basic_string<wchar_t, std::
> char_traits<wchar_t>, std::allocator<wchar_t> >, boost::filesystem::
> wpath_traits> >(boost::filesystem::basic_path<std::
> basic_string<wchar_t, std::char_traits<wchar_t>, std::
> allocator<wchar_t> >, boost::filesystem::wpath_traits> const&)]
> +0x6b): undefined reference to `boost::filesystem::detail::
> file_size_api(std::basic_string<wchar_t, std::char_traits<wchar_t>,
> std::allocator<wchar_t> > const&)'
>
>
> My boost version: 1.37
> build script:   bjam toolset=gcc --build-type=minimal link=shared stage
> Mingw32:tdm-mingw-1.808.3-f2
> GCC:gcc version 4.3.2 (4.3.2-tdm-1 for MinGW)
>
> boost_system-mgw43-mt-1_37.lib
> boost_iostreams-mgw43-mt-1_37.lib
> boost_filesystem-mgw43-mt-1_37.lib
>
>
> The same code worked fine on VC2008.
>
>
>
> Best regards
> Ken_______________________________________________
> Boost-users mailing list
> Boost-users@lists.boost.org
> http://lists.boost.org/mailman/listinfo.cgi/boost-users

Avis :
Ce message et toute pièce jointe sont la propriété d'Alcan et sont destinés seulement aux personnes ou à l'entité à qui le message est adressé. Si vous avez reçu ce message par erreur, veuillez le
détruire et en aviser l'expéditeur par courriel. Si vous n'êtes pas le destinataire du message, vous n'êtes pas autorisé à utiliser, à copier ou à divulguer le contenu du message ou ses pièces jointes
en tout ou en partie.

Notice:
This message and any attachments are the property of Alcan and are intended solely for the named recipients or entity to whom this message is addressed. If you have received this message in error
please inform the sender via e-mail and destroy the message. If you are not the intended recipient you are not allowed to use, copy or disclose the contents or attachments in whole or in part.

_______________________________________________
Boost-users mailing list
Boost-users@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/boost-users



--
Best Regards,

Ken Zhang
Greatelsoft Co., Ltd.
mailto:ken@greatelsoft.com
http://www.greatelsoft.com
M/P:0086-1350-191-6596