# how to include .node extentions in cmake

**URL:** https://discourse.cmake.org/t/how-to-include-node-extentions-in-cmake/8751
**Category:** Usage
**Created:** [August 16, 2023, 3:25pm UTC](https://discourse.cmake.org/t/how-to-include-node-extentions-in-cmake/8751 "2023-08-16T15:25:05Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![shokarta](https://discourse.cmake.org/letter_avatar_proxy/v4/letter/s/e36b37/32.png) [@shokarta](https://discourse.cmake.org/u/shokarta)
#### Post date: [August 16, 2023, 3:25pm UTC](https://discourse.cmake.org/t/how-to-include-node-extentions-in-cmake/8751/1 "2023-08-16T15:25:05Z")

</div>

Hello gurus,

can I kindly ask you what all do i need to put into cmakelists.txt if i have fresh project?

I have compiled [node-rfc](https://github.com/SAP/node-rfc#download-and-installation) extention of node.js so now i have the build folder (c:\Qt\nodejs\node\_modules\npm\node\_modules\node-rfc\build\Release) with files (\*.exp, \*.iobj, \*.ipdb, \*.lib, \*.node, \*.pdb)

So now i need to include the \*.node and \*.lib in my cmakelists.txt in order to run my first javascript code from QT creator.

Can I kindly ask for a little example? honestly I do not understand what all needs to be done (include\_directories(), link\_directories(), find\_package(), target\_link\_libraries(), and perhaps anything else, or only some of it?)

Thank you!

---

<div class="post-metadata">

### Author: ![ben.boeckel](https://discourse.cmake.org/letter_avatar_proxy/v4/letter/b/ea5d25/32.png) [@ben.boeckel](https://discourse.cmake.org/u/ben.boeckel)
#### Post date: [August 17, 2023, 2:02pm UTC](https://discourse.cmake.org/t/how-to-include-node-extentions-in-cmake/8751/2 "2023-08-17T14:02:32Z")

</div>

I don’t know how to include `.node` files, but `.lib` files are linkable. You can set up an `IMPORTED` target to represent this library:

This is a fairly simple example: [https://gitlab.kitware.com/vtk/vtk/-/blob/master/CMake/FindEXPAT.cmake](https://gitlab.kitware.com/vtk/vtk/-/blob/master/CMake/FindEXPAT.cmake)

Once you have a `Find` module for `node-rfc`, you can then consume it via `target_link_libraries(YourTarget PRIVATE NodeRfc::NodeRfc)` (depending on what you name the imported target).
