【问题标题】:How to compile CHOLMOD library (SuiteSparse) from IDE如何从 IDE 编译 CHOLMOD 库(SuiteSparse)
【发布时间】:2013-07-24 08:28:46
【问题描述】:

一段时间以来,我试图从SuiteSparse 创建一个静态 CHOLMOD 库,每个其他库(例如 Umfpack)都可以从 IDE 轻松编译(我在 Linux 上使用 Code::Blocks,在 Windows 上使用 Visual Studio) .但是,当尝试编译 CHOLMOD 时,我会遇到一堆语法错误,例如:

t_cholmod_triplet.c(21): error C2061: syntax error : identifier 'TEMPLATE'

我调查发现缺少一些#defines(如PATTERN、REAL 定义),因此这些TEMPLATE 的定义是不可见的。我在文件和 makefile 中搜索了它们,但一无所获。但是,当键入 make(在 Linux 上)时,库编译得很好。我错过了什么?

【问题讨论】:

  • 您可能缺少包含头文件。
  • 我是这么想的,但不知何故我无法追踪哪一个,并且在用户指南中声明所有定义都在 cholmod.h
  • VS不会对无法打开的包含文件产生错误吗?

标签: c linux compilation static-libraries suitesparse


【解决方案1】:

您可以使用 SuiteSparse METIS for Windows 软件包:https://github.com/jlblancoc/suitesparse-metis-for-windows

学分:何塞·路易斯·布兰科(阿尔梅里亚大学);杰罗姆·埃斯诺 (INRIA)。

【讨论】:

    【解决方案2】:

    实际上问题的存在是因为在 C 中创建了“模板”。它需要使用不同的标志多次重新编译相同的代码。我已经基于原始makegile编写了VS NMakefile,并且它可以无缝编译。

    【讨论】:

      猜你喜欢
      • 2020-04-28
      • 2018-04-20
      • 1970-01-01
      • 1970-01-01
      • 2021-08-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多