Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/141.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 测试程序与RTP(实时传输协议)的链接错误_C++_Linux_Compiler Errors_G++_Rtp - Fatal编程技术网

C++ 测试程序与RTP(实时传输协议)的链接错误

C++ 测试程序与RTP(实时传输协议)的链接错误,c++,linux,compiler-errors,g++,rtp,C++,Linux,Compiler Errors,G++,Rtp,我正在尝试使用rtp(实时传输协议)编译一个简单的测试程序。不幸的是,我得到一个链接错误,我无法摆脱。以下是我尝试编译的代码: g++ -v main.cpp -o rtp -lccrtp 这是main.cpp #include <ccrtp/rtp.h> int main(int argc, char *argv[]) { ost::RTPSession s(ost::InetHostAddress("127.0.0.1"),9000); // b

我正在尝试使用rtp(实时传输协议)编译一个简单的测试程序。不幸的是,我得到一个链接错误,我无法摆脱。以下是我尝试编译的代码:

g++ -v main.cpp -o rtp -lccrtp
这是main.cpp

#include <ccrtp/rtp.h>

int main(int argc, char *argv[])
{
    ost::RTPSession s(ost::InetHostAddress("127.0.0.1"),9000);  // bind reception socket.
     
    return 0;
}
#包括
int main(int argc,char*argv[])
{
ost::RTPSession s(ost::InetHostAddress(“127.0.0.1”),9000);//绑定接收套接字。
返回0;
}
以及输出:

Using built-in specs.
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/8/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Debian 8.3.0-6' --with-bugurl=file:///usr/share/doc/gcc-8/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --prefix=/usr --with-gcc-major-version-only --program-suffix=-8 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 8.3.0 (Debian 8.3.0-6) 
COLLECT_GCC_OPTIONS='-v' '-o' 'rtp' '-shared-libgcc' '-mtune=generic' '-march=x86-64'
 /usr/lib/gcc/x86_64-linux-gnu/8/cc1plus -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE main.cpp -quiet -dumpbase main.cpp -mtune=generic -march=x86-64 -auxbase main -version -o /tmp/ccMnYiXi.s
GNU C++14 (Debian 8.3.0-6) version 8.3.0 (x86_64-linux-gnu)
    compiled by GNU C version 8.3.0, GMP version 6.1.2, MPFR version 4.0.2, MPC version 1.1.0, isl version isl-0.20-GMP

GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
ignoring duplicate directory "/usr/include/x86_64-linux-gnu/c++/8"
ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"
ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/8/../../../../x86_64-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
 /usr/include/c++/8
 /usr/include/x86_64-linux-gnu/c++/8
 /usr/include/c++/8/backward
 /usr/lib/gcc/x86_64-linux-gnu/8/include
 /usr/local/include
 /usr/lib/gcc/x86_64-linux-gnu/8/include-fixed
 /usr/include/x86_64-linux-gnu
 /usr/include
End of search list.
GNU C++14 (Debian 8.3.0-6) version 8.3.0 (x86_64-linux-gnu)
    compiled by GNU C version 8.3.0, GMP version 6.1.2, MPFR version 4.0.2, MPC version 1.1.0, isl version isl-0.20-GMP

GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 3c854693d01dc9a844a56a0b1ab1c0f4
COLLECT_GCC_OPTIONS='-v' '-o' 'rtp' '-shared-libgcc' '-mtune=generic' '-march=x86-64'
 as -v --64 -o /tmp/ccBl5GBx.o /tmp/ccMnYiXi.s
GNU assembler version 2.31.1 (x86_64-linux-gnu) using BFD version (GNU Binutils for Debian) 2.31.1
COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/8/:/usr/lib/gcc/x86_64-linux-gnu/8/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/8/:/usr/lib/gcc/x86_64-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/8/:/usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/8/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/8/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-v' '-o' 'rtp' '-shared-libgcc' '-mtune=generic' '-march=x86-64'
 /usr/lib/gcc/x86_64-linux-gnu/8/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/8/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/8/lto-wrapper -plugin-opt=-fresolution=/tmp/cc36T3hM.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o rtp /usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/8/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/8 -L/usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/8/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/8/../../.. /tmp/ccBl5GBx.o -lccrtp -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/8/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/crtn.o
