open-webrtc-toolkit / owt-server

General server (streaming/conference/transcoding/anayltics) for OWT. (A.k.a. MediaServer)
https://01.org/open-webrtc-toolkit
Apache License 2.0
1.14k stars 375 forks source link

scripts/build.js -t all --check Error #555

Open Phillipip opened 4 years ago

Phillipip commented 4 years ago

Hi,

I'm hoping someone can help me. I've been trying to get this great project up and running for almost 24 hours now. Sadly, to no avail. I always get this error:

Building addon - webrtc make: Entering directory '/root/owt-server/source/agent/webrtc/webrtcLib/build' CXX(target) Release/obj.target/webrtc/VideoFrameConstructorWrapper.o CXX(target) Release/obj.target/webrtc/VideoFramePacketizerWrapper.o CXX(target) Release/obj.target/webrtc/WebRtcConnection.o CXX(target) Release/obj.target/webrtc/MediaStream.o CXX(target) Release/obj.target/webrtc/erizo/src/erizo/MediaStream.o CXX(target) Release/obj.target/webrtc/erizo/src/erizo/lib/LibNiceInterfaceImpl.o CXX(target) Release/obj.target/webrtc/erizo/src/erizo/thread/IOThreadPool.o CXX(target) Release/obj.target/webrtc/erizo/src/erizo/thread/IOWorker.o CXX(target) Release/obj.target/webrtc/erizo/src/erizo/thread/Scheduler.o CXX(target) Release/obj.target/webrtc/erizo/src/erizo/thread/ThreadPool.o CXX(target) Release/obj.target/webrtc/erizo/src/erizo/thread/Worker.o CXX(target) Release/obj.target/webrtc/erizo/src/erizo/rtp/PacketBufferService.o CXX(target) Release/obj.target/webrtc/erizo/src/erizo/rtp/RtcpForwarder.o CXX(target) Release/obj.target/webrtc/erizo/src/erizo/rtp/RtcpProcessorHandler.o CXX(target) Release/obj.target/webrtc/erizo/src/erizo/rtp/RtpUtils.o CXX(target) Release/obj.target/webrtc/erizo/src/erizo/rtp/QualityManager.o CXX(target) Release/obj.target/webrtc/erizo/src/erizo/rtp/RtpExtensionProcessor.o CXX(target) Release/obj.target/webrtc/erizo/src/erizo/rtp/BandwidthEstimationHandler.o CXX(target) Release/obj.target/webrtc/erizo/src/erizo/dtls/DtlsClient.o CXX(target) Release/obj.target/webrtc/erizo/src/erizo/dtls/DtlsSocket.o CC(target) Release/obj.target/webrtc/erizo/src/erizo/dtls/bf_dwrap.o CXX(target) Release/obj.target/webrtc/erizo/src/erizo/pipeline/Pipeline.o CXX(target) Release/obj.target/webrtc/erizo/src/erizo/stats/StatNode.o CXX(target) Release/obj.target/webrtc/../../addons/common/NodeEventRegistry.o g++: internal compiler error: Killed (program cc1plus) Please submit a full bug report, with preprocessed source if appropriate. See <file:///usr/share/doc/gcc-7/README.Bugs> for instructions. webrtc.target.mk:207: recipe for target 'Release/obj.target/webrtc/VideoFramePacketizerWrapper.o' failed make: *** [Release/obj.target/webrtc/VideoFramePacketizerWrapper.o] Error 4 make: *** Waiting for unfinished jobs.... ../MediaStream.cc: In member function ‘virtual void StatCallWorker::HandleOKCallback()’: ../MediaStream.cc:72:25: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations] callback->Call(1, argv); ^ In file included from ../MediaStream.h:32:0, from ../MediaStream.cc:33: ../../../../../node_modules/nan/nan.h:1655:3: note: declared here Call(int argc, v8::Local<v8::Value> argv[]) const { ^~~~ ../VideoFrameConstructorWrapper.cc: In static member function ‘static void VideoFrameConstructor::Callback(uv_async_t*)’: ../VideoFrameConstructorWrapper.cc:152:97: warning: ‘v8::Local<v8::Value> Nan::MakeCallback(v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*)’ is deprecated [-Wdeprecated-declarations] Nan::MakeCallback(Nan::GetCurrentContext()->Global(), obj->Callback_->GetFunction(), 1, args); ^ In file included from ../MediaDefinitions.h:4:0, from ../VideoFrameConstructorWrapper.h:8, from ../VideoFrameConstructorWrapper.cc:9: ../../../../../node_modules/nan/nan.h:958:46: note: declared here NAN_DEPRECATED inline v8::Local<v8::Value> MakeCallback( ^~~~~~~~~~~~ ../MediaStream.cc: In static member function ‘static void MediaStream::statsCallback(uv_async_t*)’: ../MediaStream.cc:470:105: warning: ‘v8::Local<v8::Value> Nan::MakeCallback(v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*)’ is deprecated [-Wdeprecated-declarations] Nan::MakeCallback(Nan::GetCurrentContext()->Global(), obj->stats_callback_->GetFunction(), 1, args); ^ In file included from ../MediaStream.h:32:0, from ../MediaStream.cc:33: ../../../../../node_modules/nan/nan.h:958:46: note: declared here NAN_DEPRECATED inline v8::Local<v8::Value> MakeCallback( ^~~~~~~~~~~~ ../MediaStream.cc: In static member function ‘static void MediaStream::eventCallback(uv_async_t*)’: ../MediaStream.cc:488:109: warning: ‘v8::Local<v8::Value> Nan::MakeCallback(v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*)’ is deprecated [-Wdeprecated-declarations] Nan::MakeCallback(Nan::GetCurrentContext()->Global(), obj->event_callback_->GetFunction(), 2, args); ^ In file included from ../MediaStream.h:32:0, from ../MediaStream.cc:33: ../../../../../node_modules/nan/nan.h:958:46: note: declared here NAN_DEPRECATED inline v8::Local<v8::Value> MakeCallback( ^~~~~~~~~~~~ ../WebRtcConnection.cc: In static member function ‘static void WebRtcConnection::eventsCallback(uv_async_t*)’: ../WebRtcConnection.cc:473:102: warning: ‘v8::Local<v8::Value> Nan::MakeCallback(v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*)’ is deprecated [-Wdeprecated-declarations] Nan::MakeCallback(Nan::GetCurrentContext()->Global(), obj->eventCallback_->GetFunction(), 3, args); ^ In file included from ../WebRtcConnection.h:32:0, from ../WebRtcConnection.cc:33: ../../../../../node_modules/nan/nan.h:958:46: note: declared here NAN_DEPRECATED inline v8::Local<v8::Value> MakeCallback( ^~~~~~~~~~~~ g++: internal compiler error: Killed (program cc1plus) Please submit a full bug report, with preprocessed source if appropriate. See <file:///usr/share/doc/gcc-7/README.Bugs> for instructions. webrtc.target.mk:207: recipe for target 'Release/obj.target/webrtc/WebRtcConnection.o' failed make: *** [Release/obj.target/webrtc/WebRtcConnection.o] Error 4 make: Leaving directory '/root/owt-server/source/agent/webrtc/webrtcLib/build' gyp ERR! build error gyp ERR! stack Error:make` failed with exit code: 2 gyp ERR! stack at ChildProcess.onExit (/usr/share/node-gyp/lib/build.js:258:23) gyp ERR! stack at emitTwo (events.js:126:13) gyp ERR! stack at ChildProcess.emit (events.js:214:7) gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12) gyp ERR! System Linux 5.4.34-1-pve gyp ERR! command "/usr/bin/node" "/usr/bin/node-gyp" "build" "-j" "16" "--loglevel=error" gyp ERR! cwd /root/owt-server/source/agent/webrtc/webrtcLib gyp ERR! node -v v8.10.0 gyp ERR! node-gyp -v v3.6.2 gyp ERR! not ok child_process.js:644 throw err; ^

