我在ubuntu上安装了GMP。我从" https://gmplib.org"下载GMP-6.1.2。然后我在Home文件夹中解压缩并安装如下:
1. cd gmp-6.1.2
2../configure
3. make
4. sudo make install
5. make check
我检查过,gmp安装在" / usr / local"我打开了omnet,我改变了这些路径: 我输入了Properties项目:
1. in (c/c++ build | environment | path ), I added :
(/usr/local/include:/usr/local/lib) then I applied.
2. in (c/c++ General | paths and symbols | includes),I added
(/usr/local/include) in assembly, GNU c, GNU C++.then I applied.
在((c / c ++一般|路径和符号|库路径)。我添加了(/ usr / local / lib)。然后我应用了。
另外((c / c ++一般|路径和符号|库)。我写了" gmpxx"和" gmp"。然后我申请了。
3. in (omnet++ | Makemake | select "src" folder | select Options |
custom | makefrag ) I added "EXTRA_OBJS=-lgmp". Then I applied them
and OK.
之后,我构建了我的项目并收到了这些错误:
描述资源路径位置类型 刷新Makefile时出错:/home/mar/Desktop/omnet_proj/id_2/test_independent/mixim-2.3/src/EXTRA_OBJS=-lgmp(没有这样的文件或目录)mixim-2.3未知的Makefile问题
描述资源路径位置类型 节目" gcc"在项目属性C / C ++问题
中的PATH mixim-2.3 [发现选项]页面中找不到描述资源路径位置类型 计划"制作"在PATH mixim-2.3 C / C ++中找不到问题
我必须说我在Omnet ++中使用MIXIM。 我不知道发生了什么事?
你能帮我吗?
先谢谢你的帮助。
答案 0 :(得分:0)
假设您在libgmp
项目中使用sudo apt-get install libgmp3-dev
安装了OMNeT++
,则必须执行此操作:
在您要使用gmp
的简单模块的头文件(* .h)中添加:
#include <gmp.h>
转到Project Properties
,选择OMNeT++
| Makemake
|选择src
| Options
| Custom
| Makefrag
并写下:
EXTRA_OBJS=-lgmp
要检查您是否可以在源文件中的某处添加以下代码,例如在initialize()
中:
mpz_t a, b, c;
mpz_init_set_str(a, "123", 10);
mpz_init_set_str(b, "458", 10);
mpz_init(c);
mpz_add(c, a, b);
char * ctxt = mpz_get_str(NULL, 10, c);
EV << "c=" << ctxt << std::endl; // print the result
mpz_clear(a);
mpz_clear(b);
mpz_clear(c);
答案 1 :(得分:0)
我想我能做到。
我在ubuntu中安装了gmp。然后我将“gmp.h”和“gmpXX.h”添加到我的项目中。
之后,我去了项目属性| omnet ++ |选择SRC |选项|链接|要链接的附加库:( - l选项),我插入了这两个选项: gmpxx,gmp。
另外,我在“路径和符号|库路径”中的“路径和符号(在项目属性中)|包含”和“/ usr / local / lib”中添加了“/ usr / local / include”。
之后,我在“路径和符号|库路径”中的“路径和符号(在项目属性中)|包含”和“/ usr / lib / i386-linux-gnu”中添加了“/ usr / include”。
我没有任何错误地构建了我的项目。
最后,我亲爱的Jurzy D的例子没有任何错误。
我没有改变任何其他事情。