2015-11-20 2 views
0

По какой-то причине, когда я компилирую с помощью node-gyp в Windows, CFLAGS игнорируются. Может кто-нибудь знает причину? Это мой код:CFLAGS не работает на Windows при компиляции с node-gyp

Binding.gyp

{ 
    "targets": [ 
    { 
     "target_name": "helloWindows", 
     "sources": [ "helloWindows.cpp" ], 
     "cflags": [ "-D_MY_FLAG"], 
    } 
    ] 
} 

helloWindows.cpp

using namespace v8; 

#if defined(_MY_FLAG) 
void SuperFunction(const v8::FunctionCallbackInfo<Value>& args) { 
    Isolate* isolate = Isolate::GetCurrent(); 
    HandleScope scope(isolate); 

    args.GetReturnValue().Set(String::NewFromUtf8(isolate, "Hello Antirreni!")); 

} 

void init(Handle<Object> target) { 
    NODE_SET_METHOD(target, "hello", SuperFunction); 
} 

NODE_MODULE(helloWindows, init); 

#endif 

Заранее спасибо :)

+2

Препроцессор определить для Visual C++ должен быть установлен с '/ D' флаг командной строки. GYP разрешает это в разделе 'определяет', см. Https://gyp.gsrc.io/docs/UserDocumentation.md – pmed

+0

Yay! Оно работает. благодаря – Antirreni91

ответ