在 Ubuntu 16.10 x64 上配置 Meschach 时出现问题

Problems configuring Meschach on Ubuntu 16.10 x64

我是 C 的新手。我正在尝试在 JavaScript 中进行一些矩阵操作,并希望将 C 库作为 Node JS 模块嵌入。我完成了一个执行此操作的概念验证模块,并且工作正常。

我从 here (mesch12b.tar.gz) 下载了 Meschach 来进行矩阵操作。它看起来是满足我需要的一个不错的选择(尽管我对 C 或 C++ 中的其他选项持开放态度)。

出于某种原因,当我 运行 ./configure 脚本时,它找不到任何东西:

$ ./configure
loading cache ./config.cache
checking for acc... no
checking for cc... (cached) no
checking for gcc... (cached) no
checking for cc... (cached) no
configure: error: no acceptable cc found in $PATH

我的 PATH 似乎很好,ccgcc 在我的系统上可用(我已经永久安装了 build-essential):

$ which cc
/usr/bin/cc
$ which gcc
/usr/bin/gcc

我找遍了 SO 但没有找到任何有用的东西。有什么建议吗?

更新

我发现如果我设置 CC 环境变量,我们就可以解决第一个问题,但更多的问题会出现。我会尝试一次一个地完成它们,但如果有人能指出我做错了什么重要的事情,我将不胜感激。

$ CC=/usr/bin/gcc ./configure
loading cache ./config.cache
checking for acc... /usr/bin/gcc
checking for cc... (cached) /usr/bin/gcc
checking for gcc... (cached) /usr/bin/gcc
checking whether the C compiler (/usr/bin/gcc  ) works... yes
checking whether the C compiler (/usr/bin/gcc  ) is a cross-compiler... no
checking whether we are using GNU C... yes
checking whether /usr/bin/gcc accepts -g... yes
checking how to run the C preprocessor... /usr/bin/gcc -E
checking for AIX... no
./configure: 957: ./configure: AC_HPUX: not found
checking for minix/config.h... no
checking for POSIXized ISC... no
checking for ranlib... ranlib
checking for memory.h... yes
checking for ANSI C header files... yes
checking for complex.h... yes
checking for malloc.h... yes
checking for varargs.h... no
checking for size_t... yes
checking for working const... yes
checking whether byte ordering is bigendian... no
computing machine epsilon(s)
/usr/bin/gcc -o macheps dmacheps.c
dmacheps.c:37:1: warning: return type defaults to 'int' [-Wimplicit-int]
 main()
 ^
/usr/bin/gcc -o macheps fmacheps.c
fmacheps.c:37:1: warning: return type defaults to 'int' [-Wimplicit-int]
 main()
 ^
computing M_MAX_INT
/usr/bin/gcc -o maxint maxint.c
maxint.c:27:1: warning: return type defaults to 'int' [-Wimplicit-int]
 main()
 ^
maxint.c: In function 'main':
maxint.c:37:5: warning: implicit declaration of function 'printf' [-Wimplicit-function-declaration]
     printf("%d\n", old_i);
     ^
maxint.c:37:5: warning: incompatible implicit declaration of built-in function 'printf'
maxint.c:37:5: note: include '<stdio.h>' or provide a declaration of 'printf'
checking char [=13=] vs. float zeros
checking for bcopy... yes
checking for bzero... yes
./configure: 1697: ./configure: Syntax error: "(" unexpected (expecting "fi")

我最终修复了配置错误(在声明中添加 CC=/usr/bin 一些需要类型的方法等)。

但是后来这个版本有大约一百个 warnings/errors,我注意到文件中的许可证的第三条不标准且可能不自由,所以我放弃了它,打算换一个改为使用矩阵库。