{"action":"created","issue":{"url":"https://api.github.com/repos/cyaninc/beaker/issues/60","labels_url":"https://api.github.com/repos/cyaninc/beaker/issues/60/labels{/name}","comments_url":"https://api.github.com/repos/cyaninc/beaker/issues/60/comments","events_url":"https://api.github.com/repos/cyaninc/beaker/issues/60/events","html_url":"https://github.com/cyaninc/beaker/issues/60","id":83302799,"number":60,"title":"Npm install error","user":{"login":"garrickajo","id":2825366,"avatar_url":"https://avatars.githubusercontent.com/u/2825366?v=3","gravatar_id":"","url":"https://api.github.com/users/garrickajo","html_url":"https://github.com/garrickajo","followers_url":"https://api.github.com/users/garrickajo/followers","following_url":"https://api.github.com/users/garrickajo/following{/other_user}","gists_url":"https://api.github.com/users/garrickajo/gists{/gist_id}","starred_url":"https://api.github.com/users/garrickajo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/garrickajo/subscriptions","organizations_url":"https://api.github.com/users/garrickajo/orgs","repos_url":"https://api.github.com/users/garrickajo/repos","events_url":"https://api.github.com/users/garrickajo/events{/privacy}","received_events_url":"https://api.github.com/users/garrickajo/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2015-06-01T04:17:22Z","updated_at":"2015-06-03T04:22:05Z","closed_at":null,"body":"I tried to run the `npm install` command, and was getting an error that curl.h was not found. \r\n\r\nAfter installing libcurl4-gnutls-dev, other errors were happening. Down below is only the error out. Curl version follows.\r\n\r\n```\r\n$ curl --version\r\ncurl 7.35.0 (x86_64-pc-linux-gnu) libcurl/7.35.0 OpenSSL/1.0.1f zlib/1.2.8 libidn/1.28 librtmp/2.3\r\nProtocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtmp rtsp smtp smtps telnet tftp \r\nFeatures: AsynchDNS GSS-Negotiate IDN IPv6 Largefile NTLM NTLM_WB SSL libz TLS-SRP\r\n```\r\n\r\n```\r\nnpm WARN package.json Dependency 'lodash' exists in both dependencies and devDependencies, using 'lodash@^3.2.0' from dependencies\r\nchild_process: customFds option is deprecated, use stdio instead.\r\n../curllib.cc:26:28: error: expected class-name before ‘{’ token\r\n class CurlLib : ObjectWrap {\r\n                            ^\r\n../curllib.cc:59:34: error: ‘Arguments’ does not name a type\r\n   static Handle<Value> New(const Arguments& args) {\r\n                                  ^\r\n../curllib.cc:59:45: error: ISO C++ forbids declaration of ‘args’ with no type [-fpermissive]\r\n   static Handle<Value> New(const Arguments& args) {\r\n                                             ^\r\n../curllib.cc:92:35: error: ‘Arguments’ does not name a type\r\n   static Handle<Value> Body(const Arguments& args) {\r\n                                   ^\r\n../curllib.cc:92:46: error: ISO C++ forbids declaration of ‘args’ with no type [-fpermissive]\r\n   static Handle<Value> Body(const Arguments& args) {\r\n                                              ^\r\n../curllib.cc:114:34: error: ‘Arguments’ does not name a type\r\n   static Handle<Value> Run(const Arguments& args) {\r\n                                  ^\r\n../curllib.cc:114:45: error: ISO C++ forbids declaration of ‘args’ with no type [-fpermissive]\r\n   static Handle<Value> Run(const Arguments& args) {\r\n                                             ^\r\n../curllib.cc: In static member function ‘static void CurlLib::Init(v8::Handle<v8::Object>)’:\r\n../curllib.cc:38:58: error: no matching function for call to ‘v8::FunctionTemplate::New(v8::Handle<v8::Value> (&)(const int&))’\r\n     Local<FunctionTemplate> t = FunctionTemplate::New(New);\r\n                                                          ^\r\n../curllib.cc:38:58: note: candidate is:\r\nIn file included from ../curllib.cc:8:0:\r\n/home/gajo/.node-gyp/0.12.0/deps/v8/include/v8.h:3455:34: note: static v8::Local<v8::FunctionTemplate> v8::FunctionTemplate::New(v8::Isolate*, v8::FunctionCallback, v8::Handle<v8::Value>, v8::Handle<v8::Signature>, int)\r\n   static Local<FunctionTemplate> New(\r\n                                  ^\r\n/home/gajo/.node-gyp/0.12.0/deps/v8/include/v8.h:3455:34: note:   no known conversion for argument 1 from ‘v8::Handle<v8::Value>(const int&)’ to ‘v8::Isolate*’\r\n../curllib.cc:40:47: error: no matching function for call to ‘v8::Persistent<v8::FunctionTemplate>::New(v8::Local<v8::FunctionTemplate>&)’\r\n     s_ct = Persistent<FunctionTemplate>::New(t);\r\n                                               ^\r\n../curllib.cc:40:47: note: candidate is:\r\nIn file included from ../curllib.cc:8:0:\r\n/home/gajo/.node-gyp/0.12.0/deps/v8/include/v8.h:5809:4: note: static T* v8::PersistentBase<T>::New(v8::Isolate*, T*) [with T = v8::FunctionTemplate]\r\n T* PersistentBase<T>::New(Isolate* isolate, T* that) {\r\n    ^\r\n/home/gajo/.node-gyp/0.12.0/deps/v8/include/v8.h:5809:4: note:   candidate expects 2 arguments, 1 provided\r\n../curllib.cc:41:9: error: base operand of ‘->’ has non-pointer type ‘v8::Persistent<v8::FunctionTemplate>’\r\n     s_ct->InstanceTemplate()->SetInternalFieldCount(1);\r\n         ^\r\n../curllib.cc:42:9: error: base operand of ‘->’ has non-pointer type ‘v8::Persistent<v8::FunctionTemplate>’\r\n     s_ct->SetClassName(String::NewSymbol(\"CurlLib\"));\r\n         ^\r\n../curllib.cc:42:24: error: ‘NewSymbol’ is not a member of ‘v8::String’\r\n     s_ct->SetClassName(String::NewSymbol(\"CurlLib\"));\r\n                        ^\r\n../curllib.cc:44:47: error: could not convert ‘CurlLib::s_ct’ from ‘v8::Persistent<v8::FunctionTemplate>’ to ‘v8::Handle<v8::FunctionTemplate>’\r\n     NODE_SET_PROTOTYPE_METHOD(s_ct, \"run\", Run);\r\n                                               ^\r\n../curllib.cc:45:49: error: could not convert ‘CurlLib::s_ct’ from ‘v8::Persistent<v8::FunctionTemplate>’ to ‘v8::Handle<v8::FunctionTemplate>’\r\n     NODE_SET_PROTOTYPE_METHOD(s_ct, \"body\", Body);\r\n                                                 ^\r\n../curllib.cc:47:17: error: ‘NewSymbol’ is not a member of ‘v8::String’\r\n     target->Set(String::NewSymbol(\"CurlLib\"),\r\n                 ^\r\n../curllib.cc:48:21: error: base operand of ‘->’ has non-pointer type ‘v8::Persistent<v8::FunctionTemplate>’\r\n                 s_ct->GetFunction());\r\n                     ^\r\n../curllib.cc:50:49: error: ‘NODE_PSYMBOL’ was not declared in this scope\r\n     sym_body_length = NODE_PSYMBOL(\"body_length\");\r\n                                                 ^\r\n../curllib.cc: In static member function ‘static v8::Handle<v8::Value> CurlLib::New(const int&)’:\r\n../curllib.cc:61:14: error: ‘class CurlLib’ has no member named ‘Wrap’\r\n     curllib->Wrap(args.This());\r\n              ^\r\n../curllib.cc:61:24: error: request for member ‘This’ in ‘args’, which is of non-class type ‘const int’\r\n     curllib->Wrap(args.This());\r\n                        ^\r\n../curllib.cc:62:17: error: request for member ‘This’ in ‘args’, which is of non-class type ‘const int’\r\n     return args.This();\r\n                 ^\r\n../curllib.cc: In static member function ‘static void CurlLib::copy_to_buffer(buff_t&, v8::Local<v8::String>&)’:\r\n../curllib.cc:88:12: error: ‘class v8::String’ has no member named ‘WriteAscii’\r\n       src->WriteAscii(&dest[0], 0, src->Length());\r\n            ^\r\n../curllib.cc: In static member function ‘static v8::Handle<v8::Value> CurlLib::Body(const int&)’:\r\n../curllib.cc:93:14: error: request for member ‘Length’ in ‘args’, which is of non-class type ‘const int’\r\n     if (args.Length() < 1 || !Buffer::HasInstance(args[0])) {\r\n              ^\r\n../curllib.cc:93:57: error: invalid types ‘const int[int]’ for array subscript\r\n     if (args.Length() < 1 || !Buffer::HasInstance(args[0])) {\r\n                                                         ^\r\n../curllib.cc:22:39: error: ‘New’ is not a member of ‘v8::String’\r\n   ThrowException(Exception::TypeError(String::New(\"Bad argument\")))\r\n                                       ^\r\n../curllib.cc:94:14: note: in expansion of macro ‘THROW_BAD_ARGS’\r\n       return THROW_BAD_ARGS;\r\n              ^\r\n../curllib.cc:22:67: error: ‘ThrowException’ was not declared in this scope\r\n   ThrowException(Exception::TypeError(String::New(\"Bad argument\")))\r\n                                                                   ^\r\n../curllib.cc:94:14: note: in expansion of macro ‘THROW_BAD_ARGS’\r\n       return THROW_BAD_ARGS;\r\n              ^\r\nIn file included from ../curllib.cc:8:0:\r\n/home/gajo/.node-gyp/0.12.0/deps/v8/include/v8.h:816:13: error: ‘v8::HandleScope::HandleScope()’ is protected\r\n   V8_INLINE HandleScope() {}\r\n             ^\r\n../curllib.cc:97:17: error: within this context\r\n     HandleScope scope;\r\n                 ^\r\n../curllib.cc:98:38: error: invalid types ‘const int[int]’ for array subscript\r\n     Local<Object> buffer_obj = args[0]->ToObject();\r\n                                      ^\r\n../curllib.cc:104:9: error: ‘New’ is not a member of ‘v8::String’\r\n         String::New(\"Insufficient Buffer Length\")));\r\n         ^\r\n../curllib.cc:104:51: error: ‘ThrowException’ was not declared in this scope\r\n         String::New(\"Insufficient Buffer Length\")));\r\n                                                   ^\r\n../curllib.cc:111:18: error: ‘class v8::HandleScope’ has no member named ‘Close’\r\n     return scope.Close(buffer_obj);\r\n                  ^\r\n../curllib.cc: In static member function ‘static v8::Handle<v8::Value> CurlLib::Run(const int&)’:\r\n../curllib.cc:115:14: error: request for member ‘Length’ in ‘args’, which is of non-class type ‘const int’\r\n     if (args.Length() < 1) {\r\n              ^\r\n../curllib.cc:22:39: error: ‘New’ is not a member of ‘v8::String’\r\n   ThrowException(Exception::TypeError(String::New(\"Bad argument\")))\r\n                                       ^\r\n../curllib.cc:116:14: note: in expansion of macro ‘THROW_BAD_ARGS’\r\n       return THROW_BAD_ARGS;\r\n              ^\r\n../curllib.cc:22:67: error: ‘ThrowException’ was not declared in this scope\r\n   ThrowException(Exception::TypeError(String::New(\"Bad argument\")))\r\n                                                                   ^\r\n../curllib.cc:116:14: note: in expansion of macro ‘THROW_BAD_ARGS’\r\n       return THROW_BAD_ARGS;\r\n              ^\r\n../curllib.cc:119:32: error: ‘New’ is not a member of ‘v8::String’\r\n     Local<String> key_method = String::New(\"method\");\r\n                                ^\r\n../curllib.cc:120:29: error: ‘New’ is not a member of ‘v8::String’\r\n     Local<String> key_url = String::New(\"url\");\r\n                             ^\r\n../curllib.cc:121:33: error: ‘New’ is not a member of ‘v8::String’\r\n     Local<String> key_headers = String::New(\"headers\");\r\n                                 ^\r\n../curllib.cc:122:30: error: ‘New’ is not a member of ‘v8::String’\r\n     Local<String> key_body = String::New(\"body\");\r\n                              ^\r\n../curllib.cc:123:44: error: ‘New’ is not a member of ‘v8::String’\r\n     Local<String> key_connect_timeout_ms = String::New(\"connect_timeout_ms\");\r\n                                            ^\r\n../curllib.cc:124:36: error: ‘New’ is not a member of ‘v8::String’\r\n     Local<String> key_timeout_ms = String::New(\"timeout_ms\");\r\n                                    ^\r\n../curllib.cc:125:44: error: ‘New’ is not a member of ‘v8::String’\r\n     Local<String> key_rejectUnauthorized = String::New(\"rejectUnauthorized\");\r\n                                            ^\r\n../curllib.cc:126:32: error: ‘New’ is not a member of ‘v8::String’\r\n     Local<String> key_caCert = String::New(\"ca\");\r\n                                ^\r\n../curllib.cc:127:36: error: ‘New’ is not a member of ‘v8::String’\r\n     Local<String> key_clientCert = String::New(\"cert\");\r\n                                    ^\r\n../curllib.cc:128:29: error: ‘New’ is not a member of ‘v8::String’\r\n     Local<String> key_pfx = String::New(\"pfx\");\r\n                             ^\r\n../curllib.cc:129:35: error: ‘New’ is not a member of ‘v8::String’\r\n     Local<String> key_clientKey = String::New(\"key\");\r\n                                   ^\r\n../curllib.cc:130:41: error: ‘New’ is not a member of ‘v8::String’\r\n     Local<String> key_clientKeyPhrase = String::New(\"passphrase\");\r\n                                         ^\r\n../curllib.cc:132:44: error: ‘New’ is not a member of ‘v8::String’\r\n     static const Local<String> PFXFORMAT = String::New(\"P12\");\r\n                                            ^\r\n../curllib.cc:134:49: error: invalid types ‘const int[int]’ for array subscript\r\n     Local<Array> opt = Local<Array>::Cast(args[0]);\r\n                                                 ^\r\n../curllib.cc:22:39: error: ‘New’ is not a member of ‘v8::String’\r\n   ThrowException(Exception::TypeError(String::New(\"Bad argument\")))\r\n                                       ^\r\n../curllib.cc:139:14: note: in expansion of macro ‘THROW_BAD_ARGS’\r\n       return THROW_BAD_ARGS;\r\n              ^\r\n../curllib.cc:22:67: error: ‘ThrowException’ was not declared in this scope\r\n   ThrowException(Exception::TypeError(String::New(\"Bad argument\")))\r\n                                                                   ^\r\n../curllib.cc:139:14: note: in expansion of macro ‘THROW_BAD_ARGS’\r\n       return THROW_BAD_ARGS;\r\n              ^\r\n../curllib.cc:22:39: error: ‘New’ is not a member of ‘v8::String’\r\n   ThrowException(Exception::TypeError(String::New(\"Bad argument\")))\r\n                                       ^\r\n../curllib.cc:144:14: note: in expansion of macro ‘THROW_BAD_ARGS’\r\n       return THROW_BAD_ARGS;\r\n              ^\r\n../curllib.cc:22:67: error: ‘ThrowException’ was not declared in this scope\r\n   ThrowException(Exception::TypeError(String::New(\"Bad argument\")))\r\n                                                                   ^\r\n../curllib.cc:144:14: note: in expansion of macro ‘THROW_BAD_ARGS’\r\n       return THROW_BAD_ARGS;\r\n              ^\r\n../curllib.cc:150:28: error: ‘New’ is not a member of ‘v8::String’\r\n     Local<String> body   = String::New((const char*)\"\", 0);\r\n                            ^\r\n../curllib.cc:151:30: error: ‘New’ is not a member of ‘v8::String’\r\n     Local<String> caCert   = String::New((const char*)\"\", 0);\r\n                              ^\r\n../curllib.cc:152:34: error: ‘New’ is not a member of ‘v8::String’\r\n     Local<String> clientCert   = String::New((const char*)\"\", 0);\r\n                                  ^\r\n../curllib.cc:153:40: error: ‘New’ is not a member of ‘v8::String’\r\n     Local<String> clientCertFormat   = String::New((const char*)\"\", 0);\r\n                                        ^\r\n../curllib.cc:154:33: error: ‘New’ is not a member of ‘v8::String’\r\n     Local<String> clientKey   = String::New((const char*)\"\", 0);\r\n                                 ^\r\n../curllib.cc:155:39: error: ‘New’ is not a member of ‘v8::String’\r\n     Local<String> clientKeyPhrase   = String::New((const char*)\"\", 0);\r\n                                       ^\r\nIn file included from ../curllib.cc:8:0:\r\n/home/gajo/.node-gyp/0.12.0/deps/v8/include/v8.h:816:13: error: ‘v8::HandleScope::HandleScope()’ is protected\r\n   V8_INLINE HandleScope() {}\r\n             ^\r\n../curllib.cc:226:17: error: within this context\r\n     HandleScope scope;\r\n                 ^\r\n../curllib.cc:309:40: error: no matching function for call to ‘v8::Object::New()’\r\n     Local<Object> result = Object::New();\r\n                                        ^\r\n../curllib.cc:309:40: note: candidate is:\r\nIn file included from ../curllib.cc:8:0:\r\n/home/gajo/.node-gyp/0.12.0/deps/v8/include/v8.h:2388:24: note: static v8::Local<v8::Object> v8::Object::New(v8::Isolate*)\r\n   static Local<Object> New(Isolate* isolate);\r\n                        ^\r\n/home/gajo/.node-gyp/0.12.0/deps/v8/include/v8.h:2388:24: note:   candidate expects 1 argument, 0 provided\r\n../curllib.cc:312:62: error: no matching function for call to ‘v8::Integer::New(std::basic_string<char>::size_type)’\r\n       result->Set(sym_body_length, Integer::New(buffer.size()));\r\n                                                              ^\r\n../curllib.cc:312:62: note: candidate is:\r\nIn file included from ../curllib.cc:8:0:\r\n/home/gajo/.node-gyp/0.12.0/deps/v8/include/v8.h:2012:25: note: static v8::Local<v8::Integer> v8::Integer::New(v8::Isolate*, int32_t)\r\n   static Local<Integer> New(Isolate* isolate, int32_t value);\r\n                         ^\r\n/home/gajo/.node-gyp/0.12.0/deps/v8/include/v8.h:2012:25: note:   candidate expects 2 arguments, 1 provided\r\n../curllib.cc:313:36: error: no matching function for call to ‘v8::Array::New()’\r\n       Local<Array> _h = Array::New();\r\n                                    ^\r\n../curllib.cc:313:36: note: candidate is:\r\nIn file included from ../curllib.cc:8:0:\r\n/home/gajo/.node-gyp/0.12.0/deps/v8/include/v8.h:2417:23: note: static v8::Local<v8::Array> v8::Array::New(v8::Isolate*, int)\r\n   static Local<Array> New(Isolate* isolate, int length = 0);\r\n                       ^\r\n/home/gajo/.node-gyp/0.12.0/deps/v8/include/v8.h:2417:23: note:   candidate expects 2 arguments, 0 provided\r\n../curllib.cc:315:20: error: ‘New’ is not a member of ‘v8::String’\r\n         _h->Set(i, String::New(headers[i].c_str()));\r\n                    ^\r\n../curllib.cc:317:34: error: no matching function for call to ‘v8::Object::Set(v8::Persistent<v8::String>&, v8::Local<v8::Array>&)’\r\n       result->Set(sym_headers, _h);\r\n                                  ^\r\n../curllib.cc:317:34: note: candidates are:\r\nIn file included from ../curllib.cc:8:0:\r\n/home/gajo/.node-gyp/0.12.0/deps/v8/include/v8.h:2112:8: note: bool v8::Object::Set(v8::Handle<v8::Value>, v8::Handle<v8::Value>)\r\n   bool Set(Handle<Value> key, Handle<Value> value);\r\n        ^\r\n/home/gajo/.node-gyp/0.12.0/deps/v8/include/v8.h:2112:8: note:   no known conversion for argument 1 from ‘v8::Persistent<v8::String>’ to ‘v8::Handle<v8::Value>’\r\n/home/gajo/.node-gyp/0.12.0/deps/v8/include/v8.h:2114:8: note: bool v8::Object::Set(uint32_t, v8::Handle<v8::Value>)\r\n   bool Set(uint32_t index, Handle<Value> value);\r\n        ^\r\n/home/gajo/.node-gyp/0.12.0/deps/v8/include/v8.h:2114:8: note:   no known conversion for argument 1 from ‘v8::Persistent<v8::String>’ to ‘uint32_t {aka unsigned int}’\r\n../curllib.cc:320:47: error: no matching function for call to ‘v8::Integer::New(int)’\r\n       result->Set(sym_timedout, Integer::New(1));\r\n                                               ^\r\n../curllib.cc:320:47: note: candidate is:\r\nIn file included from ../curllib.cc:8:0:\r\n/home/gajo/.node-gyp/0.12.0/deps/v8/include/v8.h:2012:25: note: static v8::Local<v8::Integer> v8::Integer::New(v8::Isolate*, int32_t)\r\n   static Local<Integer> New(Isolate* isolate, int32_t value);\r\n                         ^\r\n/home/gajo/.node-gyp/0.12.0/deps/v8/include/v8.h:2012:25: note:   candidate expects 2 arguments, 1 provided\r\n../curllib.cc:322:30: error: ‘New’ is not a member of ‘v8::String’\r\n       result->Set(sym_error, String::New(curl_easy_strerror(res)));\r\n                              ^\r\n../curllib.cc:326:18: error: ‘class v8::HandleScope’ has no member named ‘Close’\r\n     return scope.Close(result);\r\n                  ^\r\nmake: *** [Release/obj.target/curllib/curllib.o] Error 1\r\ngyp ERR! build error \r\ngyp ERR! stack Error: `make` failed with exit code: 2\r\ngyp ERR! stack     at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:267:23)\r\ngyp ERR! stack     at ChildProcess.emit (events.js:110:17)\r\ngyp ERR! stack     at Process.ChildProcess._handle.onexit (child_process.js:1067:12)\r\ngyp ERR! System Linux 3.13.0-52-generic\r\ngyp ERR! command \"node\" \"/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js\" \"rebuild\"\r\ngyp ERR! cwd /home/gajo/local/node_src/beaker/node_modules/http-sync\r\ngyp ERR! node -v v0.12.0\r\ngyp ERR! node-gyp -v v1.0.2\r\ngyp ERR! not ok \r\nnpm ERR! Linux 3.13.0-52-generic\r\nnpm ERR! argv \"/usr/local/bin/node\" \"/usr/local/bin/npm\" \"install\"\r\nnpm ERR! node v0.12.0\r\nnpm ERR! npm  v2.5.1\r\nnpm ERR! code ELIFECYCLE\r\n\r\nnpm ERR! http-sync@0.1.0 install: `node-gyp rebuild`\r\nnpm ERR! Exit status 1\r\nnpm ERR! \r\nnpm ERR! Failed at the http-sync@0.1.0 install script 'node-gyp rebuild'.\r\nnpm ERR! This is most likely a problem with the http-sync package,\r\nnpm ERR! not with npm itself.\r\nnpm ERR! Tell the author that this fails on your system:\r\nnpm ERR!     node-gyp rebuild\r\nnpm ERR! You can get their info via:\r\nnpm ERR!     npm owner ls http-sync\r\nnpm ERR! There is likely additional logging output above.\r\n\r\nnpm ERR! Please include the following file with any support request:\r\nnpm ERR!     /home/gajo/local/node_src/beaker/npm-debug.log\r\n```"},"comment":{"url":"https://api.github.com/repos/cyaninc/beaker/issues/comments/108186499","html_url":"https://github.com/cyaninc/beaker/issues/60#issuecomment-108186499","issue_url":"https://api.github.com/repos/cyaninc/beaker/issues/60","id":108186499,"user":{"login":"garrickajo","id":2825366,"avatar_url":"https://avatars.githubusercontent.com/u/2825366?v=3","gravatar_id":"","url":"https://api.github.com/users/garrickajo","html_url":"https://github.com/garrickajo","followers_url":"https://api.github.com/users/garrickajo/followers","following_url":"https://api.github.com/users/garrickajo/following{/other_user}","gists_url":"https://api.github.com/users/garrickajo/gists{/gist_id}","starred_url":"https://api.github.com/users/garrickajo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/garrickajo/subscriptions","organizations_url":"https://api.github.com/users/garrickajo/orgs","repos_url":"https://api.github.com/users/garrickajo/repos","events_url":"https://api.github.com/users/garrickajo/events{/privacy}","received_events_url":"https://api.github.com/users/garrickajo/received_events","type":"User","site_admin":false},"created_at":"2015-06-03T04:22:05Z","updated_at":"2015-06-03T04:22:05Z","body":"Yes, sorry I wasn't specific. Then I looked to update it, but I think it was updated already.\r\n\r\n```\r\n$ dpkg -l | grep libcurl\r\n\r\nii  libcurl3:amd64                                        7.35.0-1ubuntu2.5                                   amd64        easy-to-use client-side URL transfer library (OpenSSL flavour)\r\nii  libcurl3-gnutls:amd64                                 7.35.0-1ubuntu2.5                                   amd64        easy-to-use client-side URL transfer library (GnuTLS flavour)\r\nii  libcurl4-openssl-dev:amd64                            7.35.0-1ubuntu2.5                                   amd64        development files and documentation for libcurl (OpenSSL flavour)\r\nii  python-pycurl                                         7.19.3-0ubuntu3                                     amd64        Python bindings to libcurl\r\nii  python3-pycurl                                        7.19.3-0ubuntu3                                     amd64        Python 3 bindings to libcurl\r\n```\r\n\r\n**library specifics**\r\n\r\n```\r\n$ apt-cache show libcurl4-openssl-dev\r\n\r\nPackage: libcurl4-openssl-dev\r\nPriority: optional\r\nSection: libdevel\r\nInstalled-Size: 1199\r\nMaintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>\r\nOriginal-Maintainer: Alessandro Ghedini <ghedo@debian.org>\r\nArchitecture: amd64\r\nSource: curl\r\nVersion: 7.35.0-1ubuntu2.5\r\nProvides: libcurl-dev, libcurl-ssl-dev, libcurl3-dev, libcurl3-openssl-dev, libcurl4-dev\r\nDepends: libcurl3 (= 7.35.0-1ubuntu2.5), libc6-dev | libc-dev, libidn11-dev, libkrb5-dev, libldap2-dev, librtmp-dev, libssl-dev, zlib1g-dev\r\nSuggests: libcurl4-doc, libcurl3-dbg\r\nConflicts: libcurl4-gnutls-dev, libcurl4-nss-dev\r\nFilename: pool/main/c/curl/libcurl4-openssl-dev_7.35.0-1ubuntu2.5_amd64.deb\r\nSize: 244762\r\nMD5sum: b1642299a91afca64423352a7d9c5836\r\nSHA1: 281118900779375d060000ba05d50f83c7a2b6fb\r\nSHA256: f63b357cf0557ad48b225c4ea6bcafa7cb83a9d61a924ab5f4c0bb0f6394c7b3\r\nDescription-en: development files and documentation for libcurl (OpenSSL flavour)\r\n libcurl is an easy-to-use client-side URL transfer library, supporting DICT,\r\n FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S,\r\n RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, TELNET and TFTP.\r\n .\r\n libcurl supports SSL certificates, HTTP POST, HTTP PUT, FTP uploading, HTTP\r\n form based upload, proxies, cookies, user+password authentication (Basic,\r\n Digest, NTLM, Negotiate, Kerberos), file transfer resume, http proxy tunneling\r\n and more!\r\n .\r\n libcurl is free, thread-safe, IPv6 compatible, feature rich, well supported,\r\n fast, thoroughly documented and is already used by many known, big and\r\n successful companies and numerous applications.\r\n .\r\n This package provides the development files (ie. includes, static library,\r\n manual pages) that allow to build software which uses libcurl.\r\n .\r\n SSL support is provided by OpenSSL.\r\nDescription-md5: 9ef3e0d3a9a6f50f79b0deaff858c410\r\nMulti-Arch: same\r\nHomepage: http://curl.haxx.se\r\nBugs: https://bugs.launchpad.net/ubuntu/+filebug\r\nOrigin: Ubuntu\r\nSupported: 9m\r\n\r\nPackage: libcurl4-openssl-dev\r\nPriority: optional\r\nSection: libdevel\r\nInstalled-Size: 1197\r\nMaintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>\r\nOriginal-Maintainer: Alessandro Ghedini <ghedo@debian.org>\r\nArchitecture: amd64\r\nSource: curl\r\nVersion: 7.35.0-1ubuntu2\r\nProvides: libcurl-dev, libcurl-ssl-dev, libcurl3-dev, libcurl3-openssl-dev, libcurl4-dev\r\nDepends: libcurl3 (= 7.35.0-1ubuntu2), libc6-dev | libc-dev, libidn11-dev, libkrb5-dev, libldap2-dev, librtmp-dev, libssl-dev, zlib1g-dev\r\nSuggests: libcurl4-doc, libcurl3-dbg\r\nConflicts: libcurl4-gnutls-dev, libcurl4-nss-dev\r\nFilename: pool/main/c/curl/libcurl4-openssl-dev_7.35.0-1ubuntu2_amd64.deb\r\nSize: 243100\r\nMD5sum: 03e9530effce3a09e0595345060fec0f\r\nSHA1: a6f37a0764449e6c7ea29cc6f7baf4a948d71c60\r\nSHA256: f5df5de5464f2cb327a4c4655185357b16afbb7b01d35f67070f30f50a572ac1\r\nDescription-en: development files and documentation for libcurl (OpenSSL flavour)\r\n libcurl is an easy-to-use client-side URL transfer library, supporting DICT,\r\n FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S,\r\n RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, TELNET and TFTP.\r\n .\r\n libcurl supports SSL certificates, HTTP POST, HTTP PUT, FTP uploading, HTTP\r\n form based upload, proxies, cookies, user+password authentication (Basic,\r\n Digest, NTLM, Negotiate, Kerberos), file transfer resume, http proxy tunneling\r\n and more!\r\n .\r\n libcurl is free, thread-safe, IPv6 compatible, feature rich, well supported,\r\n fast, thoroughly documented and is already used by many known, big and\r\n successful companies and numerous applications.\r\n .\r\n This package provides the development files (ie. includes, static library,\r\n manual pages) that allow to build software which uses libcurl.\r\n .\r\n SSL support is provided by OpenSSL.\r\nDescription-md5: 9ef3e0d3a9a6f50f79b0deaff858c410\r\nMulti-Arch: same\r\nHomepage: http://curl.haxx.se\r\nBugs: https://bugs.launchpad.net/ubuntu/+filebug\r\nOrigin: Ubuntu\r\nSupported: 9m\r\n```"}}