XCode 4.2.1 - Проблемы с va_list, va_start, va_end из SFML 2.0 - PullRequest
1 голос
/ 17 февраля 2012

Здесь есть пара проблем. Во-первых, cstdarg выдает эту ошибку:

/usr/include/c++/4.2.1/cstdarg:59:11:{60:9-60:11}: error: no member named 'va_list' in the global namespace [3]
   using ::va_list;

Затем, включая c ++ locale.h, выдает следующее:

/usr/include/c++/4.2.1/bits/c++locale.h:76:5: error: use of undeclared identifier 'va_start' [3]
     va_start(__args, __fmt);
     ^
/usr/include/c++/4.2.1/bits/c++locale.h:84:5: error: use of undeclared identifier 'va_end' [3]
     va_end(__args);
     ^
/usr/include/c++/4.2.1/cstdarg:54:20: note: instantiated from:
 #define va_end(ap) va_end (ap)

Я не уверен, что с этим делать. Я использую SFML 2.0, и в том числе Graphics.hpp из него дает эти ошибки. Есть идеи как это исправить?

Ответы [ 3 ]

3 голосов
/ 27 августа 2012

Я столкнулся с этой же проблемой.Я обнаружил, что наличие /usr/local/include/** и /usr/include/** в моем пути поиска заголовка нарушило все стандартные библиотеки шаблонов.Одна из библиотек, которую я использовал, установила себя в /usr/lib и /usr/include, я обнаружил, что удаление этой библиотеки и ее переустановка в /usr/local/lib и /usr/local/include решило проблему.

Я попытался включить stdio.h, как предложено выше, но это не помогло.

Система, которую я использую, - Mac OS 10.8 и XCode 4.3

1 голос
/ 25 мая 2012

У меня была эта проблема в проекте, и я исправил ее, добавив в начале дополнительное включение, которое заботится о загрузке отсутствующего элемента:

#include <stdio.h>

Если вы посмотрите в этот файл, вы увидите определение:

#ifndef _VA_LIST
#define _VA_LIST
/* DO NOT REMOVE THIS COMMENT: fixincludes needs to see:
 * __gnuc_va_list and include <stdarg.h> */
typedef __darwin_va_list    va_list;
#endif
1 голос
/ 17 февраля 2012

Обычные заголовки C не совместимы с заголовками C ++.Попробуйте включить cstdarg вместо stdarg.h

...