Tôi không biết tại sao boost::filesystem::copy_file
đang gây rắc rối cho tôi.C++ BOOST undefined tham chiếu đến `boost :: filesystem :: detail :: copy_file
tài liệu tham khảo không xác định cho `boost :: hệ thống tập tin :: chi tiết :: copy_file
// g++ -std=c++11 test.cpp -lboost_filesystem -lboost_system -lrt -lboost_wave
#include <boost/filesystem.hpp>
int main()
{
boost::filesystem::create_directory("aaa");
// ok
boost::filesystem::copy_file("f1","f2");
// /tmp/ccNWZltB.o: In function `boost::filesystem::copy_file(boost::filesystem::path const&, boost::filesystem::path const&)':
// test.cpp:(.text._ZN5boost10filesystem9copy_fileERKNS0_4pathES3_[_ZN5boost10filesystem9copy_fileERKNS0_4pathES3_]+0x26): undefined reference to `boost::filesystem::detail::copy_file(boost::filesystem::path const&, boost::filesystem::path const&, boost::filesystem::copy_option, boost::system::error_code*)'
// collect2: error: ld returned 1 exit status
return 0;
}
tôi đã không có cảm hứng từ mã nguồn của tăng hoặc help của nó:
inline
void copy_file(const path& from, const path& to, // See ticket #2925
BOOST_SCOPED_ENUM(copy_option) option, system::error_code& ec)
{detail::copy_file(from, to, option, &ec);}
Ngay cả như vậy simple example không hoạt động cho tôi.
Hệ điều hành: Linux Ubuntu 64
Không có '-std = C++ 11' nó biên dịch? –
yest it. Tôi chỉ tìm thấy [lỗi này] (https://svn.boost.org/trac/boost/ticket/10038) – ar2015
Tôi sẽ tải xuống và kiểm tra phiên bản mới. – ar2015