From 669eae8e092e63356e04c202a46f9089d40404f4 Mon Sep 17 00:00:00 2001 From: osborn28 Date: Tue, 7 May 2019 16:00:09 +0800 Subject: [PATCH] fix build error and add a test --- contrib/CMakeLists.txt | 32 +++++++++++++++++++++++++++++++- test/CMakeLists.txt | 18 ++++++++++++++++++ test/test.cpp | 32 ++++++++++++++++++++++++++++++++ 3 files changed, 81 insertions(+), 1 deletion(-) create mode 100644 test/CMakeLists.txt create mode 100644 test/test.cpp diff --git a/contrib/CMakeLists.txt b/contrib/CMakeLists.txt index edb40b11..872d24df 100644 --- a/contrib/CMakeLists.txt +++ b/contrib/CMakeLists.txt @@ -1,9 +1,11 @@ -cmake_minimum_required(VERSION 3.7) +cmake_minimum_required(VERSION 3.5) project (MatplotlibCPP_Test) set(CMAKE_CXX_STANDARD 11) set(CMAKE_CXX_STANDARD_REQUIRED ON) +find_package(PythonLibs 2.7) + include_directories(${PYTHONHOME}/include) include_directories(${PYTHONHOME}/Lib/site-packages/numpy/core/include) link_directories(${PYTHONHOME}/libs) @@ -18,9 +20,37 @@ add_definitions(-DMATPLOTLIBCPP_PYTHON_HEADER=Python.h) # message(STATUS "*** dump end ***") add_executable(minimal ${CMAKE_CURRENT_SOURCE_DIR}/../examples/minimal.cpp) +target_include_directories(minimal PRIVATE ${PYTHON_INCLUDE_DIRS}) +target_link_libraries(minimal ${PYTHON_LIBRARIES}) + add_executable(basic ${CMAKE_CURRENT_SOURCE_DIR}/../examples/basic.cpp) +target_include_directories(basic PRIVATE ${PYTHON_INCLUDE_DIRS}) +target_link_libraries(basic ${PYTHON_LIBRARIES}) + add_executable(modern ${CMAKE_CURRENT_SOURCE_DIR}/../examples/modern.cpp) +target_include_directories(modern PRIVATE ${PYTHON_INCLUDE_DIRS}) +target_link_libraries(modern ${PYTHON_LIBRARIES}) + add_executable(animation ${CMAKE_CURRENT_SOURCE_DIR}/../examples/animation.cpp) +target_include_directories(animation PRIVATE ${PYTHON_INCLUDE_DIRS}) +target_link_libraries(animation ${PYTHON_LIBRARIES}) + add_executable(nonblock ${CMAKE_CURRENT_SOURCE_DIR}/../examples/nonblock.cpp) +target_include_directories(nonblock PRIVATE ${PYTHON_INCLUDE_DIRS}) +target_link_libraries(nonblock ${PYTHON_LIBRARIES}) + add_executable(xkcd ${CMAKE_CURRENT_SOURCE_DIR}/../examples/xkcd.cpp) +target_include_directories(xkcd PRIVATE ${PYTHON_INCLUDE_DIRS}) +target_link_libraries(xkcd ${PYTHON_LIBRARIES}) + add_executable(bar ${CMAKE_CURRENT_SOURCE_DIR}/../examples/bar.cpp) +target_include_directories(bar PRIVATE ${PYTHON_INCLUDE_DIRS}) +target_link_libraries(bar ${PYTHON_LIBRARIES}) + +add_executable(surface ${CMAKE_CURRENT_SOURCE_DIR}/../examples/surface.cpp) +target_include_directories(surface PRIVATE ${PYTHON_INCLUDE_DIRS}) +target_link_libraries(surface ${PYTHON_LIBRARIES}) + +add_executable(update ${CMAKE_CURRENT_SOURCE_DIR}/../examples/update.cpp) +target_include_directories(update PRIVATE ${PYTHON_INCLUDE_DIRS}) +target_link_libraries(update ${PYTHON_LIBRARIES}) diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt new file mode 100644 index 00000000..bb8e9446 --- /dev/null +++ b/test/CMakeLists.txt @@ -0,0 +1,18 @@ +cmake_minimum_required(VERSION 3.5) +project (myproject) + +set(CMAKE_CXX_STANDARD 14) +set(CMAKE_CXX_STANDARD_REQUIRED ON) + +find_package(PythonLibs 2.7) + +include_directories(${PYTHONHOME}/include) +include_directories(${PYTHONHOME}/Lib/site-packages/numpy/core/include) +link_directories(${PYTHONHOME}/libs) + +add_definitions(-DMATPLOTLIBCPP_PYTHON_HEADER=Python.h) + +add_executable(mytest test.cpp) +target_include_directories(mytest PRIVATE ${PYTHON_INCLUDE_DIRS}) +target_link_libraries(mytest ${PYTHON_LIBRARIES}) + diff --git a/test/test.cpp b/test/test.cpp new file mode 100644 index 00000000..7f8763d2 --- /dev/null +++ b/test/test.cpp @@ -0,0 +1,32 @@ +#define _USE_MATH_DEFINES +#include +#include "matplotlibcpp.h" + +using namespace std; +namespace plt = matplotlibcpp; + +int main() +{ + // Prepare data + int n = 500; + std::vector x(n), y(n), z(n), w(n,2); + for(int i=0; i