【问题标题】:PETSc error for mpiccmpicc 的 PETSc 错误
【发布时间】:2015-03-31 17:39:33
【问题描述】:

我正在使用 C 中的代码进行具有辐射传输的水力模拟。需要 PETSc,它是我在本地机器上编译的。但是在编译我的代码时,我收到错误消息:error: ’__SDIR__’ undeclared(在此函数中首次使用)。生成文件有:

include $(PETSC_DIR)/conf/variables
CFLAGS += $(PETSC_INCLUDE)
CFLAGS += $(PETSC_CC_INCLUDES)
LDFLAGS += $(PETSC_KSP_LIB)

任何人都可以提出解决方案吗?

【问题讨论】:

    标签: c petsc


    【解决方案1】:

    链接器参数必须在任何目标文件之后有库引用(路径然后是库名)。这是因为这些库用于解析符号,并且参数按照它们列出的顺序从左到右进行处理。因此,当一个库提前列出时,在目标文件创建未解析符号的某个目标文件之前,该库将不会用于解析符号。建议将库路径和库名称放在链接器行的最后。

    【讨论】:

      猜你喜欢
      • 2020-07-09
      • 2022-12-25
      • 2014-01-29
      • 2021-12-28
      • 1970-01-01
      • 1970-01-01
      • 2014-02-05
      • 2015-10-19
      • 2012-06-06
      相关资源
      最近更新 更多