【发布时间】:2020-05-11 09:18:41
【问题描述】:
场景:我正在编译 GnuRadio(我正在对 GnuRadio 模块 qtgui 进行非常简单的修改),其中“sudo make install”的内容是“/prefix/default/src/gnuradio/build”。当我尝试编译时,我收到此错误。
我以为我没有安装thrift,但我有。
有什么建议吗?
/usr/bin/ld: cannot find -lthrift
collect2: error: ld returned 1 exit status
make[2]: *** [gr-qtgui/lib/CMakeFiles/gnuradio-qtgui.dir/build.make:1182: gr-qtgui/lib/libgnuradio-qtgui-3.7.13.5.so.0.0.0] Error 1
make[1]: *** [CMakeFiles/Makefile2:12843: gr-qtgui/lib/CMakeFiles/gnuradio-qtgui.dir/all] Error 2
make: *** [Makefile:163: all] Error 2 ```
【问题讨论】:
-
您是否安装了
libthrift? -
我不这么认为。由于我使用的是 Ubuntu 18.10,我需要 libthrift-0.10.0,但我找不到它。我通过添加最后一个存储库尝试使用 0.11,但它不起作用。
-
如果你没有安装它,它不应该启用 thrift 链接。这很奇怪。您是否在 CMake 中强制启用节俭?
-
确实,我同意 MarcusMüller 的说法,这很奇怪,即使我安装正确并且所有依赖项都得到了满足。顺便说一句,我并没有强制编译而不节俭,但我认为您的方法和@Vasil 建议的方法有效。最后,我尝试手动下载所需的库(如我的答案中所指定)并使用 dpkg 安装它们。
标签: c++ gnuradio gnuradio-companion