/usr/bin/ld: /tmp/ccBl5GBx.o: undefined reference to symbol '_ZNK7ucommon14JoinableThread9is_activeEv'
/usr/bin/ld: //lib/x86_64-linux-gnu/libucommon.so.8: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
使用内置规格。
收集\u GCC=g++
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/8/LTO WRAPPER
卸载\u目标\u名称=nvptx无
卸载\目标\默认值=1
目标:x86_64-linux-gnu
配置为:../src/configure-v——带有pkgversion='Debian 8.3.0-6'——带有bugurl=file:///usr/share/doc/gcc-8/README.Bugs ——启用语言= C、艾达、C++、GO、BRIG、D、FORTRAN、Objc,obj-c++--prefix=/usr--仅限gcc主版本--程序后缀=-8--程序前缀=x86_64-linux-gnu----启用共享--启用链接器构建id--libexecdir=/usr/lib--不包括gettext--启用线程=posix--libdir=/usr/lib--启用nls--启用引导--启用clocale=gnu--启用libstdcxx调试--启用libstdcxx时间=是--使用默认libstdcxx abi=new--启用gnu唯一对象--禁用vtable验证--启用libmpx--启用插件--启用默认饼图--使用系统zlib--使用目标系统zlib--启用objc gc=auto--启用多库--禁用werror--使用-arch-32=i686--使用abi=m64--使用多库列表=m32,m64,mx32--启用多库--使用tune=generic--启用卸载目标=nvptx none--不使用cuda驱动程序--启用检查=release--构建=x86_64-linux-gnu--主机=x86_64-linux-gnu--目标=x86_64-linux-gnu
线程模型:posix
gcc版本8.3.0(Debian 8.3.0-6)
COLLECT\u GCC\u OPTIONS='-v'-o''rtp'-shared libgcc'-mtune=generic'-march=x86-64'
/usr/lib/gcc/x86_64-linux-gnu/8/cc1plus-quiet-v-imultimarch x86_64-linux-gnu-D_gnu_-SOURCE main.cpp-quiet-dumpbase main.cpp-mtune=generic-march=x86-64-auxbase main-version-o/tmp/ccMnYiXi.s
GNU C++14(Debian 8.3.0-6)版本8.3.0(x86_64-linux-GNU)
由GNU C版本8.3.0、GMP版本6.1.2、MPFR版本4.0.2、MPC版本1.1.0、isl版本isl-0.20-GMP编制
GGC启发式:--param GGC min expand=100--param GGC min heapsize=131072
忽略重复目录“/usr/include/x86_64-linux-gnu/c++/8”
忽略不存在的目录“/usr/local/include/x86_64-linux-gnu”
忽略不存在的目录“/usr/lib/gcc/x86_64-linux-gnu/8/../../../../../../../x86_64-linux-gnu/include”
#包括“…”搜索从这里开始:
#包括搜索从这里开始:
/usr/include/c++/8
/usr/include/x86_64-linux-gnu/c++/8
/usr/include/c++/8/backward
/usr/lib/gcc/x86_64-linux-gnu/8/include
/usr/本地/包括
/usr/lib/gcc/x86_64-linux-gnu/8/include-fixed
/usr/include/x86_64-linux-gnu
/usr/包括
搜索列表结束。
GNU C++14(Debian 8.3.0-6)版本8.3.0(x86_64-linux-GNU)
由GNU C版本8.3.0、GMP版本6.1.2、MPFR版本4.0.2、MPC版本1.1.0、isl版本isl-0.20-GMP编制
GGC启发式:--param GGC min expand=100--param GGC min heapsize=131072
编译器可执行校验和:3c854693d01dc9a844a56a0b1ab1c0f4
COLLECT\u GCC\u OPTIONS='-v'-o''rtp'-shared libgcc'-mtune=generic'-march=x86-64'
as-v--64-o/tmp/ccBl5GBx.o/tmp/ccMnYiXi.s
GNU汇编程序版本2.31.1(x86_64-linux-GNU),使用BFD版本(用于Debian的GNU Binutils)2.31.1
编译器_PATH=/usr/lib/gcc/x86_64-linux-gnu/8/:/usr/lib/gcc/x86_64-linux-gnu/8/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/8/:/usr/lib gcc/x86_64-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/8/:/usr/lib/gcc/x86_64-linux-gnu/8/../../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/8/../../../../../../lib/
COLLECT\u GCC\u OPTIONS='-v'-o''rtp'-shared libgcc'-mtune=generic'-march=x86-64'
/usr/lib/gcc/x86_64-linux-gnu/8/collect2-plugin/usr/lib/gcc/x86_64-linux-gnu/8/liblto_plugin.so-plugin opt=/usr/lib/gcc/x86_64-linux-gnu/8/lto包装器-plugin opt=-fresolution=/tmp/cc36T3hM.res-plugin opt=-pass=-through=-lgcc_-plugin opt=-pass=-through=-lgcc-lgcc-plugin=-opt=-pass=-pass=-through=-lc=-lc-plugin opt=-pass-through=-lgcc--build id--eh frame hdr-m elf_x86_64--hash style=gnu-dynamic linker/lib64/ld-linux-x86-64.so.2-pie-o rtp/usr/lib/gcc/x86_64-linux-gnu/8/../../../x86_64-linux-gnu/Scrt1.o/usr/lib/gcc/x86-linux-gnu/8/../../../-L/usr/lib/gcc/x86_64-linux-gnu/8-L/usr/lib/gcc/x86_64-linux-gnu/8/../x86_64-linux-gnu-L/usr/lib/gcc/x86_64-linux-gnu/8/..//tmp/ccBl5GBx.o-lccrtp-lstdc++-lm-lgcc_s-lgcc-lc-lgcc_s-lgcc/usr/lib/gcc/x86_64-linux-gnu/8/crtrends.o/usr/lib/gcc/x86_64-linux-gnu/8/../../../../x86_64-linux-gnu/crtn.o
/usr/bin/ld:/tmp/ccBl5GBx.o:未定义对符号“_znk7ucommon14可连接螺纹9is_activeEv”的引用
/usr/bin/ld://lib/x86_64-linux-gnu/libucommon.so.8:添加符号时出错:命令行中缺少DSO
collect2:错误:ld返回了1个退出状态

谢谢你的帮助。

谢谢你的快速回复。这让我找到了解决办法。我还需要安装

libcommoncpp2-dev
现在,它编译为:

g++ -lccrtp -lucommon -lcommoncpp -o rtp main.cpp

没有任何错误。再次感谢。

看起来您也需要-lucommon