C++ OS X大楼gsl(GNU科学图书馆)

C++ OS X大楼gsl(GNU科学图书馆),c++,compilation,gsl,C++,Compilation,Gsl,我正在尝试在OSX上构建gsl库。我从中获得了gsl-1.0 我在我的make之后的文件夹中随机设置/configure 一旦我运行make,我得到了以下信息: In file included from results.c:30: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/6.0/include/varargs.h:25:4: error

我正在尝试在OSX上构建gsl库。我从中获得了gsl-1.0

我在我的
make
之后的文件夹中随机设置
/configure

一旦我运行make,我得到了以下信息:

In file included from results.c:30:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/6.0/include/varargs.h:25:4: error: "Please use <stdarg.h> instead of <varargs.h>"
  #error "Please use <stdarg.h> instead of <varargs.h>"
   ^
results.c:70:7: warning: implicit declaration of function 'va_start' is invalid in C99 [-Wimplicit-function-declaration]
      va_start (ap);
      ^
results.c:73:7: warning: implicit declaration of function 'va_end' is invalid in C99 [-Wimplicit-function-declaration]
      va_end (ap);
      ^
2 warnings and 1 error generated.
make[2]: *** [results.lo] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all-recursive-am] Error 2
我做错什么了吗?我能修好这个吗


提前感谢:)

你有没有试着读这封信,试着理解它说了些什么?当你这样写的时候,我觉得我遗漏了一些东西。我已经查看了导致它为'results.c'的文件,我可以在那里对它进行更改,它似乎是一种解决方法?我重新阅读了您的问题,我认为这个
results.c
不是您的文件,而是您试图构建的库中的文件?如果我听起来有点刺耳,我很抱歉。是的,你当然可以编辑文件,但正如你所说,这不是一个真正合适的解决方案。更好的方法是尝试寻找该库的更高版本。如果没有更高版本可用,并且库似乎被放弃(因此您无法添加错误报告),那么除了自己编辑文件之外,没有太多选择。啊,好吧。不用担心,还不清楚results.c不是我写的,我应该说明一下。有什么特别的原因需要使用这么旧的GSL版本吗?您试图编译的是2001年的版本!最新版本为1.16。为了让您的生活更轻松,您是否考虑过使用软件包管理器,如或为您安装软件包管理器。
/*===---- varargs.h - Variable argument handling -------------------------------------===
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*
*===-----------------------------------------------------------------------===
*/
#ifndef __VARARGS_H
#define __VARARGS_H
  #error "Please use <stdarg.h> instead of <varargs.h>"
#endif