您的位置:首页 > Web前端 > Node.js

cmake编译node插件

2020-04-14 08:40 911 查看

cmake编译node插件

如需转载请标明出处:http://blog.csdn.net/itas109
QQ技术交流群:129518033

文章目录

  • cmake编译node插件
  • 1.下载node模块
  • 2.编写CMakeLists.txt
  • 3.编译

环境:
系统:centos 7
node: v12.13.0
cmake: v2.8.12


1.下载node模块

这里以odbc模块为例,下载地址:https://www.npmjs.com/package/odbc

npm i odbc

2.编写CMakeLists.txt

参考binding.gyp

project(libodbc)

cmake_minimum_required(VERSION 2.8)

MESSAGE(STATUS "operation system is ${CMAKE_SYSTEM}")

IF (CMAKE_SYSTEM_NAME MATCHES "Linux")
add_definitions(-std=gnu++11)

add_definitions(-DNAPI_EXPERIMENTAL)

add_compile_options(-Wall)
add_compile_options(-Wextra)
add_compile_options(-Wno-unused-parameter)
add_compile_options(-DNAPI_DISABLE_CPP_EXCEPTIONS)
#add_compile_options(-g)

include_directories(~/.cache/node-gyp/12.13.0/include/node)
include_directories(~/odbcTest/odbc/node_modules/node-addon-api)
include_directories(./src)

file(GLOB_RECURSE SOURCE_CPP ./src odbc.cpp odbc_connection.cpp odbc_statement.cpp dynodbc.cpp)

add_library( odbc SHARED ${SOURCE_CPP})

target_link_libraries( odbc -lodbc)

ELSE()
MESSAGE(FATAL_ERROR "not support platform: ${CMAKE_SYSTEM_NAME}")
ENDIF()

3.编译

mkdir bin
cmake ..
make
mv libodbc.so odbc.node

License

License under CC BY-NC-ND 4.0: 署名-非商业使用-禁止演绎

Reference:
NULL

  • 点赞
  • 收藏
  • 分享
  • 文章举报
itas109 博客专家 发布了234 篇原创文章 · 获赞 229 · 访问量 89万+ 他的留言板 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c++ cmake gyp