【发布时间】: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环境变量?