【问题标题】:Error when building simuLTE with MODE=release使用 MODE=release 构建 simuLTE 时出错
【发布时间】:2019-11-12 22:04:22
【问题描述】:

为了更快地运行模拟,我正在尝试在发布模式下构建 simuLTE,就像静脉可以实现的那样。

user@user-VirtualBox:~/simulte_veins/simulte$ make MODE=release
make[1]: Entering directory '/home/user/simulte_veins/simulte/src'
Creating shared library: ../out/gcc-release/src/liblte.so
/usr/bin/ld: cannot find -lINET
/usr/bin/ld: cannot find -lveins_inet
collect2: error: ld returned 1 exit status
Makefile:275: recipe for target '../out/gcc-release/src/liblte.so' failed
make[1]: *** [../out/gcc-release/src/liblte.so] Error 1
make[1]: Leaving directory '/home/user/simulte_veins/simulte/src'
Makefile:2: recipe for target 'all' failed
make: *** [all] Error 2

我已尝试通过以下方式在 lte/src/ 下的 MAKEFILE 中观察到的 INET 和 Venes_inet 路径附加 ~/.bashrc:

export veins_inet=$HOME/simulte_veins/veins-veins-4.6/subprojects/veins_inet/out/gcc-debug/src:$PATH   
export INET=$HOME/inet/out/gcc-debug/src:$PATH

我也尝试通过添加 INET 和 Venes_inet 路径直接更新 $PATH,但无济于事。

我哪里错了? 在构建 lte 之前,我是否需要在发布模式下构建 INET 和 Venes_inet? 我什至尝试在 MODE=release 中构建 INET,但遇到了同样的错误

/usr/bin/ld: cannot find -lINET

我正在使用 OMNeT++ 5.1.1;veins 4.6;sumo 0.30.0;simulte v1.0.1

here 提出了类似问题。但是,我不确定是否应该尝试将各自目录中的 .so 文件再次分别链接到 -lINET 和 -lveins_inet。谁能给我建议?

【问题讨论】:

  • 使用make V=1 可以获得失败的确切编译器命令。好像找不到你要链接的库,你在构建 simuLTE 时是否设置了INET_PROJ 环境变量?

标签: omnet++ veins simulte


【解决方案1】:

如果构建适用于调试版本,但不适用于发布版本,那么您还没有为 INET 和 VEINS_INET 编译发布版本库。转到它们各自的目录并构建这些组件。

【讨论】:

    猜你喜欢
    • 2011-11-04
    • 1970-01-01
    • 2019-04-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-01
    相关资源
    最近更新 更多