-
Notifications
You must be signed in to change notification settings - Fork 7
/
Copy pathINSTALL.txt
147 lines (111 loc) · 5.24 KB
/
INSTALL.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
Building Blink for Mac
----------------------
How to build for old Mac version
https://marc.w??ckerlin.ch/computer/build-for-old-mac-osx-versions
Install Mac Ports
-----------------
https://www.macports.org/
Dependencies must be installed as follwos:
- Distribution/Frameworks/
-> Contain all C libraries and Frameworks
- Distribution/Resources/lib
-> Contain all Python packages
Download and install Python Framework using build_scripts/copy_python.sh
script.
Copy all related C dependencies installed using Brew to Distribution/Frameworks/
Python.framework libhogweed.6.dylib
Sparkle.framework libidn2.0.dylib
libavcodec.58.dylib libintl.8.dylib
libavformat.58.dylib liblzma.5.dylib
libavutil.56.dylib libmp3lame.0.dylib
libbluray.2.dylib libmpc.3.dylib
libcrypto.1.1.dylib libmpfr.6.dylib
libdav1d.4.dylib libnettle.8.dylib
libffi.7.dylib libogg.0.dylib
libfontconfig.1.dylib libopencore-amrnb.0.dylib
libfreetype.6.dylib libopencore-amrwb.0.dylib
libgmp.10.dylib libopenjp2.7.dylib
libgnutls.30.dylib libopus.0.dylib
libp11-kit.0.dylib libswscale.5.dylib
libpng16.16.dylib libtasn1.6.dylib
libpython3.9.dylib libtheoradec.1.dylib
libpython3.9.dylib.orig libtheoraenc.1.dylib
librav1e.0.3.4.dylib libunistring.2.dylib
librtmp.1.dylib libvorbis.0.dylib
libsnappy.1.dylib libvorbisenc.2.dylib
libsoxr.0.dylib libwebp.7.dylib
libspeex.1.dylib libwebpmux.3.dylib
libsqlite3.0.dylib libx264.161.dylib
libsrt.1.dylib libx265.192.dylib
libssl.1.1.dylib libswresample.3.dylib
# Find and copy all their dependencies:
cd Distribution/Frameworks/
for j in *.dylib; do for i in `ldd $j |grep local|cut -f 1 -d " "`; do sudo cp $i .; done; done
for j in *.so; do for i in `ldd $j |grep local|cut -f 1 -d " "`; do sudo cp $i .; done; done
Change the relative path inside all libraries to point to @executable_path/../Frameworks/
./build_scripts/change_lib_names.sh Distribution/Frameworks/*.dylib
Download and install Python Framework using this script inside Distribution
folder: copy_python.sh
Download and install python3-sipsimple and its dependencies:
https://github.com/AGProjects/python3-sipsimple/blob/master/docs/Install.osx
The final content of Distribution/Resources/lib folder:
AVFoundation exampleproj
AddressBook formencode
AppKit gmpy2.cpython-39-darwin.so
Cocoa gnutls
CoreFoundation greenlet
CoreMedia hamcrest
CoreServices hyperlink
Crypto idna
FSEvents incremental
Foundation lxml
LaunchServices msrplib
OpenSSL objc
PyObjCTools otr
Quartz pkg_resources
ScriptingBridge pyasn1
WebKit pyasn1_modules
_cffi_backend.cpython-39-darwin.so pycparser
_distutils_hack pydispatch
application pytz
attr semantic_version
automat service_identity
certifi sipsimple
cffi six.py
constantly sqlobject
cryptography toml
dateutil twisted
dns xcaplib
enum.py zope
eventlib ldap
ldif.py _ldap.cpython-39-darwin.so
./build_scripts/change_lib_names.sh Distribution/Resources/lib/sipsimple/core/_core.cpython-39-darwin.so
codesign -v -s "Developer ID Application" Distribution/Resources/lib/sipsimple/core/_core.cpython-39-darwin.so
codesign -v -s "Developer ID Application" Distribution/Resources/lib/sipsimple/util/_sha1.cpython-39-darwin.so
LDAP module
-----------
https://www.python-ldap.org/en/python-ldap-3.3.0/installing.html#installing-from-pypi
pip3 install --user python-ldap \
--global-option=build_ext \
--global-option="-I$(xcrun --show-sdk-path)/usr/include/sasl"
PyCrypto
---------
wget https://files.pythonhosted.org/packages/60/db/645aa9af249f059cc3a368b118de33889219e0362141e75d4eaf6f80f163/pycrypto-2.6.1.tar.gz
pip3 install --user .
Fix library paths
-----------------
All libraries must have their relative path changed to the Frameworks path
bundled within Blink.app
#!/bin/sh
old_path="local/lib/\|local/Cellar/\|/usr/local/opt/libmpc/lib/\|/usr/local/opt/mpfr/lib/\|Frameworks/Frameworks/\|/Users/adigeo/work/ag-projects/video/local/lib/"
new_path="@executable_path/../Frameworks/"
for library in $@; do
install_name_tool -id $new_path$library $library
dependencies=$(otool -L $library | grep $old_path | awk '{print $1}')
for dependency in $dependencies; do
new_basename=$(basename $dependency)
new_name="$new_path$new_basename"
echo $dependency $new_name $library
install_name_tool -change $dependency $new_name $library
done
done