GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - leancloud/cpp-sdk: [NO MAINTAINED] LeanCloud C++ SDK

BranchesTags
Open more actions menu

Latest commit

 

History

21 Commits
21 Commits

Folders and files

NameName
Last commit message
Last commit date
include
include
 
 
lib
lib
 
 
scripts
scripts
 
 
src
src
 
 
tests
tests
 
 
.gitignore
.gitignore
 
 
.gitmodules
.gitmodules
 
 
.pullapprove.yml
.pullapprove.yml
 
 
CHANGELOG.md
CHANGELOG.md
 
 
CMakeLists.txt
CMakeLists.txt
 
 
Doxyfile
Doxyfile
 
 
README.md
README.md
 
 
ToolchainARM.cmake
ToolchainARM.cmake
 
 

Repository files navigation

LeanCloud C++ SDK

How to set up a playground on Mac OS X

The instructions below have been tested only on Mavericks.

Prerequisites

  • homebrew, a package management tool for Mac OS X

      ruby <(curl -fsSkL raw.github.com/mxcl/homebrew/go)
    
  • CMake, the cross-platform, open-source build system

      brew install cmake
    
  • Doxygen, the de facto standard tool for generating documentation from annotated C++ sources

      brew install doxygen
    
  • 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.

      brew install boost
    
  • asio, cross-platform C++ Library for asynchronous programming

      brew install asio
    
  • cpp-netlib, C++ libraries for high level network programming

      brew install cpp-netlib
    
  • jsoncpp, library for interacting with JSON

      brew install jsoncpp
    

Build

We use cmake to build our C++ SDK

  • build AVOSCloud C++ SDK

      $ cd cpp-sdk
      $ mkdir cpp-sdk-build
      $ cd cpp-sdk-build
      $ cmake .. -DCMAKE_BUILD_TYPE=Debug -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++
      $ make -j4
    

If you want to build this project for ARM, do as follows:

  • Get git submodules

      $ git submodule init
      $ git submodule update
    
  • build and install cpp-netlib for ARM

      $ cd lib/cpp-netlib
      $ mkdir cpp-netlib-build
      $ cd cpp-netlib-build
      $ cmake .. -DCMAKE_BUILD_TYPE=Debug -DCMAKE_TOOLCHAIN_FILE=../ToolchainARM.cmake
      $ make -j4 && make install		
    
  • build and install jsoncpp for ARM

      $ cd lib/jsoncpp
      $ mkdir jsoncpp-build
      $ cd jsoncpp-build
      $ cmake .. -DCMAKE_BUILD_TYPE=Debug -DMAKE_TOOLCHAIN_FILE=../ToolchainARM.cmake
      $ make -j4 && make install
    
  • build AVOSCloud C++ SDK for ARM

      $ cd lib/cpp-sdk
      $ mkdir cpp-sdk-build
      $ cd cpp-sdk-build
      $ cmake .. -DCMAKE_BUILD_TYPE=Debug -DMAKE_TOOLCHAIN_FILE=../ToolchainARM.cmake
      $ make -j4
    

More about CMake Cross Compiling is here.

Docs

We can generate cpp api docs using doxygen.

	$ cd cpp-sdk
	$ doxygen Doxyfile

Then, a docs directory will be generated.

Code style

Usually, we try to follow the google-cpp-code-style. There is a tool named as cpplint.py that reads source files and identifies many style errors. We can check the code sytle of our project by the following command:

	scripts/check-cpp-code-style.sh

High-level file hierarchy

  • include: header files of AVOSCloud

  • src: source code of AVOSCloud

  • tests: unit test cases

  • scripts: some useful scripts

  • lib: third-party libraries

  • Doxyfile: used to generate C++ docs

  • README.md: brief introduction to this project

  • CMakeLists.txt: cmake script which will be used to generate Makefile

Contact

If you have any question about the cpp-sdk for AVOSCloud, please contact

Chaozhong Yang <[email protected]>

License

Distributed under GNU Lesser General Public License .

About

[NO MAINTAINED] LeanCloud C++ SDK

leancloud.cn/

Resources

Readme
Activity
Custom properties

Stars

16 stars

Watchers

37 watching

Forks

12 forks
Report repository

Releases

Packages

Contributors

Languages

You are visitor 01402520 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.