-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathbuild instructions_1.txt
203 lines (145 loc) · 6.27 KB
/
build instructions_1.txt
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
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
Dependencies
ALL PLATFORMS
Squeezelite-R2 requires header files for the following libraries to be present at
build time: * libasound2 * libflac * libmad0 * libvorbis * libfaad * libmpg123
All above libraries are dynamically loaded and optional at runtime, meaning that
these libraries are only required on the build machine.
It also optionally supports the following libraries which may be enabled by
defining additional build options: * libsoxr * libffmpeg
DEBIAN LINUX:
with alsa support (*):
Depends: libasound2
Depends: libavcodec56
Depends: libavcodec-extra-56
Depends: libavformat56
Depends: libavutil54
Depends: libc6
Depends: libfaad2
Depends: libflac8
Depends: libmad0
Depends: libmpg123-0
Depends: libsoxr0
Depends: libvorbisfile3
with portaudio support:
Depends: libportaudio2
Depends: libavcodec56
Depends: libavcodec-extra-56
Depends: libavformat56
Depends: libavutil54
Depends: libc6
Depends: libfaad2
Depends: libflac8
Depends: libmad0
Depends: libmpg123-0
Depends: libsoxr0
Depends: libvorbisfile3
OSX
Include-osx contains the headers needed to build, tested from 10.7 to latest.
You need a valid version of portaudio.a (static library) in
./lib_osx folder.
WINDOWS
See squeezelite.vcxproj for dependencies in Windows.
You should provide statics libraries as needed by other platform
Build Options
Optional build options are enabled by passing additional defines to the compiler.
This may be done with the -D option to ggc or via setting OPTS before calling the
included makefiles. For example:
OPTS="-DFFMPEG -DRESAMPLE" make
The following build options are supported:
* PORTAUDIO - build with port audio support (on linux only, it is not optional on other platforms)
* RESAMPLE - build with libsoxr support for real time upsampling
* FFMPEG - build with FFMPEG support for wma and alac support. Note that this requires the binary to be run
with FFMPEG library versions which match the header files used for compilation.
This is necessary and the ffmpeg api changes between versions.
* VISEXPORT - support export of audio data to jivelite for visualization support (linux only)
* DSD - support of DSD playback via 'natives' formats when possible or DOP.
Target Platforms
Squeezelite-R2 can builds on debian linux, osx using included makefiles:
- Makefile.debian (*)
- Makefile.osx
It also builds using MSVC++ (tested with MSVC2010) on Windows (use squeezelite.vcxproj).
Above versions are used to build the binary versions attached to each release.
- Makefile.pa
- Makefile.resample
are just example on how to enable additiona features in linux.
To produce your own makefile, set options and flags for your platform, specify
the executable name and include Makefile.
To build on linux with support i.e for resampling if the same tree was previously
used to build with different options:
OPTS=-DRESAMPLE make clean
OPTS=-DRESAMPLE make
Other Makefiles are provvided and tested by different users, they worked when added,
but are not tested by me on every new releases, so they should work but may not.
here the list, please reports errors, or new you wish to add, using issues in gitHub.
- Makefile.freebsd
Produced by: Triode (?)
First relased in version: 1.8 (?)
Modified by: Simone Filippini ([email protected])
Last release was reported as working: 1.8.4 by Simone Filippini ([email protected])
Reported as non working in release: never
Status: ALPHA: Needs test
- Makefile.rpi (*)
Produced by: Ralph Irving (?)
Modified by: Simone Filippini ([email protected])
First relased in version: 1.8 (?)
Last release was reported as working: 1.8.4 by Simone Filippini ([email protected])
Reported as non working in release: never
Status: Working
NOTES:
It works for RPI2, needs adjustments in FLAGS for RPI or RPI3.
DSD Works in Ubuntu non in raspbian (*).
- Makefile.rpi_ARM64 (*)
Produced by: Simone Filippini ([email protected])
First relased in version: 1.8.4
Last release was reported as working: 1.8.4 by Simone Filippini ([email protected])
Reported as non working in release: never
Status: Working
NOTES:
It works for RPI2, needs adjustments in FLAGS for RPI or RPI3.
DSD Works in Ubuntu non in raspbian (*).
- Makefile.raspbsd
Produced by: Simone Filippini ([email protected])
First relased in version: 1.8.4
Last release was reported as working: 1.8.4
Reported as non working in release: never
Status: ALPHA: Needs test
- Makefile.raspbsd_ARM64
Produced by: Simone Filippini ([email protected])
First relased in version: 1.8.4
Last release was reported as working: 1.8.4
Reported as non working in release: never
Status: ALPHA: Needs test
- Makefile.osx-i386 (osx is dual arch, this is i386 only)
Produced by: Ralph Irving (?)
First relased in version: 1.8 (?)
Last release was reported as working: 1.8 (?)
Reported as non working in release: 1.8.4 by Simone Filippini ([email protected])
Status: obsolete.
NOTES:
Makefie.osx produces an executable with double arch, so it's portable both on
i386 and x86_64 machines. This one is not needed anymore.
- Makefile.osx-x86_64 (osx is dual arch, this is x86_64 only)
Produced by: Ralph Irving (?)
First relased in version: 1.8 (?)
Last release was reported as working: 1.8 (?)
Reported as non working in release: 1.8.4 by Simone Filippini ([email protected])
Status: obsolete.
NOTES:
Makefie.osx produces an executable with double arch, so it's portable both on
i386 and x86_64 machines. This one is not needed anymore.
- Makefile.osx-ppc (very old, but maybe works)
Produced by: Ralph Irving (?)
First relased in version: 1.8 (?)
Last release was reported as working: 1.8 (?)
Reported as non working in release: never
Status: unknown, need test
- Makefile.osx-ppc64 (very old, but maybe works)
Produced by: Ralph Irving (?)
First relased in version: 1.8 (?)
Last release was reported as working: 1.8 (?)
Reported as non working in release: never
Status: unknown,, need test
More at: https://audiodigitale.eu/
(*) PLEASE NOTE: DSD option require ALSA >= 1.0.29 to work.
Debian jessie 'stable' is not a candidate, works in Ubuntu 16.04LTS.
To compile without DSD support, edit the Makefile.xxx and remove -DSD option.