Coder Social home page Coder Social logo

asdlei99 / cppuniverse Goto Github PK

View Code? Open in Web Editor NEW

This project forked from piasy/cppuniverse

0.0 1.0 0.0 184 KB

A demo project that showcase how to use C++ to conquer the universe, with the help of Djinni and WebAssembly :)

License: MIT License

CMake 1.13% Java 7.81% C++ 63.75% CoffeeScript 3.63% Objective-C 20.86% Objective-C++ 1.51% Python 0.82% Shell 0.48%

cppuniverse's Introduction

CppUniverse

A demo project that showcase how to use C++ to conquer the universe, with the help of Djinni and WebAssembly :)

This demo implement exactly the same feature as JavaUniverse, but write the main logic in C++.

Dependencies

Due to GitHub file size limit, the libs directory is ignored, you can download it here, and extract it as libs.

CPP Project

  • ./run_djinni.sh
  • cd cpp_project
  • xcake make
  • open CppUniverse.xcodeproj

Android Project

  • ./run_djinni.sh
  • Just open the android_project folder in Android Studio.

iOS Project

  • ./run_djinni.sh
  • cd ios_project
  • xcake make
  • open CppUniverse.xcodeproj

Web Project

WIP...

Caveat

  • Add -DCMAKE_INSTALL_PREFIX=`pwd`/out to cmake command to specify install dir;
  • 'cpprest/http_client.h' file not found with <angled> include; use "quotes" instead problem solution;
  • Arithmetic on a pointer to an incomplete type 'cpp_universe::Window': add #include "window.hpp" to get the complete type info of cpp_universe::Window;
  • Extend djinni record to add utility method which is only used by one language;
  • Djinni record is immutable;
  • Building for Android:
    • openssl need use r15c;
    • boost 1.65.1 need r16;
    • can't use nfs shared folder;
    • find boost error;
    • 'BOOST_STDLIB' macro redefined;
    • no matching member function for call to 'expires_from_now';
  • Building for iOS:
    • find_package(Threads REQUIRED) fail, solution;

All changes on C++ REST SDK can be found there.

cppuniverse's People

Contributors

piasy avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.