︙ | | |
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
|
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
|
-
-
-
-
-
+
+
+
+
+
+
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
+
+
+
+
+
-
-
-
+
+
+
+
+
+
+
|
# PURPOSE.
if [[ $OPTION=="" ]]; then
export OPTION=std
fi
echo You may need to do the following first:
echo sudo apt-get install libreadline-dev
echo sudo apt-get install libwebkitgtk-dev
echo sudo apt-get install libpangox-1.0-0 zlib1g-dev libfreetype6-dev cmake
echo sudo apt-get install libssl-dev uuid-dev
echo sudo apt-get install libmotif3 -OR- set KTYPE=26g4
echo sudo apt install libreadline-dev
echo sudo apt install libwebkitgtk-dev
echo sudo apt install libpangox-1.0-0 zlib1g-dev libfreetype6-dev cmake
echo sudo apt install libssl-dev uuid-dev
echo sudo apt install libmotif3 -OR- set KTYPE=26g4
echo sudo apt install cmake curl ruby wget
echo
echo Set OPTION to std, currently OPTION=$OPTION
echo
echo Additionally, if you want mysql-client, you will need to make sure
echo mysql_config is in your path
echo for postgres to install dbi libpq-dev
echo
echo You are using PREFIX=$PREFIX
echo You are using proxy="$proxy"
echo
echo "Set additional_libpath to help find gtk or other libraries, don't forget a leading :"
SYSTEM_TYPE=$(lsb_release -irs |tr ' ' '_' |tr '\n' '-')$(uname -i)-$OPTION
CHICKEN_VERSION=4.11.0
CHICKEN_BASEVER=4.11.0
CHICKEN_VERSION=4.10.0
CHICKEN_BASEVER=4.10.0
# Set up variables
#
case $SYSTEM_TYPE in
Ubuntu-17.10-x86_64-std)
KTYPE=32
CDVER=5.11.1
IUPVER=3.22
IMVER=3.12
# CHICKEN_VERSION=4.12.0
# CHICKEN_BASEVER=4.12.0
;;
Ubuntu-17.04-x86_64-std)
KTYPE=32
CDVER=5.11.1
IUPVER=3.22
IMVER=3.12
# CHICKEN_VERSION=4.12.0
# CHICKEN_BASEVER=4.12.0
;;
Ubuntu-16.04-x86_64-std)
KTYPE=32
CDVER=5.10
IUPVER=3.17
IMVER=3.11
CHICKEN_VERSION=4.12.0
CHICKEN_BASEVER=4.12.0
CDVER=5.11.1
IUPVER=3.22
IMVER=3.12
# CHICKEN_VERSION=4.12.0
# CHICKEN_BASEVER=4.12.0
;;
Ubuntu-16.04-i686-std)
KTYPE=32
CDVER=5.10
IUPVER=3.17
IMVER=3.11
CDVER=5.11.1
IUPVER=3.22
IMVER=3.12
# CHICKEN_VERSION=4.12.0
# CHICKEN_BASEVER=4.12.0
;;
SUSE_LINUX_11-x86_64-std)
KTYPE=26g4
CDVER=5.10
IUPVER=3.17
IMVER=3.11
CDVER=5.11.1
IUPVER=3.22
IMVER=3.12
;;
CentOS_5.11-x86_64-std)
KTYPE=24g3
CDVER=5.4.1
IUPVER=3.5
IMVER=3.6.3
;;
esac
echo SYSTEM_TYPE=$SYSTEM_TYPE
echo KTYPE=$KTYPE
echo CDVER=$CDVER
echo IUPVER=$IUPVER
echo IMVER=$IMVER
echo CHICKEN_VERSION=$CHICKEN_VERSION
echo CHICKEN_BASEVER=$CHICKEN_BASEVER
# NOTES:
#
# Centos with security setup may need to do commands such as following as root:
#
# NB// fix the paths first
#
# for a in /localdisk/chicken/4.8.0/lib/*.so;do chcon -t textrel_shlib_t $a; done
|
︙ | | |
99
100
101
102
103
104
105
106
107
108
109
110
111
112
|
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
|
+
|
sleep 5
if [[ $proxy == "" ]]; then
echo 'Please set the environment variable "proxy" to host.com:port (e.g. foo.com:1234) to use a proxy'
echo PROX=""
else
export http_proxy=http://$proxy
export https_proxy=http://$proxy
export PROX="-proxy $proxy"
fi
if [[ $KTYPE == "" ]]; then
echo 'Using KTYPE=26'
export KTYPE=26g4
else
|
︙ | | |
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
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
|
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
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
|
+
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
-
-
+
+
+
+
-
+
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
|
cd chicken-${CHICKEN_VERSION}
# make PLATFORM=linux PREFIX=$PREFIX spotless
make PLATFORM=linux PREFIX=$PREFIX
make PLATFORM=linux PREFIX=$PREFIX install
cd $BUILDHOME
fi
cd $BUILDHOME
#if [[ ! -e 1.0.0.tar.gz ]];then
#wget --no-check-certificate https://github.com/nanomsg/nanomsg/archive/1.0.0.tar.gz
#mv 1.0.0 1.0.0.tar.gz
# if ! [[ -e $PREFIX/lib64/libnanomsg.so.1.0.0 ]]; then
# wget --no-check-certificate https://github.com/nanomsg/nanomsg/archive/1.0.0.tar.gz
# mv 1.0.0 1.0.0.tar.gz
# tar xf 1.0.0.tar.gz
# cd nanomsg-1.0.0
# ./configure --prefix=$PREFIX
# make
# make install
# fi
# cd $BUILDHOME
# wget --no-check-certificate https://github.com/nanomsg/nanomsg/archive/1.0.0.tar.gz
# mv 1.0.0 1.0.0.tar.gz
#fi
if ! [[ -e $PREFIX/lib64/libnanomsg.so.1.0.0 ]]; then
wget --no-check-certificate https://github.com/nanomsg/nanomsg/archive/1.0.0.tar.gz
mv 1.0.0 1.0.0.tar.gz
tar xf 1.0.0.tar.gz
cd nanomsg-1.0.0
./configure --prefix=$PREFIX
make
make install
CSC_OPTIONS="-I$PREFIX/include -L$PREFIX/lib" $CHICKEN_INSTALL $PROX nanomsg
fi
cd $BUILDHOME
export SQLITE3_VERSION=3090200
if ! [[ -e $PREFIX/bin/sqlite3 ]]; then
echo Install sqlite3
sqlite3_tgz=sqlite-autoconf-$SQLITE3_VERSION.tar.gz
if ! [[ -e tgz/$sqlite3_tgz ]]; then
wget http://www.sqlite.org/2015/$sqlite3_tgz
mv $sqlite3_tgz tgz
fi
if ! [[ -e $PREFIX/bin/sqlite3 ]] ; then
if [[ -e tgz/sqlite-autoconf-$SQLITE3_VERSION.tar.gz ]]; then
tar xfz tgz/sqlite-autoconf-$SQLITE3_VERSION.tar.gz
(cd sqlite-autoconf-$SQLITE3_VERSION;./configure --prefix=$PREFIX;make;make install)
fi
fi
fi
if ! [[ -e $PREFIX/bin/pg_config ]]; then
echo Install Postgresql
pgsql_tgz=postgresql-9.6.4.tar.gz
if ! [[ -e tgz/$pgsql_tgz ]]; then
wget -c https://ftp.postgresql.org/pub/source/v9.6.4/$pgsql_tgz
mv $pgsql_tgz tgz
fi
if ! [[ -e $PREFIX/bin/pg_config ]]; then
if [[ -e tgz/$pgsql_tgz ]]; then
tar xfz tgz/$pgsql_tgz
(cd postgresql-9.6.4; ./configure --prefix=$PREFIX --with-openssl; make; make install)
fi
fi
fi
cd $BUILDHOME
for egg in "sqlite3" sql-de-lite # nanomsg
for egg in "sqlite3" sql-de-lite nanomsg
do
echo "Installing $egg"
CSC_OPTIONS="-I$PREFIX/include -L$PREFIX/lib -L$PREFIX/lib64" $CHICKEN_INSTALL $PROX -keep-installed $egg
#CSC_OPTIONS="-I$PREFIX/include -L$PREFIX/lib -L$PREFIX/lib64" $CHICKEN_INSTALL $PROX $egg
if [ $? -ne 0 ]; then
echo "$egg failed to install"
exit 1
fi
done
# Some eggs are quoted since they are reserved to Bash
# for f in matchable readline apropos base64 regex-literals format "regex-case" "test" coops trace csv dot-locking posix-utils posix-extras directory-utils hostinfo tcp rpc csv-xml fmt json md5; do
# $CHICKEN_INSTALL $PROX -keep-installed matchable readline apropos base64 regex-literals format "regex-case" "test" coops trace csv dot-locking posix-utils posix-extras directory-utils hostinfo tcp rpc csv-xml fmt json md5 awful http-client spiffy uri-common intarweb http-client spiffy-request-vars md5 message-digest http-client spiffy-directory-listing
for egg in matchable readline apropos base64 regex-literals format "regex-case" "test" \
coops trace csv dot-locking posix-utils posix-extras directory-utils hostinfo \
tcp rpc csv-xml fmt json md5 awful http-client spiffy uri-common intarweb http-client \
tcp rpc csv-xml fmt json md5 awful http-client:0.7.1 spiffy uri-common intarweb http-client \
spiffy-request-vars s md5 message-digest spiffy-directory-listing ssax sxml-serializer \
sxml-modifications logpro z3 call-with-environment-variables \
pathname-expand typed-records simple-exceptions numbers crypt parley srfi-42 \
sxml-modifications z3 call-with-environment-variables \
pathname-expand typed-records \
logpro \
simple-exceptions numbers crypt parley srfi-42 \
alist-lib ansi-escape-sequences args basic-sequences bindings chicken-doc chicken-doc-cmd \
cock condition-utils debug define-record-and-printer easyffi easyffi-base \
expand-full ezxdisp filepath foof-loop ini-file irc lalr lazy-seq \
locale locale-builtin locale-categories locale-components locale-current locale-posix \
locale-timezone loops low-level-macros procedural-macros refdb rfc3339 scsh-process \
sexp-diff sha1 shell slice srfi-101 srfi-19 srfi-19-core srfi-19-date srfi-19-io \
srfi-19-period srfi-19-support srfi-19-time srfi-19-timezone srfi-29 srfi-37 srfi-78 syslog \
udp uuid uuid-lib zlib
udp uuid uuid-lib zlib postgresql
do
echo "Installing $egg"
$CHICKEN_INSTALL $PROX -keep-installed $egg
#$CHICKEN_INSTALL $PROX $egg
if [ $? -ne 0 ]; then
echo "$egg failed to install"
exit 1
fi
done
if [[ -e `which mysql_config` ]]; then
$CHICKEN_INSTALL $PROX -keep-installed mysql-client
$CHICKEN_INSTALL $PROX mysql-client
fi
cd $BUILDHOME
cd `$PREFIX/bin/csi -p '(chicken-home)'`
curl http://3e8.org/pub/chicken-doc/chicken-doc-repo.tgz | tar zx
cd $BUILDHOME
# $CHICKEN_INSTALL $PROX sqlite3
cd $BUILDHOME
# # IUP versions
# if [[ x$USEOLDIUP == "x" ]];then
# CDVER=5.10
# IUPVER=3.17
# IMVER=3.11
# else
# CDVER=5.10
# IUPVER=3.17
# IMVER=3.11
# fi
# if [[ x$KTYPE == "x24g3" ]];then
# CDVER=5.4.1
# IUPVER=3.5
# IMVER=3.6.3
# fi
if [[ `uname -a | grep x86_64` == "" ]]; then
export ARCHSIZE=''
else
export ARCHSIZE=64_
fi
# export files="cd-5.4.1_Linux${KTYPE}_lib.tar.gz im-3.6.3_Linux${KTYPE}_lib.tar.gz iup-3.5_Linux${KTYPE}_lib.tar.gz"
|
︙ | | |
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
|
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
|
+
+
-
+
|
cp -f hs $PREFIX/bin/hs
cd ../mutils
$PREFIX/bin/chicken-install
cd ../dbi
$PREFIX/bin/chicken-install
cd ../margs
$PREFIX/bin/chicken-install
cd ../pkts
$PREFIX/bin/chicken-install
fi
cd $BUILDHOME
if ! [[ -e $PREFIX/bin/stmlrun ]] ; then
if [[ ! -e $PREFIX/bin/stmlrun ]] ; then
#fossil clone http://www.kiatoa.com/fossils/stml stml.fossil
wget -c -O stml.tar.gz 'http://www.kiatoa.com/fossils/stml/tarball?name=stml&uuid=trunk'
tar -xzf stml.tar.gz
cd stml
#fossil open ../stml.fossil
cp install.cfg.template install.cfg
echo "TARGDIR=$PREFIX/bin" > install.cfg
|
︙ | | |
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
|
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
|
-
+
+
-
-
+
+
+
+
+
|
export CSCLIBS=`echo $LD_LIBRARY_PATH | sed 's/:/ -L/g'`
IUPEGGVER='iup'
if [[ $IUPVER == "3.5" ]]; then
IUPEGGVER='iup:1.2.1'
fi
#CSC_OPTIONS="-I$PREFIX/include -L$CSCLIBS" $CHICKEN_INSTALL $PROX -D no-library-checks -feature disable-iup-web iup
CSC_OPTIONS="-I$PREFIX/include -L$PREFIX/lib" $CHICKEN_INSTALL $PROX -D no-library-checks -feature disable-iup-web $IUPEGGVER
CSC_OPTIONS="-I$PREFIX/include -L$PREFIX/lib" $CHICKEN_INSTALL $PROX -D no-library-checks -feature disable-iup-web -feature disable-iup-pplot $IUPEGGVER
# CSC_OPTIONS="-I$PREFIX/include -L$CSCLIBS" $CHICKEN_INSTALL $PROX -D no-library-checks -feature disable-iup-web -deploy -prefix $DEPLOYTARG iup
# iup:1.0.2
CSC_OPTIONS="-I$PREFIX/include -L$PREFIX/lib" $CHICKEN_INSTALL $PROX -D no-library-checks canvas-draw
# CSC_OPTIONS="-I$PREFIX/include -L$CSCLIBS" $CHICKEN_INSTALL $PROX -D no-library-checks -deploy -prefix $DEPLOYTARG canvas-draw
cd $BUILDHOME
# install ducttape
if [[ -e ../ducttape ]];then
cd ../ducttape
$CHICKEN_INSTALL
cd ../ducttape
$CHICKEN_INSTALL
else
echo "ducttape egg not found at ../ducttape. You will need to cd into the ducttape directory in the megatest distribution and run \"chicken-install\""
fi
cd $BUILDHOME
echo You may need to add $LD_LIBRARY_PATH to your LD_LIBRARY_PATH variable, a setup-chicken4x.sh
echo file can be found in the current directory which should work for setting up to run chicken4x
echo Testing iup
$PREFIX/bin/csi -b -eval '(use iup)(print "Success")'
|