Есть проект под arm который компилируется и собирается на х86ой машине (кросскомпиляция). Есть версия библиотеки boost собранная под arm. С boost мне нужен asio. Я использую CMake но команда find_package мне не подходит т. к. она подцепит вариант который на машине. Я пытаюсь подключить библиотеку прописав пути напрямую но получаю ошибку:
error: undefined reference to `boost::system::generic_category()'
Cmake скрипт:
cmake_minimum_required(VERSION 3.1)
project(AAA)
add_executable(
${PROJECT_NAME} ${SRC_LIST}
"main.cpp"
)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17 -Wall -pthread ") #-lboost_system
# Подключение Boost
#set(Boost_USE_STATIC_LIBS OFF) # Использует статический вариант библиотеки ()
#set(Boost_USE_MULTITHREADED OFF) # Используем только один поток(нам нужно что бы весь asio крутился на одном ядре).
include_directories("/home/mrfieldy/linaro_work/target_lib/boost_1_67_0/")
link_directories("/home/mrfieldy/linaro_work/target_lib/boost_1_67_0/libs/")
target_link_libraries(AAA "/home/mrfieldy/linaro_work/target_lib/boost_1_67_0/libs/")
Cmake 3.1; GСС 7.2; boost 1.67; Kubuntu 18.04; IDE Qt Creator 4.6.2.
target_link_libraries
принимает библиотеки (файлы) в качестве аргументов, а не директории. Поэтому передавайте в неё правильные файлы библиотек.
Ну а если делать по уму, то нужно использовать find_package
, предварительно выставив BOOST_ROOT
в тот путь, где требуемый boost находится.
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
Пишу метод упрощающий чтение кода и никак не могу сделать его так, что бы он был универсальный
Пробую сделать бота на java для торгового терминала quikДля того чтобы передавать информацию из квика в java сделал сокет клиент на lua, вот его код: