Eclipse で ndk-r7 コンパイル環境をセットアップし、.so ライブラリ ファイルの C コードをコンパイルしました。その場合、C コードの va_lsit タイプを識別してコンパイルすることはできません。
ndkのサンプルコードをコンパイルすると問題ありません。ただし、サンプルでは va_list 型を使用していません。stdarg.h があります。また、ndk カタログの stdarg.h に va_list 定義があります。
このようなエラー:
jni/CommAbstractLayer.c: In function 'SetCommunicationLineVoltage':
jni/CommAbstractLayer.c:1414: error: invalid initializer(this line points the following line: va_list args = NULL;)
このようなコード:
#include <stdarg.h>
......
W_INT2 SetCommunicationLineVoltage(BYTE ucChangeTimes, ...)
{
va_list args = NULL;
......
return 0;
}