我是在win7
上装的ubuntu
,node
源码放在~/nodejs
下的,~/nodejs/include/node
文件夹里有很多头文件比如v8.h, node.h
等,然后我在~/hello
里写了binding.gyp
和hello.cc
,hello.cc
就是官网上那个addon的例子,node-gyp configure
的时候没有问题,但是node-gyp build
的时候说node.h
找不到。我在binding.gyp
添加了libraries
指向~/nodejs/include/node
的,但还是不行,只有我把所有的头文件直接copy到~/hello
文件夹下才可以。请问有什么配置能让我不copy这些头文件到当前的项目里去么?能够直接指向nodejs
的include/node
目录吗?
编译安装node的时候会把相关源码移动到你的系统目录,include的规则是在找不到相关头文件的时候去系统目录查找的
@showen 我下载了node的tar.gz包,解压了,然后就没做什么动作了,是这里还缺少什么吗?我刚接触linux
@hwoarangzk
#include <xxx>
直接到系统指定目录去查找头文件
#include "xxx"
会先到当前目录查找头文件 如果没找到则到系统指定目录查找。
你的node.h
不在系统指定的目录 你可以把你的node
源码路径加到系统环境变量PATH
里 或者把node
源码放到/usr/src
里面 另外不了解libraries
设置的具体用处 你用相对路径设置一下libraries
试试
多谢!