—> git clone https://github.com/cjwl/cocotron.git
- Download „Homebrew“
—> ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
- Download „GCC-4.9“
—> brew -v install homebrew/versions/gcc49
*** take a coffee ***
- Setup GCC-4.9 environment
—> cd /usr/bin && sudo mv gcc gcc-backup
—> sudo ln -s /usr/local/Cellar/gcc49/4.9.3/bin/gcc-4.9 gcc
- Create the following folder(s) (as root)
—> /Library/Application Support/Developer/Shared/Xcode/Specifications
- Switch to cocotron
—> cd cocotron/git/folder
—> cd InstallCDT
- Replace „gnutar“ through „bsdtar“ in the following files:
—> install.sh
—> Resources/scripts/unarchiveFiles.sh
- Jump to „configureAndInstall_binutils()“ inside install.sh and replace „-Wno-error=deprecated-declarations“ through
—> -Wno-error
- Install CDT
—> sudo chmod u+x install.sh
—> sudo ./install.sh
*** take a coffee ***
- Add privileges:
—> sudo chmod -R a+rwx /Developer/Cocotron/
- Cleanup
—> cd /usr/bin
—> sudo mv gcc-backup gcc
—> brew uninstall homebrew/versions/gcc49 (optional)
Build Cocotron Frameworks (Foundation)
Windows
- Download updated pbcompspec
—> Cocotron-1.0-Windows-i386-gcc-4.3.1.pbcompspec
- Copy it to the Specifications folder
—> sudo cp -v Downloads/Cocotron-1.0-Windows-i386-gcc-4.3.1.pbcompspec /Library/Application\ Support/Developer/Shared/Xcode/Specifications
- Fix ExecPath
—> sudo vim /Library/Application\ Support/Developer/Shared/Xcode/Specifications/Cocotron-1.0-Windows-i386-gcc-4.3.1.pbcompspec
—> replace "i386-mingw32msvc-gcc" with "i386-pc-mingw32msvc-gcc"
Now you should be able to build the windows scheme from Foundation.xcodeproj.
Darwin
- Fix pthread build error
—> remove the spaces from < pthread.h > statement
- Fix NSAutoreleasePool build error
—> Add the following private category to NSAutoreleasePools implementation file
@interface NSAutoreleasePool ()
id objc_autorelease(id object);
void *objc_autoreleasePoolPush();
void objc_autoreleasePoolPop(void *poolX);
void objc_autoreleasePoolAdd(struct objc_autoreleasepool *pool, id object);
@end
- Fix ObjCException build error
—> Remove its import statement
- Fix _NSGetExecutablePath build error
—> Add #include <mach-o/dyld.h> between #if defined(__APPLE__) and the following #endif
#if defined(__APPLE__)
#import "OBJCRegisterModule_Darwin.h"
#include <mach-o/dyld.h>
#endif
Happy Coding ;)
Hey Rolf,Welcome back! Glad you are up and running again.
The clarify, the 'master' branch is new development, it contains the previous main branch from Google Code plus all significant changes outstanding on the former Google Code clones from everyone. The expectation is that there are regressions, I merged all the changes but have not done much testing.
The 'v1.0" branch was the stable, but not containing many new patches, main branch from the Google Code repo.
Going forward the plan is to get 'master' in good shape and then create a stable 1.1 release, and then repeat that going forward for progressive improvements. Feel free to setup a fork on github and issue pull requests or file issues.
In file included from /Users/rolf/Desktop/NB/Cocotron-Debug/cocotron-master/O2Context_AntiGrain/agg_font_win32_tt.mm:17:
/Users/rolf/Desktop/NB/Cocotron-Debug/cocotron-master/O2Context_AntiGrain/agg_font_win32_tt.h:216: error: 'm_curves16' was not declared in this scope
/Users/rolf/Desktop/NB/Cocotron-Debug/cocotron-master/O2Context_AntiGrain/agg_font_win32_tt.h:216: error: template argument 2 is invalid
/Users/rolf/Desktop/NB/Cocotron-Debug/cocotron-master/O2Context_AntiGrain/agg_font_win32_tt.h:216: error: template argument 1 is invalid
/Users/rolf/Desktop/NB/Cocotron-Debug/cocotron-master/O2Context_AntiGrain/agg_font_win32_tt.h:217: error: 'm_curves32' was not declared in this scope
/Users/rolf/Desktop/NB/Cocotron-Debug/cocotron-master/O2Context_AntiGrain/agg_font_win32_tt.h:217: error: template argument 2 is invalid
/Users/rolf/Desktop/NB/Cocotron-Debug/cocotron-master/O2Context_AntiGrain/agg_font_win32_tt.h:217: error: template argument 1 is invalid
/Users/rolf/Desktop/NB/Cocotron-Debug/cocotron-master/O2Context_AntiGrain/agg_font_win32_tt.mm: In constructor 'agg::font_engine_win32_tt_base::font_engine_win32_tt_base(bool, HDC__*, unsigned int)':
/Users/rolf/Desktop/NB/Cocotron-Debug/cocotron-master/O2Context_AntiGrain/agg_font_win32_tt.mm:386: error: class 'agg::font_engine_win32_tt_base' does not have any field named 'm_curves16'
/Users/rolf/Desktop/NB/Cocotron-Debug/cocotron-master/O2Context_AntiGrain/agg_font_win32_tt.mm:387: error: class 'agg::font_engine_win32_tt_base' does not have any field named 'm_curves32'
/Users/rolf/Desktop/NB/Cocotron-Debug/cocotron-master/O2Context_AntiGrain/agg_font_win32_tt.mm:393: error: 'm_curves16' was not declared in this scope
/Users/rolf/Desktop/NB/Cocotron-Debug/cocotron-master/O2Context_AntiGrain/agg_font_win32_tt.mm:394: error: 'm_curves32' was not declared in this scope
/Users/rolf/Desktop/NB/Cocotron-Debug/cocotron-master/O2Context_AntiGrain/agg_font_win32_tt.mm: In member function 'bool agg::font_engine_win32_tt_base::prepare_glyph(unsigned int)':
/Users/rolf/Desktop/NB/Cocotron-Debug/cocotron-master/O2Context_AntiGrain/agg_font_win32_tt.mm:558: warning: enumeration value 'glyph_ren_native_mono' not handled in switch
/Users/rolf/Desktop/NB/Cocotron-Debug/cocotron-master/O2Context_AntiGrain/agg_font_win32_tt.mm:692: error: 'm_curves32' was not declared in this scope
/Users/rolf/Desktop/NB/Cocotron-Debug/cocotron-master/O2Context_AntiGrain/agg_font_win32_tt.mm:700: error: 'm_curves16' was not declared in this scope
/Users/rolf/Desktop/NB/Cocotron-Debug/cocotron-master/O2Context_AntiGrain/agg_font_win32_tt.mm:722: error: 'm_curves32' was not declared in this scope
/Users/rolf/Desktop/NB/Cocotron-Debug/cocotron-master/O2Context_AntiGrain/agg_font_win32_tt.mm:730: error: 'm_curves16' was not declared in this scope
/Users/rolf/Desktop/NB/Cocotron-Debug/cocotron-master/O2Context_AntiGrain/agg_font_win32_tt.mm: In member function 'void agg::font_engine_win32_tt_base::write_glyph_to(agg::int8u*) const':
/Users/rolf/Desktop/NB/Cocotron-Debug/cocotron-master/O2Context_AntiGrain/agg_font_win32_tt.mm:749: warning: enumeration value 'glyph_data_invalid' not handled in switch
Hey Rolf,... Feel free to setup a fork on github and issue pull requests or file issues.