forked from Eigenlabs/EigenD
-
Notifications
You must be signed in to change notification settings - Fork 5
/
README
147 lines (100 loc) · 4.19 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
This is EigenD.
The open source release includes all of EigenD except Stage.
Contributing
------------
If you would like to contribute to EigenD, we will gladly accept
patches against this git repository. You must sign the Eigenlabs
Contributor Agreement before we can accept anything from you.
Please go to the Developer Wiki for the Contributors Agreement.
http://www.eigenlabs.com/wiki/Developers/
Issues
------
If you have any issues either building or running EigenD,
please report these on the eigenlabs forum
http://www.eigenlabs.com/forum/
The forum is read by many eigenharp players (as well as Eigenlabs),
and you will get a faster response than, posting to issues on github
which is only subscribed to by a small number.
Building EigenD
---------------
MAC OSX:
to build application and eigend (tmp/app/EigenD.app)
make
to build full package (including stage/workbench and installer)
make mpkg
Windows:
to build application and eigend (tmp\bin\eigend.exe)
bld.cmd
to build full package (including Stage, Workbench and installer)
bld.cmd target-mpkg
Linux:
to build application and eigend (tmp/app/EigenD.app)
make
to build full package (including stage/workbench and installer)
make pkg
Build requirements
==================
Runtime Files
-------------
You will need to have the stock EigenD installed to get the
runtime support (which is a vanilla Python install) and the
Windows device drivers.
Steinberg SDK
-------------
obtains from : http://www.steinberg.net/en/company/developers.html
you will need to register a developer account buts its free
You will need to obtain the VST headers from the Steinberg site.
use latest version of VST SDK and copy VST2 headers, also for windows you will need asiosdk
XThen, place these in a sub directory under the EigenD directory called 'steinberg' e.g.
...
steinberg/pluginterfaces/base/*
steinberg/pluginterfaces/vst2.x/*
...
steinberg/public.sdk/source/*
...
(under mac osx, its easier to create a symbolic link in the EigenD directory to the steinberg SDK directory)
Windows
-------
Visual Studio 2015, including Express - (http://www.microsoft.com/en-us/download/details.aspx?id=34673)
NSIS v2.94 - (http://sourceforge.net/projects/nsis)
WiX 3.9- (wixtoolset.org)
Direct X SDK (June 2010) - (https://www.microsoft.com/en-us/download/details.aspx?id=6812)
note: links are subject to change
general notes:
currently EigenD is using an older version of python, hence the reason we use the runtime supplied
currently the build is using a version of SCons that is not compatible with VS2013
MacOSX
------
XCode (latest) or Xcode command line tools (https://developer.apple.com/xcode/downloads/)
updated ctags, not really required but will remove 'error' you see at end of build
Linux
-----
you will need these packages
build-essential
libiw-dev
libfreetype6-dev
libx11-dev
libxext-dev
libxcursor-dev
libasound2-dev
libxinerama-dev
mesa-common-dev
please note: linux build is highly experimental, and libs required may be subject to change.
It would be very much appeciated if you build for linux,and have better instructions on requirements.
build/testing is done on Ubuntu (x86) and Raspbian (arm), the current GCC compiler for that distro is used.
Upgrade JUCE
------------
juce is copied into the repo under lib_juce
we do not generally make any changes to the JUCE source code
**EXCEPT**
we sometimes find that the latest version of compilers might break juce,
so we fix these issues, as a 'one-off' on the assumption that roli/juce will 'catch up'
Compiler versions
------------------
with windows we use a fixed version of MSVC.
with Linux and MacOS we keep up with current 'stable release' of GCC and XCode.
sometimes this can mean that the repo will temporarily be broken as compiler changes generate new errors.
the reason we are 'so sensitive' is that we treat all WARNINGS as ERRORS. (good practice for clean code),
this means if a compile introduces a new warning (which is pretty common), suddenly the build will fail.
if you spot this, its best to fix the code , and submit a pull request.
alternatively , for a quick fix, you can disable the warning. (do not push a PR with this, it will not be accepted)