size of array '__curl_rule_01__' is negative size of array '__curl_rule_01__' is negative curl curl

size of array '__curl_rule_01__' is negative


Read higher up in curlrules.h. That error is intentionally forced as part of a test that checks the size of data types.

 * NOTE 2 * ------ * * Some of the following compile time checks are based on the fact * that the dimension of a constant array can not be a negative one. * In this way if the compile time verification fails, the compilation * will fail issuing an error. The error description wording is compiler * dependent but it will be quite similar to one of the following: * *   "negative subscript or subscript is too large" *   "array must have at least one element" *   "-1 is an illegal array size" *   "size of array is negative" * * If you are building an application which tries to use an already * built libcurl library and you are getting this kind of errors on * this file, it is a clear indication that there is a mismatch between * how the library was built and how you are trying to use it for your * application. Your already compiled or binary library provider is the * only one who can give you the details you need to properly use it.

Your version of libcurl was built with different options than you're using in your current git build. (it could be 32 vs 64 bit)

Knowing what platform you're on and your build options might be enough others to help resolve it. If this is the common case, and you're on Linux or another supported platform, it'd be easier just to install a prebuilt binary using the native software management. Git downloads


In case system reports __curl_rule_01__ or __curl_rule_02__ is negative make the following changes to /usr/include/curl/curlbuild.h:

Add the following lines:

  • define CURL_SIZEOF_LONG 4
  • define CURL_SIZEOF_CURL_OFF_T 4

(Or replace similar lines if these are already defined)