Error: Command failed: node-gyp build -j 16 --loglevel=error at checkExecSyncError (child_process.js:601:13) at execSync (child_process.js:641:13) at buildTarget (/root/owt-server/scripts/build.js:132:5) at buildList.map (/root/owt-server/scripts/build.js:160:10) at Array.map () at Object. (/root/owt-server/scripts/build.js:155:23) at Module._compile (module.js:652:30) at Object.Module._extensions..js (module.js:663:10) at Module.load (module.js:565:32) at tryModuleLoad (module.js:505:12)`

Phillipip commented 4 years ago

I tried to install it inside an lxc container. Could this be the problem?

klee1611 commented 4 years ago

I came across this commit (https://github.com/open-webrtc-toolkit/owt-server/commit/41d81034a060fa15ac342fb7468c67957f2dcb21) Maybe it can work with different node-gyp version.

VladimirCores commented 4 years ago

Having the same issue, cloned repo few minutes ago and ran ./scripts/build.js -t all --check

bash-5.0$ ./scripts/build.js -t all --check
/Users/vladimir.minkin/Documents/Projects/Personal/OWT/owt-server/build/libdeps/build/lib/pkgconfig:/Users/vladimir.minkin/Documents/Projects/Personal/OWT/owt-server/build/libdeps/build/lib64/pkgconfig:
Following targets will be built:
 video-mixer-sw 
 video-transcoder-sw 
 video-analyzer-sw 
 internal-io 
 logger 
 media-frame-multicaster 
 audio 
 webrtc-conn 
 webrtc-frame 
 avstream 
 sip 
 video-mixer-msdk 
 video-transcoder-msdk 
Building addon - video-mixer-sw
/bin/sh: node-gyp: command not found
child_process.js:655
    throw err;
    ^

Error: Command failed: node-gyp configure --loglevel=error
    at checkExecSyncError (child_process.js:616:11)
    at execSync (child_process.js:652:15)
    at buildTarget (/Users/vladimir.minkin/Documents/Projects/Personal/OWT/owt-server/scripts/build.js:132:5)
    at /Users/vladimir.minkin/Documents/Projects/Personal/OWT/owt-server/scripts/build.js:161:10
    at Array.map (<anonymous>)
    at Object.<anonymous> (/Users/vladimir.minkin/Documents/Projects/Personal/OWT/owt-server/scripts/build.js:156:23)
    at Module._compile (internal/modules/cjs/loader.js:1201:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1221:10)
    at Module.load (internal/modules/cjs/loader.js:1050:32)
    at Function.Module._load (internal/modules/cjs/loader.js:938:14) {
  status: 127,
  signal: null,
  output: [ null, null, null ],
  pid: 92399,
  stdout: null,
  stderr: null
}
VladimirCores commented 4 years ago

After I install node-gyp and ran the command again now I have:

bash-5.0$ scripts/build.js -t all --check
/Users/vladimir.minkin/Documents/Projects/Personal/OWT/owt-server/build/libdeps/build/lib/pkgconfig:/Users/vladimir.minkin/Documents/Projects/Personal/OWT/owt-server/build/libdeps/build/lib64/pkgconfig:
Following targets will be built:
 video-mixer-sw 
 video-transcoder-sw 
 video-analyzer-sw 
 internal-io 
 logger 
 media-frame-multicaster 
 audio 
 webrtc-conn 
 webrtc-frame 
 avstream 
 sip 
 video-mixer-msdk 
 video-transcoder-msdk 
Building addon - video-mixer-sw
  CXX(target) Release/obj.target/videoMixer-sw/../addon.o
  CXX(target) Release/obj.target/videoMixer-sw/../VideoMixerWrapper.o
  CXX(target) Release/obj.target/videoMixer-sw/../SoftVideoCompositor.o
  CXX(target) Release/obj.target/videoMixer-sw/../VideoMixer.o
  CXX(target) Release/obj.target/videoMixer-sw/../../../../core/owt_base/I420BufferManager.o
  CXX(target) Release/obj.target/videoMixer-sw/../../../../core/owt_base/FrameConverter.o
  CXX(target) Release/obj.target/videoMixer-sw/../../../../core/owt_base/VCMFrameDecoder.o
  CXX(target) Release/obj.target/videoMixer-sw/../../../../core/owt_base/VCMFrameEncoder.o
../../VideoMixer.cpp:5:10: fatal error: 'webrtc/base/logging.h' file not found
#include <webrtc/base/logging.h>
         ^~~~~~~~~~~~~~~~~~~~~~~
In file included from ../../../../../core/owt_base/FrameConverter.cpp:5:
/Users/vladimir.minkin/Documents/Projects/Personal/OWT/owt-server/source/core/owt_base/FrameConverter.h:11:10: fatal error: 
      'webrtc/api/video/i420_buffer.h' file not found
#include <webrtc/api/video/i420_buffer.h>
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../../core/owt_base/VCMFrameEncoder.cpp:7:10: fatal error: 
      'webrtc/system_wrappers/include/cpu_info.h' file not found
#include <webrtc/system_wrappers/include/cpu_info.h>
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
make: *** [Release/obj.target/videoMixer-sw/../../../../core/owt_base/FrameConverter.o] Error 1
make: *** Waiting for unfinished jobs....
In file included from ../../addon.cc:5:
In file included from ../../VideoMixerWrapper.h:9:
In file included from ../../VideoMixer.h:10:
/Users/vladimir.minkin/Documents/Projects/Personal/OWT/owt-server/source/core/common/logger.h:31:10: fatal error: 
      'log4cxx/logger.h' file not found
#include <log4cxx/logger.h>
         ^~~~~~~~~~~~~~~~~~
In file included from ../../../../../core/owt_base/I420BufferManager.cpp:5:
/Users/vladimir.minkin/Documents/Projects/Personal/OWT/owt-server/source/core/owt_base/I420BufferManager.h:14:10: fatal error: 
      'webrtc/common_video/include/i420_buffer_pool.h' file not found
#include <webrtc/common_video/include/i420_buffer_pool.h>
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
make: *** [Release/obj.target/videoMixer-sw/../../../../core/owt_base/I420BufferManager.o] Error 1
1 error generated.
make: *** [Release/obj.target/videoMixer-sw/../addon.o] Error 1
In file included from ../../../../../core/owt_base/VCMFrameDecoder.cpp:5:
In file included from /Users/vladimir.minkin/Documents/Projects/Personal/OWT/owt-server/source/core/owt_base/VCMFrameDecoder.h:11:
/Users/vladimir.minkin/Documents/Projects/Personal/OWT/owt-server/source/core/common/logger.h:31:10: fatal error: 
      'log4cxx/logger.h' file not found
#include <log4cxx/logger.h>
         ^~~~~~~~~~~~~~~~~~
In file included from ../../VideoMixerWrapper.cc:9:
In file included from ../../VideoMixerWrapper.h:9:
In file included from ../../VideoMixer.h:10:
/Users/vladimir.minkin/Documents/Projects/Personal/OWT/owt-server/source/core/common/logger.h:31:10: fatal error: 
      'log4cxx/logger.h' file not found
#include <log4cxx/logger.h>
         ^~~~~~~~~~~~~~~~~~
1 error generated.
make: *** [Release/obj.target/videoMixer-sw/../../../../core/owt_base/VCMFrameDecoder.o] Error 1
1 error generated.
make: *** [Release/obj.target/videoMixer-sw/../VideoMixerWrapper.o] Error 1
1 error generated.
make: *** [Release/obj.target/videoMixer-sw/../VideoMixer.o] Error 1
1 error generated.
make: *** [Release/obj.target/videoMixer-sw/../../../../core/owt_base/VCMFrameEncoder.o] Error 1
In file included from ../../SoftVideoCompositor.cpp:5:
../../SoftVideoCompositor.h:15:10: fatal error: 'webrtc/system_wrappers/include/clock.h' file not
      found
#include <webrtc/system_wrappers/include/clock.h>
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
make: *** [Release/obj.target/videoMixer-sw/../SoftVideoCompositor.o] Error 1
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/Users/vladimir.minkin/.nvm/versions/node/v10.22.0/lib/node_modules/node-gyp/lib/build.js:194:23)
gyp ERR! stack     at ChildProcess.emit (events.js:198:13)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:248:12)
gyp ERR! System Darwin 19.6.0
gyp ERR! command "/Users/vladimir.minkin/.nvm/versions/node/v10.22.0/bin/node" "/Users/vladimir.minkin/.nvm/versions/node/v10.22.0/bin/node-gyp" "build" "-j" "8" "--loglevel=error"
gyp ERR! cwd /Users/vladimir.minkin/Documents/Projects/Personal/OWT/owt-server/source/agent/video/videoMixer/videoMixer_sw
gyp ERR! node -v v10.22.0
gyp ERR! node-gyp -v v7.1.0
gyp ERR! not ok 
child_process.js:669
    throw err;
    ^

Error: Command failed: node-gyp build -j 8 --loglevel=error
    at checkExecSyncError (child_process.js:629:11)
    at execSync (child_process.js:666:13)
    at buildTarget (/Users/vladimir.minkin/Documents/Projects/Personal/OWT/owt-server/scripts/build.js:133:5)
    at buildList.map (/Users/vladimir.minkin/Documents/Projects/Personal/OWT/owt-server/scripts/build.js:161:10)
    at Array.map (<anonymous>)
    at Object.<anonymous> (/Users/vladimir.minkin/Documents/Projects/Personal/OWT/owt-server/scripts/build.js:156:23)
    at Module._compile (internal/modules/cjs/loader.js:778:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
    at Module.load (internal/modules/cjs/loader.js:653:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:593:12)