StanfordSNR / puffer

Puffer is a free live TV streaming website and a research study at Stanford using machine learning to improve video streaming
https://puffer.stanford.edu
835 stars 131 forks source link

make -j CXXFLAGS='-DNONSECURE' does not work #25

Closed ofirbarak closed 3 years ago

ofirbarak commented 3 years ago

Following the wiki https://github.com/StanfordSNR/puffer/wiki/Documentation#prerequisite-compilation at stage 3 - when running make -j CXXFLAGS='-DNONSECURE' it fails:

opus-encoder.cc: In constructor ‘AVFormatWrapper::AVFormatWrapper(const string&, int)’:
opus-encoder.cc:265:21: error: ‘void av_register_all()’ is deprecated [-Werror=deprecated-declarations]
     av_register_all();
                     ^
In file included from opus-encoder.cc:12:0:
/usr/include/x86_64-linux-gnu/libavformat/avformat.h:2050:6: note: declared here
 void av_register_all(void);
      ^~~~~~~~~~~~~~~
cc1plus: all warnings being treated as errors
make[1]: *** [Makefile:386: opus-encoder.o] Error 1

I found putting that line in comment helps.

francisyyan commented 3 years ago

Thanks for opening the issue! We are aware of it, and it was not actually an issue back when we wrote and tested the documentation on Ubuntu 18.04. FFmpeg later deprecated this API, e.g., if you are building Puffer on Ubuntu 20.04.

You are right that all you need to do is to comment out this line, or remove the -Werror flag in configure.ac to allow warnings in builds. I will remove this line of code when we consider Ubuntu 20.04 as the default build environment.

ofirbarak commented 3 years ago

Cool, Thanks.

cbothra123 commented 3 years ago

Hello, I was trying to run the set up and was stuck in the same step. I got these three errors:

  1. socket.cc: In member function ‘TCPInfo TCPSocket::get_tcp_info() const’: socket.cc:245:19: error: ‘struct tcp_info’ has no member named ‘tcpi_min_rtt’; did you mean ‘tcpi_rcv_rtt’? ret.min_rtt = x.tcpi_min_rtt; ^~~~ tcpi_rcv_rtt socket.cc:247:25: error: ‘struct tcp_info’ has no member named ‘tcpi_delivery_rate’; did you mean ‘tcpi_pacing_rate’? ret.delivery_rate = x.tcpi_delivery_rate;
  2. opus-encoder.cc:315:20: error: ‘AVStream {aka struct AVStream}’ has no member named ‘codecpar’; did you mean ‘codec’? audiostream->codecpar->extradata_size = 19;
  3. /usr/bin/ld: warning: libmklml_intel.so, needed by ../../third_party/libtorch/lib/libcaffe2.so, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libiomp5.so, needed by ../../third_party/libtorch/lib/libcaffe2.so, not found (try using -rpath or -rpath-link)

Any help would be appreciated!

francisyyan commented 3 years ago

Hello -- Could you post your questions in our group: https://groups.google.com/g/puffer-stanford? It would help the other Puffer users search our replies in a single place. Thank you!

cbothra123 commented 3 years ago

Thanks for the reply! The issues seemed to be specific to Ubuntu 16.04. Following the steps for Ubuntu 18.04 worked like a charm.

francisyyan commented 3 years ago

Great to hear that! We only tested Puffer on Ubuntu 18.04, and based on the feedback we received, Puffer doesn't compile on Ubuntu 16.04 or 20.04 without making some code changes (unfortunately).

Best, Francis

On Mon, Jan 18, 2021 at 12:57 PM cbothra123 notifications@github.com wrote:

Thanks for the reply! The issues seemed to be specific to Ubuntu 16.04. Following the steps for Ubuntu 18.04 worked like a charm.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/StanfordSNR/puffer/issues/25#issuecomment-762467474, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABK777FJGSSP2HAJGONDESLS2SOEZANCNFSM4UPMKZ3A .

=== Original Questions ===

Hello, I was trying to run the set up and was stuck in the same step. I got these three errors:

  1. socket.cc: In member function ‘TCPInfo TCPSocket::get_tcp_info() const’: socket.cc:245:19: error: ‘struct tcp_info’ has no member named ‘tcpi_min_rtt’; did you mean ‘tcpi_rcv_rtt’? ret.min_rtt = x.tcpi_min_rtt; ^~~~ tcpi_rcv_rtt socket.cc:247:25: error: ‘struct tcp_info’ has no member named ‘tcpi_delivery_rate’; did you mean ‘tcpi_pacing_rate’? ret.delivery_rate = x.tcpi_delivery_rate;

  1. opus-encoder.cc:315:20: error: ‘AVStream {aka struct AVStream}’ has no member named ‘codecpar’; did you mean ‘codec’? audiostream->codecpar->extradata_size = 19;

  1. /usr/bin/ld: warning: libmklml_intel.so, needed by ../../third_party/libtorch/lib/libcaffe2.so, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libiomp5.so, needed by ../../third_party/libtorch/lib/libcaffe2.so, not found (try using -rpath or -rpath-link)

Any help would be appreciated!