{"id":19614912,"url":"https://github.com/leancloud/cpp-sdk","last_synced_at":"2025-04-28T02:30:51.495Z","repository":{"id":21150332,"uuid":"24452674","full_name":"leancloud/cpp-sdk","owner":"leancloud","description":"[NO MAINTAINED] LeanCloud C++ SDK","archived":false,"fork":false,"pushed_at":"2016-09-27T10:22:44.000Z","size":166,"stargazers_count":16,"open_issues_count":2,"forks_count":12,"subscribers_count":39,"default_branch":"master","last_synced_at":"2025-04-05T05:11:20.098Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://leancloud.cn/","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/leancloud.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-09-25T09:51:10.000Z","updated_at":"2022-04-04T09:06:46.000Z","dependencies_parsed_at":"2022-07-19T22:48:30.565Z","dependency_job_id":null,"html_url":"https://github.com/leancloud/cpp-sdk","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leancloud%2Fcpp-sdk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leancloud%2Fcpp-sdk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leancloud%2Fcpp-sdk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leancloud%2Fcpp-sdk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/leancloud","download_url":"https://codeload.github.com/leancloud/cpp-sdk/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251237849,"owners_count":21557351,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-11T10:54:29.407Z","updated_at":"2025-04-28T02:30:51.137Z","avatar_url":"https://github.com/leancloud.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# LeanCloud C++ SDK\n\n## How to set up a playground on Mac OS X\n\nThe instructions below have been tested only on Mavericks.\n\n## Prerequisites\n\n- homebrew, a package management tool for Mac OS X\n\n        ruby \u003c(curl -fsSkL raw.github.com/mxcl/homebrew/go)\n\n- CMake, the cross-platform, open-source build system\n\n\t    brew install cmake\n\n- Doxygen, the de facto standard tool for generating documentation from annotated C++ sources\n\n\t    brew install doxygen\n\n- Boost, a set of libraries for the C++ programming language that provide support for tasks and structures such as linear algebra, pseudorandom number generation, multithreading, image processing, regular expressions, and unit testing.\n\n\t    brew install boost\n\n- asio, cross-platform C++ Library for asynchronous programming\n\n        brew install asio\n\n- cpp-netlib, C++ libraries for high level network programming\n\n        brew install cpp-netlib\n\n- jsoncpp, library for interacting with JSON\n\n        brew install jsoncpp\n\n## Build\n\nWe use `cmake` to build our C++ SDK\n\n- build AVOSCloud C++ SDK\n\n\t\t$ cd cpp-sdk\n\t\t$ mkdir cpp-sdk-build\n        $ cd cpp-sdk-build\n        $ cmake .. -DCMAKE_BUILD_TYPE=Debug -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++\n        $ make -j4\n\nIf you want to build this project for ARM, do as follows:\n\n- Get git submodules\n\t\t\n\t\t$ git submodule init\n\t\t$ git submodule update\n\n- build and install cpp-netlib for ARM\n\n\t\t$ cd lib/cpp-netlib\n\t\t$ mkdir cpp-netlib-build\n\t\t$ cd cpp-netlib-build\n\t\t$ cmake .. -DCMAKE_BUILD_TYPE=Debug -DCMAKE_TOOLCHAIN_FILE=../ToolchainARM.cmake\n\t\t$ make -j4 \u0026\u0026 make install\t\t\n \n- build and install jsoncpp for ARM\n\n\t\t$ cd lib/jsoncpp\n\t\t$ mkdir jsoncpp-build\n\t\t$ cd jsoncpp-build\n\t\t$ cmake .. -DCMAKE_BUILD_TYPE=Debug -DMAKE_TOOLCHAIN_FILE=../ToolchainARM.cmake\n\t\t$ make -j4 \u0026\u0026 make install\n\n- build AVOSCloud C++ SDK for ARM\n\n\t\t$ cd lib/cpp-sdk\n\t\t$ mkdir cpp-sdk-build\n\t\t$ cd cpp-sdk-build\n\t\t$ cmake .. -DCMAKE_BUILD_TYPE=Debug -DMAKE_TOOLCHAIN_FILE=../ToolchainARM.cmake\n\t\t$ make -j4\n\t\t\nMore about `CMake Cross Compiling` is [here](http://www.cmake.org/Wiki/CMake_Cross_Compiling).\n        \n### Docs\n\nWe can generate cpp api docs using doxygen.\n\n\t\t$ cd cpp-sdk\n\t\t$ doxygen Doxyfile\n\nThen, a `docs` directory will be generated.\n\n### Code style\n\nUsually, we try to follow the google-cpp-code-style. There is a tool named as [cpplint.py](http://google-styleguide.googlecode.com/svn/trunk/cpplint/cpplint.py) that reads source files and identifies many style errors. We can check the code sytle of our project by the following command:\n\n\t\tscripts/check-cpp-code-style.sh\n\n\n## High-level file hierarchy\n\n- `include`: header files of AVOSCloud\n\n- `src`: source code of AVOSCloud\n\n- `tests`: unit test cases\n\n- `scripts`: some useful scripts\n\n- `lib`: third-party libraries\n\n- `Doxyfile`: used to generate C++ docs\n\n- `README.md`: brief introduction to this project\n\n- `CMakeLists.txt`: cmake script which will be used to generate Makefile\n\n\n## Contact\n\nIf you have any question about the cpp-sdk for AVOSCloud, please contact\n\n    Chaozhong Yang \u003ccyang@avoscloud.com\u003e\n    \n## License\n\nDistributed under `GNU Lesser General Public License` .\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fleancloud%2Fcpp-sdk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fleancloud%2Fcpp-sdk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fleancloud%2Fcpp-sdk/lists"}