首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NesC / GMP未定义符号

NesC / GMP未定义符号
EN

Stack Overflow用户
提问于 2015-03-07 02:38:43
回答 1查看 166关注 0票数 1

我正在尝试制作一个与TOSSIM (TinyOS模拟器)一起使用的NesC程序,包括gmp库。下面是我的代码示例

代码语言:javascript
复制
event void Boot.booted()
        {
                //dbg("MAPC", "Booted\n");
                //int g = 2;
                const char * const num = "10387922662657137735272585565990678424704150824246588991894422884684285337052622755228646547137908394766337363629003511269209591656314972254747436173398683";
                int err;

                mpz_t n;
                err = mpz_init_set_str(n, num, 10);

                dbg("MAPC","%d",sizeof(n));

                mpz_clear(n);
        }

当我尝试通过python脚本执行编译时,使用make micaz simenv "CFLAGS = -lgmp" make micaz sim可以很好地运行它,我得到了这个错误:

代码语言:javascript
复制
Traceback (most recent call last):
  File "kdk.py", line 4, in <module>
    from TOSSIM import *
  File "/opt/tinyos-2.1.2/apps/MAP/TOSSIM.py", line 7, in <module>
    import _TOSSIM
ImportError: /opt/tinyos-2.1.2/apps/MAP/_TOSSIMmodule.so: undefined symbol: __gmpz_init_set_str
EN

回答 1

Stack Overflow用户

发布于 2015-03-07 04:51:32

libgmp中的一个符号无法解析,看起来它不是用这个库编译的。

您应该尝试使用适用于-lgmp的LDFLAGS,而不是CFLAGS。然而,LDFLAGS可能会在makefile中被覆盖,所以,你最好在makefile中更新它。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28905427

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档