Вот команда: < /p>
Код: Выделить всё
g++ czech2017.cpp dist/jsoncpp.cpp dist/sqlite3.o -o czech2017
-LC:\msys64\mingw64\lib -lboost_filesystem -lboost_system
-lboost_locale -lboost_thread
< /code>
Но я получаю следующие ошибки: < /p>
C:\Users\usr\AppData\Local\Temp\ccN0DX4g.o:czech2017.cpp:(.text+0x965): undefined reference to `boost::locale::generator::generator()'
C:\Users\usr\AppData\Local\Temp\ccN0DX4g.o:czech2017.cpp:(.text+0x9b4): undefined reference to `boost::locale::generator::generate(std::__cxx11::basic_string const&) const'
C:\Users\usr\AppData\Local\Temp\ccN0DX4g.o:czech2017.cpp:(.text+0xa15): undefined reference to `boost::locale::generator::~generator()'
C:\Users\usr\AppData\Local\Temp\ccN0DX4g.o:czech2017.cpp:(.text+0xa3a): undefined reference to `boost::filesystem::path::imbue(std::locale const&)'
C:\Users\usr\AppData\Local\Temp\ccN0DX4g.o:czech2017.cpp:(.text+0xb87): undefined reference to `boost::locale::generator::~generator()'
C:\Users\usr\AppData\Local\Temp\ccN0DX4g.o:czech2017.cpp:(.text$_ZN5boost10filesystem11path_traits7convertEPKcS3_RNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEEE[_ZN5boost10filesystem11path_traits7convertEPKcS3_RNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEEE]+0x15): undefined reference to `boost::filesystem::path::codecvt()'
C:\Users\usr\AppData\Local\Temp\ccN0DX4g.o:czech2017.cpp:(.text$_ZN5boost10filesystem11path_traits7convertEPKcS3_RNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEEE[_ZN5boost10filesystem11path_traits7convertEPKcS3_RNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEEE]+0x32): undefined reference to `boost::filesystem::path_traits::convert(char const*, char const*, std::__cxx11::basic_string&, std::codecvt const&)'
C:\Users\usr\AppData\Local\Temp\ccN0DX4g.o:czech2017.cpp:(.text$_ZN5boost10filesystem11path_traits7convertEPKwS3_RNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE[_ZN5boost10filesystem11path_traits7convertEPKwS3_RNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE]+0x15): undefined reference to `boost::filesystem::path::codecvt()'
C:\Users\usr\AppData\Local\Temp\ccN0DX4g.o:czech2017.cpp:(.text$_ZN5boost10filesystem11path_traits7convertEPKwS3_RNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE[_ZN5boost10filesystem11path_traits7convertEPKwS3_RNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE]+0x32): undefined reference to `boost::filesystem::path_traits::convert(wchar_t const*, wchar_t const*, std::__cxx11::basic_string&, std::codecvt const&)'
< /code>
Я знаю, что не связываю что -то правильно. Я предполагаю, что у меня нет библиотек, связанных в правильном порядке, но я не знаю надлежащего порядка. Кто -нибудь может помочь? Я создал следующий Cmake: < /p>
cmake_minimum_required(VERSION 3.13)
project(election_results_calculators)
set(CMAKE_CXX_STANDARD 17)
set(Boost_USE_STATIC_LIBS OFF)
set(Boost_USE_MULTITHREADED ON)
set(Boost_USE_STATIC_RUNTIME OFF)
ADD_DEFINITIONS(-DBOOST_ALL_NO_LIB)
find_package(Boost REQUIRED COMPONENTS filesystem system locale thread)
set (ROOT_DIR ..)
include_directories(${Boost_INCLUDE_DIRS})
add_executable(czech2017 ${ROOT_DIR}/tests/czech2017.cpp ${ROOT_DIR}/tests/dist/sqlite3.o ${ROOT_DIR}/tests/dist/jsoncpp.cpp)
target_link_libraries(czech2017 ${Boost_LIBRARIES})
< /code>
и он компилируется. Я получаю ту же ошибку, что и выше, но теперь с немного разными словами: __IMP__ZN5BOOST6LOCALE9GENTATORC1EV Подробнее здесь: https://stackoverflow.com/questions/668 ... ry-using-g