- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经使用最新版本的 Emscripten 尝试了此处的说明:https://github.com/kripken/gmp.js/blob/master/README.markdown
.a 文件似乎已正确创建。然后我尝试针对该库进行编译(在 Debug模式下),这似乎有效:
emcc invocation: /home/marcosscriven/sources/emscripten/emcc -O0 --closure 0 test.c .libs/libgmp.a -o complete.js
(Emscripten: Running sanity checks)
emcc: compiling to bitcode
emcc: compiling source file: test.c
emcc running: /usr/local/bin/clang -m32 -U__i386__ -U__x86_64__ -U__i386 -U__x86_64 -Ui386 -Ux86_64 -U__SSE__ -U__SSE2__ -U__MMX__ -UX87_DOUBLE_ROUNDING -UHAVE_GCC_ASM_FOR_X87 -DEMSCRIPTEN -U__STRICT_ANSI__ -U__CYGWIN__ -D__STDC__ -Xclang -triple=i386-pc-linux-gnu -D__IEEE_LITTLE_ENDIAN -fno-math-errno -fno-ms-compatibility -nostdinc -Xclang -nobuiltininc -Xclang -nostdsysteminc -Xclang -isystem/home/marcosscriven/sources/emscripten/system/local/include -Xclang -isystem/home/marcosscriven/sources/emscripten/system/include -Xclang -isystem/home/marcosscriven/sources/emscripten/system/include/emscripten -Xclang -isystem/home/marcosscriven/sources/emscripten/system/include/bsd -Xclang -isystem/home/marcosscriven/sources/emscripten/system/include/libc -Xclang -isystem/home/marcosscriven/sources/emscripten/system/include/libcxx -Xclang -isystem/home/marcosscriven/sources/emscripten/system/lib/libcxxabi/include -Xclang -isystem/home/marcosscriven/sources/emscripten/system/include/gfx -Xclang -isystem/home/marcosscriven/sources/emscripten/system/include/net -Xclang -isystem/home/marcosscriven/sources/emscripten/system/include/SDL -U__APPLE__ -U__linux__ -D_LIBCPP_HAS_NO_DELETED_FUNCTIONS -emit-llvm -c test.c -o /tmp/tmp_pOV54/test_0.o
emcc: copying library file: .libs/libgmp.a
emcc: will generate JavaScript
emcc: considering including libcxx: we need set([]) and have set([])
emcc: considering including libcxxabi: we need set([]) and have set([])
emcc: considering including libc: we need set(['realloc', 'malloc', 'memcpy', 'free']) and have set([])
emcc: including libc
emcc: linking: ['/tmp/tmp_pOV54/test_0.o', '/tmp/tmp_pOV54/libgmp_1.a', '/home/marcosscriven/.emscripten_cache/libc.bc']
emcc: llvm-linking: ['/tmp/tmp_pOV54/test_0.o', '/home/marcosscriven/.emscripten_cache/libc.bc']
emcc: saving intermediate processing steps to /tmp/emscripten_temp
emcc: LLVM opts: ['-internalize', '-internalize-public-api-list=main', '-globaldce']
emcc: step took 0.01 seconds
emcc: step took 0.00 seconds
emcc: LLVM => JS
emscript: ll=>js
emscript: scan took 0.000277042388916 seconds
emscript: split took 0.000169038772583 seconds
emscript: phase 1 took 0.173984050751 seconds
emscript: phase 2 working on 1 chunks (intended chunk size: 1.00 MB, meta: 0.00 MB, forwarded: 0.01 MB, total: 0.01 MB)
emscript: phase 2 took 0.206316947937 seconds
emscript: phase 2b took 0.000115871429443 seconds
emscript: phase 2c took 0.00135588645935 seconds
emscript: phase 3 took 0.170216083527 seconds
emcc: step took 0.60 seconds
emcc: total time: 1.62 seconds
marcosscriven@ubuntu-laptop:~/sources/gmp-5.0.2$ node complete.js
/home/marcosscriven/sources/gmp-5.0.2/complete.js:2452
___gmpz_init(((5242892)|0));
^
TypeError: undefined is not a function
at _pidigits (/home/marcosscriven/sources/gmp-5.0.2/complete.js:2452:7)
at Object._main (/home/marcosscriven/sources/gmp-5.0.2/complete.js:2429:7)
at Object.callMain (/home/marcosscriven/sources/gmp-5.0.2/complete.js:2644:24)
at doRun (/home/marcosscriven/sources/gmp-5.0.2/complete.js:2679:20)
at run (/home/marcosscriven/sources/gmp-5.0.2/complete.js:2703:12)
at Object.<anonymous> (/home/marcosscriven/sources/gmp-5.0.2/complete.js:2725:13)
at Module._compile (module.js:449:26)
at Object.Module._extensions..js (module.js:467:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
marcosscriven@ubuntu-laptop:~/sources/gmp-5.0.2$ !llvm-nm
llvm-nm .libs/libgmp.a | grep gmpz_init
00000000 T __gmpz_init
00000000 T __gmpz_init2
U __gmpz_init
00000000 T __gmpz_inits
00000000 T __gmpz_init_set
00000000 T __gmpz_init_set_d
00000000 T __gmpz_init_set_si
00000000 T __gmpz_init_set_str
00000000 T __gmpz_init_set_ui
U __gmpz_init
U __gmpz_init_set_ui
U __gmpz_init2
U __gmpz_init_set_ui
U __gmpz_init
U __gmpz_init_set_str
U __gmpz_init
U __gmpz_init2
U __gmpz_init_set
U __gmpz_init
U __gmpz_init_set
最佳答案
我最终得到了这个工作。 (实际上也适用于 MPFR)。
最大的问题是确保使用 32 位选项和 header 。
关于llvm - 无法使用 Emscripten 编译 GMP lib,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15024882/
任意精度库 GMP 和 MPFR 使用机器字大小整数的堆分配数组来存储构成高精度数字/尾数的肢体。 应该如何解释这个肢体数组以恢复任意精度整数?换句话说:对于 N 个肢体,每个肢体持有 B 位,我应该
任意精度库 GMP 和 MPFR 使用机器字大小整数的堆分配数组来存储构成高精度数字/尾数的肢体。 应该如何解释这个肢体数组以恢复任意精度整数?换句话说:对于 N 个肢体,每个肢体持有 B 位,我应该
我想安装 R 的 Rmpfr 库,所以我在 R 中输入: install.packages("Rmpfr") 这个包需要安装GMP C库,在Ubuntu中可以在终端输入安装 sudo apt-get
我刚开始使用 GMP,因为我需要检查任何一个功能。 我下载了 gmp-6.0.tar,将其解压,然后在我的代码中使用了 gmp_printf。 现在,当我打开 gmp_printf.c 时,它有一个头
我正在尝试让 GMP 与 Xcode 一起工作。到目前为止,我已经解压缩了主目录中的文件,运行了所有必要的命令来配置、制作和安装 ./configure --prefix=/usr/local --e
GMP库中是否实现了任何对数函数? 最佳答案 没有,GMP中没有这样的功能。 仅在MPFR中。 关于gmp - 有GMP对数函数吗?,我们在Stack Overflow上找到一个类似的问题: http
如何知道 GMP 中声明变量的大小?或者我们如何确定 GMP 中整数的大小? mpz_random(temp,1); 在手册中,该函数将 1limb(=32bits for my comp) 大小分配
我想生成一个 n 字节的随机整数 z,这样 2^(n-1) <= z <= 2^n - 1 每当我运行以下代码时,gmp 会输出完全相同的整数,我做错了什么? // Random int of n b
考虑以下代码 // BOGP.cpp : Defines the entry point for the console application. // #include "stdafx.h" #in
我正在开发一个程序,用于在 C++ 中分解非常大的数字(20 位或更多),并且正在使用 GMP 来处理溢出问题。我的程序对于大约 10 位或更少的数字运行良好,但是当我向它抛出一个 15 位数字时,它
根据 GMP 手册,“整数运算函数假设所有整数对象都已初始化。您可以通过调用函数 mpz_init 来完成此操作。” 例如, int main(){ mpz_t n1, n2, result;
我对模块编码很陌生,我需要在模块中运行一些使用 GMP 库的计算。 所以第一个问题:通常可以在内核中运行 GMP 吗?为了测试,我编写了这个模块: #include #include #inclu
是否可以在独立环境中使用 GMP? 我正在开发一个必须在裸机上运行的程序(为了减少开销并出于安全目的 - 不允许使用外部代码),这迫使我创建一个简约的内核,但是,我还需要使用 GMP任意大的整数。我研
我需要计算三个二维数组。当我尝试使用 GMP 库初始化数组时。我收到以下错误: GNU MP: Cannot allocate memory (size=16) Aborted (core dumpe
这是为数学极客准备的;) 我正在编写一个小型 C 程序,使用 GNU MP 库来计算前 10 个斐波那契数。这是我的尝试: #include "gmp.h" #include #include #
我正在尝试获取 gmp 上的机器精度变量。 为此,我改编了 wikipedia 中的代码,以固定精度计算 gmp 的精度: int main( int argc, char **argv ) {
目前我正在查看 GMP 库的文档,我在理解函数规范中列出的变量的命名约定时遇到了一些困难。 特别是 rop 和 op 的使用让我感到困惑。 这是列出导入和导出函数的页面,由于我对命名约定的混淆,我很难
我正在尝试编写这样的代码 .... mpz_class *x = NULL; mpz_class *lValue = NULL; .... for(int k = 0; k 分配你的数组。尽管您已经为
我正在使用 GMP 包来实现两个函数的乘积,我表示为两个收敛级数的柯西乘积。 更详细地说:我正在寻找一种方法来计算 f(x)=g(x)*h(x)其中 g(x)是指数函数,h(x)是一个特殊的超几何函数
我在 debian/amd64 上,我想使用 NDK-7b 为 android 2.2 交叉编译 GMP。我从 [gmplib](hg clone http://gmplib.org:8000/gmp
我是一名优秀的程序员,十分优秀!