Как исправить ошибку сборки «not find -lgmp» на OMNeT ++? - PullRequest
0 голосов
/ 05 апреля 2020

Мне стало известно, что OverSim можно использовать с более новыми версиями OMNeT ++. Я установил OMNeT ++ 5.6.1 на Windows 10, следуя инструкциям в InstallGuide. Затем я импортировал INET 3.6.5 в OMNeT ++ и собрал его, ошибок не было. Наконец, я импортировал 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

Кто-нибудь знает, как эту ошибку можно исправить? Я пытался использовать OverSim на Windows 7, а также пытался использовать OMNeT ++ 5.4.1, но та же ошибка все еще выдается.

Библиотеки libgmp (libgmp-10.dll и libgmpxx-4.dll) в каталоге "C: / omnet561 / omnetpp-5.6.1 / tools / win64 / mingw64 / bin". Я думаю, что проблема здесь может заключаться в том, что программное обеспечение использует неправильный каталог для поиска библиотек, но я не уверен, как решить эту проблему.

Ответы [ 2 ]

0 голосов
/ 12 апреля 2020

Для тех, кто сталкивается с той же проблемой, мне удалось решить ее с помощью OMNeT ++ 5.6.1 и Oversim 20190424 в Ubuntu 18.04. Когда я собрал Oversim, я получил ошибку «Не удалось найти gmp.h», чтобы устранить эту ошибку, я установил libgmp3-dev - apt-get install libgmp3-dev. Если кому-то удастся заставить его работать на Windows 10 или у него есть представление о том, как это можно исправить, пожалуйста, не стесняйтесь писать.

0 голосов
/ 06 апреля 2020

Попробуйте добавить путь к libgmp библиотекам, используя Makefrag. Go до 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\ в текстовом редакторе, а затем измените LIBS и OMNETPP_LIBS на правильные значения:

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

или

OMNETPP_LIBS += -lgmp-10   
...