Avnu / OpenAvnu

OpenAvnu - an Avnu sponsored repository for Time Sensitive Network (TSN and AVB) technology

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Error building OpenAvnu

johandroid opened this issue · comments

I have tried to build in native OS and in a docker container with:

A native system like this:
lex@archduke /t/OpenAvnu (master) [2]> lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 20.04.1 LTS
Release: 20.04
Codename: focal

And an Ubuntu:20.04 docker image

I installed the packages:

apt install libpci-dev libpcap-dev libsndfile-dev libjack-dev bash-completion make gcc cmake g++

I have cloned the repository and in the master branch I loaded the submodules as described in Readme file.
The commit of master is: ff076e8

I have an error building the package:

lex@archduke /t/OpenAvnu (master)> make all
mkdir -p lib/igb_avb/lib && make subdir=lib/igb_avb/lib -C lib/igb_avb/lib
make[1]: Entering directory '/tmp/OpenAvnu/lib/igb_avb/lib'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/tmp/OpenAvnu/lib/igb_avb/lib'
mkdir -p lib/common && make subdir=lib/common -C lib/common
make[1]: Entering directory '/tmp/OpenAvnu/lib/common'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/tmp/OpenAvnu/lib/common'
mkdir -p lib/atl_avb/lib && make subdir=lib/atl_avb/lib -C lib/atl_avb/lib
make[1]: Entering directory '/tmp/OpenAvnu/lib/atl_avb/lib'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/tmp/OpenAvnu/lib/atl_avb/lib'
mkdir -p lib/common && make subdir=lib/common -C lib/common
make[1]: Entering directory '/tmp/OpenAvnu/lib/common'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/tmp/OpenAvnu/lib/common'
mkdir -p daemons/mrpd && make subdir=daemons/mrpd -C daemons/mrpd
make[1]: Entering directory '/tmp/OpenAvnu/daemons/mrpd'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/tmp/OpenAvnu/daemons/mrpd'
mkdir -p daemons/maap/linux/build/ && make subdir=daemons/maap/linux/build/ -C daemons/maap/linux/build/
make[1]: Entering directory '/tmp/OpenAvnu/daemons/maap/linux/build'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/tmp/OpenAvnu/daemons/maap/linux/build'
mkdir -p daemons/shaper && make subdir=daemons/shaper -C daemons/shaper
make[1]: Entering directory '/tmp/OpenAvnu/daemons/shaper'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/tmp/OpenAvnu/daemons/shaper'
mkdir -p examples/common && make subdir=examples/common -C examples/common
make[1]: Entering directory '/tmp/OpenAvnu/examples/common'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/tmp/OpenAvnu/examples/common'
make lib
make[1]: Entering directory '/tmp/OpenAvnu'
mkdir -p lib/igb_avb/lib && make subdir=lib/igb_avb/lib -C lib/igb_avb/lib
make[2]: Entering directory '/tmp/OpenAvnu/lib/igb_avb/lib'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/tmp/OpenAvnu/lib/igb_avb/lib'
mkdir -p lib/common && make subdir=lib/common -C lib/common
make[2]: Entering directory '/tmp/OpenAvnu/lib/common'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/tmp/OpenAvnu/lib/common'
make[1]: Leaving directory '/tmp/OpenAvnu'
mkdir -p examples/simple_talker && make subdir=examples/simple_talker -C examples/simple_talker
make[1]: Entering directory '/tmp/OpenAvnu/examples/simple_talker'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/tmp/OpenAvnu/examples/simple_talker'
make lib
make[1]: Entering directory '/tmp/OpenAvnu'
mkdir -p lib/igb_avb/lib && make subdir=lib/igb_avb/lib -C lib/igb_avb/lib
make[2]: Entering directory '/tmp/OpenAvnu/lib/igb_avb/lib'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/tmp/OpenAvnu/lib/igb_avb/lib'
mkdir -p lib/common && make subdir=lib/common -C lib/common
make[2]: Entering directory '/tmp/OpenAvnu/lib/common'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/tmp/OpenAvnu/lib/common'
make[1]: Leaving directory '/tmp/OpenAvnu'
mkdir -p examples/simple_listener && make subdir=examples/simple_listener -C examples/simple_listener
make[1]: Entering directory '/tmp/OpenAvnu/examples/simple_listener'
cc -O2 -g -Wall -Wextra -Wno-parentheses -I../../daemons/mrpd -I../common -I../../daemons/common -c -o simple_listener.o simple_listener.c
In file included from /usr/include/pcap/pcap.h:87,
from simple_listener.c:27:
../../daemons/mrpd/mrpd.h:50:13: error: two or more data types in declaration specifiers
50 | typedef int SOCKET;
| ^~~~~~
In file included from ../common/listener_mrp_client.h:41,
from simple_listener.c:30:
../../daemons/mrpd/mrpd.h:50:1: warning: useless type name in empty declaration
50 | typedef int SOCKET;
| ^~~~~~~
make[1]: *** [: simple_listener.o] Error 1
make[1]: Leaving directory '/tmp/OpenAvnu/examples/simple_listener'
make: *** [Makefile:89: simple_listener] Error 2

What should I do?

Hi,
just need added code as below:
in mrpd.h
#ifndef SOCKET
typedef int SOCKET
#endif