如何使用 C++ 和 Matlab Engine under Kdevelopwith CMakeList.

How to use C++ and Matlab Engine under Kdevelop with CMakeList

本文关键字:under Kdevelopwith CMakeList Engine Matlab 何使用 C++      更新时间:2023-10-16

我正在尝试将Matlab引擎与C++一起使用,但是我遇到了一些问题。这是我的CMakeList.txt

cmake_minimum_required(VERSION 2.8)
project(test)
SET(PROJECT_PATH "/home/bruno/projects/Test")
SET(CMAKE_CXX_FLAGS "-std=c++0x")
SET(CMAKE_BUILD_TYPE "Debug")
SET(CMAKE_VERBOSE_MAKEFILE ON)
SET(CMAKE_USE_RELATIVE_PATHS ON)
find_package(Eigen3 REQUIRED)
include_directories(
    ${CMAKE_SOURCE_DIR}
)
include_directories (/home/bruno/MATLAB/R2017a/extern/include/)
link_directories(/home/bruno/MATLAB/R2017a/bin/glnxa64/)
include_directories(${EIGEN3_INCLUDE_DIR})
add_executable(${CMAKE_PROJECT_NAME}  test.cpp)
target_link_libraries(${CMAKE_PROJECT_NAME} -pthread )
target_link_libraries( ${CMAKE_PROJECT_NAME} libeng.so )
target_link_libraries( ${CMAKE_PROJECT_NAME} libmx.so )

当我尝试执行测试.cpp时,我得到

/home/bruno/projects/test/test.cpp:44: undefined reference to `matOpen'

和其他未定义的引用。怎么了?

您没有链接到libmat.so

target_link_libraries( ${CMAKE_PROJECT_NAME} libmx libeng libmat )