Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/danoli3/ofxiOSBoost
iOS Boost Library 1.60.0 (arm64, armv7, i386, x86_64) Pre-compiled and Build Script (libc++ and libstdc++) - Boost iOS
https://github.com/danoli3/ofxiOSBoost
Last synced: 2 months ago
JSON representation
iOS Boost Library 1.60.0 (arm64, armv7, i386, x86_64) Pre-compiled and Build Script (libc++ and libstdc++) - Boost iOS
- Host: GitHub
- URL: https://github.com/danoli3/ofxiOSBoost
- Owner: danoli3
- License: bsl-1.0
- Created: 2012-10-23T04:28:11.000Z (about 12 years ago)
- Default Branch: master
- Last Pushed: 2019-03-27T14:32:14.000Z (almost 6 years ago)
- Last Synced: 2024-03-14T20:52:29.654Z (10 months ago)
- Language: C++
- Homepage:
- Size: 47.6 MB
- Stars: 274
- Watchers: 30
- Forks: 96
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# ofxiOSBoost for Boost 1.60.0 [![image](https://travis-ci.org/danoli3/ofxiOSBoost.svg?branch=master)](https://travis-ci.org/danoli3/ofxiOSBoost?branch=master)
--------------------### Boost C++ Libraries 1.60.0 Pre-compiled for iOS
![image](https://github.com/danoli3/ofxiOSBoost/blob/master/ofxaddons_thumbnail.png)- Addon with Boost 1.60.0 for iOS / Xcode
- Precompiled library and Command to build yourself
- Master is currently a Fat Lib of All Standard Architectures
- Check Branches for others or to be specific
- Designed for use as an open frameworks addon, however should definitely work for other iOS projects
- Built with clang++ and using libc++ and std=c++11
- License: See Boost License [LICENSE.MD](https://github.com/danoli3/ofxiOSBoost/blob/master/LICENSE.md)============
### Where to checkout?
- For openframeworks: Checkout in the addons folder like so: addons/ofxiOSBoost
- For others: anywhere you please============
### How To Link to an Xcode Project?
In Xcode **Build Settings** for your project:
- Add to **Library Search Paths** ( ```LIBRARY_SEARCH_PATHS``` ) ```$(SRCROOT)/../../../addons/ofxiOSBoost/libs/boost/lib/ios ```
- Add to **Header Search Paths** ( ```HEADER_SEARCH_PATHS``` )
```$(SRCROOT)/../../../addons/ofxiOSBoost/libs/boost/include ```In Xcode for a **Build Target** select the **Target under Build Phases**
- Add to **'Link Binary With Libraries'** the ```libboost.a``` found in the ```ofxiOSBoost/libs/boost/lib/ios``` directory.
If not openFrameworks just add the ``` libs/boost/include ``` to Header Search Paths and the ``` libs/boost/ios ``` to Library Search Paths
============
### Architectures in Pre-Build Library (Fat Lib)
See the other branches on this repository (All libc++ std=c11)- ```arm64``` : (iOS 7, 8, 9 64bit only) [iPhone 5S, iPhone 6/6S, iPhone 6/6S Plus, iPad Air /2, iPad Mini Retina 1/2/3/4, iPad Pro]
- ```armv7``` : (iOS 5, 6, 7, 8, 9) [All devices]
- ```i386``` : (iOS Simulator iPad 2, 3, 4, iPhone 4S, 5, 5C)
- ```x86_64```: (iOS Simulator iPad Air, iPhone 5S, iPhone 6/6S, iPhone 6/6S Plus)Check Apple's Hardware sheet if you need to verify: [Apple's Device compatibilty Matrix](https://developer.apple.com/library/ios/documentation/DeviceInformation/Reference/iOSDeviceCompatibility/DeviceCompatibilityMatrix/DeviceCompatibilityMatrix.html)
** Armv7s has been removed due to Apple phasing our the requirement from the STANDARD_ARCHITECTURES.
============
### For tvOS - Checkout the ofxtvOSBoost repo:
- https://github.com/danoli3/ofxtvOSBoost============
### How to Build?
1. You don't need to. This has the pre-compiled versions of BOOST for you to use
2. If you would prefer to build it yourself checkout the script included in the ``` scripts ``` directory.=============
### How to use Build Script
- Download files (suggested you download the files to addons/ofxiOSBoost for openFrameworks)
- Double click and run ```scripts/build-libc++``` (this will download the 1.60.0 version of boost and begin compiling the library).
- Once completed in the terminal continue with the next steps.
- Add the ofxiOSBoost to your project (src and libs for your chosen architecture)`#### Build with Bitcode Embedded:
- Build with embedded bitcode by running the ```scripts/build-libc++withBitcode```#### Alternative Build Script:
- Build using libstdc++ by running the ```scripts/build-libstdc++```#### Clean script
- Run the clean script from ```scripts/cleanAll``` to remove pre-compiled code and the final built library============
#### Documentation on Boost 1.60.0
See: http://www.boost.org/users/history/version_1_60_0.html
### Version 1.60.0 (Date): December 17th, 2015 15:52 GMT
============
### Troubleshooting:
### Undefined symbols link error (For libc++ release)
If you use libraries like `serialization` you might see link errors in Xcode 6 especially when the framework was built using `--with-c++11` flag.
```
Undefined symbols for architecture i386:
"std::__1::__vector_base_common::__throw_length_error() const", referenced from:
void std::__1::vector >::__push_back_slow_path(boost::archive::detail::basic_iarchive_impl::cobject_id&&) in boost(libboost_serialization_basic_iarchive.o)
```You have to change your project or target build settings.
Under *Apple LLVM 6.0 - Language - C++* make the following changes
```C++ Language Dialect``` to ```C++11 [-std=c++11]```
```C++ Standard Library``` to ```libc++ (LLVM C++ standard library with C++11 support)```### Parse errors when including `boost/type_traits.hpp`
If you happen to include `` header file, you may see compile errors like thisUnexpected member name of ';' after declaration specifiers
To fix this problem, include the following line in your porject `***-Prefix.pch` file.
#define __ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES 0