Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
起重机检查:autoheader:警告:缺少模板:HAVE_GSL_HEADER autoheader:使用AC_定义([HAVE_GSL_HEADER],],[说明])_R_Gsl_Cran - Fatal编程技术网

起重机检查:autoheader:警告:缺少模板:HAVE_GSL_HEADER autoheader:使用AC_定义([HAVE_GSL_HEADER],],[说明])

起重机检查:autoheader:警告:缺少模板:HAVE_GSL_HEADER autoheader:使用AC_定义([HAVE_GSL_HEADER],],[说明]),r,gsl,cran,R,Gsl,Cran,最近,我正在维护的CRAN上的一个包出现以下错误: (我没有更改任何内容-错误只是以前不存在-CRAN可能添加了其他检查) 结果:警告 运行autoreconf的输出: 自动标头:警告:缺少模板:具有\u GSL\u标头 自动标头:使用AC_定义([具有\u GSL_标头],[说明]) 自动恢复:/usr/bin/autoheader失败,退出状态:1 口味:r-devel-linux-x86_64-fedora-clang,r-devel-linux-x86_64-fedora-gcc 以下是

最近,我正在维护的CRAN上的一个包出现以下错误: (我没有更改任何内容-错误只是以前不存在-CRAN可能添加了其他检查)

结果:警告 运行autoreconf的输出: 自动标头:警告:缺少模板:具有\u GSL\u标头 自动标头:使用AC_定义([具有\u GSL_标头],[说明]) 自动恢复:/usr/bin/autoheader失败,退出状态:1 口味:r-devel-linux-x86_64-fedora-clang,r-devel-linux-x86_64-fedora-gcc

以下是指向CRAN检查页面的链接:

该错误似乎只出现在r-devel-linux-x86_64-fedora-clang、r-devel-linux-x86_64-fedora-gcc中

Github到包源代码的链接:

该包使用GSL库。(如果有人怀疑错误消息中的GSL)

不幸的是,我只是超越了软件包的维护,对C语言的东西没有太多的想法

我假设,错误消息与包的R部分无关。我必须在C文件的某个地方添加AC_DEFINE吗

谁能给我解释一下,错误信息到底对我说了什么。我想这可能已经帮我弄明白了

编辑: 我想我必须更改此文件中的某些内容(只是猜测)

但那里的代码如下所示:

if test "${HAVE_GSL}" = TRUE; then
dnl Define HAVE_GSL_H in src/config.h
    AC_CHECK_HEADERS([gsl/gsl_version.h],AC_DEFINE(HAVE_GSL_HEADER), [HAVE_GSL=FALSE])
    if test "${HAVE_GSL}" = FALSE; then
       AC_MSG_WARN([gsl headers not found, perhaps check the path?])
       AC_MSG_WARN([ridge will be installed, but some functions will be 
unavailable])
    fi
fi

因此,似乎有一个语句AC\u DEFINE(HAVE\u GSL\u HEADER),[HAVE\u GSL=FALSE])

将下面的内容放入名为
diff.patch
的文件或顶部目录中您喜欢的任何文件中

diff --git a/configure.ac b/configure.ac
index e643140..0b256a6 100644
--- a/configure.ac
+++ b/configure.ac
@@ -22,7 +22,8 @@ fi

 if test "${HAVE_GSL}" = TRUE; then
 dnl Define HAVE_GSL_H in src/config.h
-    AC_CHECK_HEADERS([gsl/gsl_version.h],AC_DEFINE(HAVE_GSL_HEADER),[HAVE_GSL=FALSE])
+    AC_CHECK_HEADERS([gsl/gsl_version.h],
+    AC_DEFINE(HAVE_GSL_HEADER, [], [Description]),[HAVE_GSL=FALSE])
     if test "${HAVE_GSL}" = FALSE; then
        AC_MSG_WARN([gsl headers not found, perhaps check the path?])
        AC_MSG_WARN([ridge will be installed, but some functions will be unavailable])
运行
patch-p1


现在,
autoreconf
应该可以重建所有文件了。

将下面的文件放入名为
diff.patch
的文件或顶部目录中您喜欢的任何文件中

diff --git a/configure.ac b/configure.ac
index e643140..0b256a6 100644
--- a/configure.ac
+++ b/configure.ac
@@ -22,7 +22,8 @@ fi

 if test "${HAVE_GSL}" = TRUE; then
 dnl Define HAVE_GSL_H in src/config.h
-    AC_CHECK_HEADERS([gsl/gsl_version.h],AC_DEFINE(HAVE_GSL_HEADER),[HAVE_GSL=FALSE])
+    AC_CHECK_HEADERS([gsl/gsl_version.h],
+    AC_DEFINE(HAVE_GSL_HEADER, [], [Description]),[HAVE_GSL=FALSE])
     if test "${HAVE_GSL}" = FALSE; then
        AC_MSG_WARN([gsl headers not found, perhaps check the path?])
        AC_MSG_WARN([ridge will be installed, but some functions will be unavailable])
运行
patch-p1


现在,
autoreconf
应该可以重新构建了。

非常感谢!我试试这个。不幸的是,我不得不上传到CRAN进行检查……因为Travis CI、R-Hub和我自己的计算机在检查时没有显示此消息。这项检查现在似乎只在CRAN build服务器上实现……非常感谢!我试试这个。不幸的是,我不得不上传到CRAN进行检查……因为Travis CI、R-Hub和我自己的计算机在检查时没有显示此消息。目前,此检查似乎仅在CRAN build服务器上实施。。。