如何修复OMNeT ++上的'找不到'-lgmp'构建错误?

问题描述 投票:0回答:1

我已经知道OverSim可以与OMNeT ++的较新版本一起使用。我按照InstallGuide中的说明在Windows 10上安装了OMNeT ++ 5.6.1。然后,我在OMNeT ++中导入了INET 3.6.5并进行了构建,没有任何错误。最后,我导入了OverSim-20190424,在构建它时,在构建过程结束时出现以下错误:

make[1]: Entering directory '/c/omnet561/oversim-20190424/src'
Creating executable: ../out/gcc-debug/src/OverSim_dbg.exe
C:/omnet561/omnetpp-5.6.1/tools/win64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/7.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lgmp
collect2.exe: error: ld returned 1 exit status
make[1]: *** [Makefile:418: ../out/gcc-debug/src/OverSim_dbg.exe] Error 1
make[1]: Leaving directory '/c/omnet561/oversim-20190424/src'
make: *** [Makefile:11: all] Error 2
"make MODE=debug -j8 all" terminated with exit code 2. Build might be incomplete.

12:15:59 Build Failed. 3 errors, 0 warnings. (took 12s.448ms)

其他两个错误是:

Description Resource    Path    Location    Type
make: *** [Makefile:11: all] Error 2    OverSim         C/C++ Problem
make[1]: *** [Makefile:418: ../out/clang-debug/src/OverSim_dbg.exe] Error 1 OverSim         C/C++ Problem

有人知道如何解决此错误吗?我也尝试在Windows 7上使用OverSim,并尝试使用OMNeT ++ 5.4.1,但仍然会产生相同的错误。

libgmp库(libgmp-10.dll和libgmpxx-4.dll)位于目录“ C:/omnet561/omnetpp-5.6.1/tools/win64/mingw64/bin”中。我认为这里的问题可能是软件使用错误的目录搜索库,但我不确定如何解决此问题。

c++ makefile mingw omnet++ mingw-w64
1个回答
0
投票

尝试使用libgmpMakefrag库添加路径。转到OverSim-20190424 Project Properties,选择OMNeT++ |Makemake|选择src |Options|Custom| Makefrag并写:

    LIBS += -L/c/libraries/libgmp

假定libgmp库(* .dll或* .a)在C:\libraries\libgmp中。

编辑在文本编辑器中从Makefrag打开oversim-20190424\src\,然后将LIBSOMNETPP_LIBS更改为适当的值:

LIBS += -L/sw/lib  -L/c/omnet561/omnetpp-5.6.1/tools/win64/mingw64/bin
OMNETPP_LIBS += -lgmp  

OMNETPP_LIBS += -lgmp-10   
© www.soinside.com 2019 - 2024. All rights reserved.