-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathBUILD-PROBLEMS-FAQ
128 lines (85 loc) · 3.85 KB
/
BUILD-PROBLEMS-FAQ
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
libtool announces an error about --no-rexec option?
Just
rm libtool ltconfig ltmain.sh
and re-run
./autogen.sh
If make fails on you in any way, be sure you are using GNU Make,
available from ftp.gnu.org
Also, note that GNU Make 3.77 may not work properly with the
automake+configure generated Makefiles.
Use GNU Make 3.76.1 instead. (Harald Meland --07/06/99 gjb)
If you get lots of warnings like the below:
scwm-screen-ci.hpp:41: warning: volatile qualifier ignored on asm
-> fix line 292 of guile-1.3/libguile/__scm.h:
/* should comment out volatile (fixed in newer [unreleased] versions of guile) */
#ifdef __GNUC__
#define SCM_FENCE asm /* volatile */ ("")
#else
#define SCM_FENCE
#endif
If Guile/scwm starts up *really* slowly ( >15 seconds on a PPro200 or
better)...
You are missing the tiny patch to guile-1.3 (also available from the web
page):
--- libguile/ports.h 1998/10/30 08:22:50 1.33
+++ libguile/ports.h 1998/11/05 16:02:55 1.34
@@ -93,7 +93,7 @@
#define SCM_CRDY (32L<<16) /* Should char-ready? return #t? */
/* A mask used to clear the char-ready port flag. */
-#define SCM_CUC 0x001fffffL
+#define SCM_CUC (~SCM_CRDY)
#define SCM_PORTP(x) (SCM_TYP7(x)==scm_tc7_port)
#define SCM_OPPORTP(x) (((0x7f | SCM_OPN) & SCM_CAR(x))==(scm_tc7_port | SCM_OP
N))
Problems building on Redhat 6.0 because there is no guile-config or guile-snarf script?
You need to install the guile-devel rpm -- see scwm web page or just grab it from
a Redhat mirror such as:
ftp://ftp.rge.com/pub/systems/linux/redhat/redhat-6.0/i386/RedHat/RPMS/
Core dump in _IO_setvbug? You probably have a guile compiled with
glibc2.0, trying to run by dynamically linking against glibc2.1.
If you're on Redhat 6.0, the guile and guile-devel rpms should work fine
with Scwm. Otherwise, it's probably most prudent to grab the guile-1.3
sources from the Scwm web page, get the local patch and apply it, then
re-build guile and re-install. Be sure to remove any old installations
of guile, too, or at least be sure that Scwm links against the new build
of guile.
Lots of warnings like (see guile-1.3-includes.patch):
constraint-primitives.x:2: warning: ANSI C++ prohibits conversion from `(SCM)' to `(...)'
Fix this using a patch to the snarf.h header file included with guile
(and be sure your Makefile.am uses -DGUILE_CPLUSPLUS_SNARF in the rule
to create .x files from .cc files):
--- snarf.h 1999/07/06 19:20:42 1.1
+++ snarf.h 1999/07/08 19:15:28
@@ -54,10 +54,15 @@
#define SCM_PROC1(RANAME, STR, TYPE, CFN) \
static char RANAME[]=STR
#else
+#if defined(__cplusplus) || defined(GUILE_CPLUSPLUS_SNARF)
+#define SCM_PROC(RANAME, STR, REQ, OPT, VAR, CFN) \
+%%% scm_make_gsubr (RANAME, REQ, OPT, VAR, (SCM (*)(...))CFN)
+#else
#define SCM_PROC(RANAME, STR, REQ, OPT, VAR, CFN) \
%%% scm_make_gsubr (RANAME, REQ, OPT, VAR, CFN)
+#endif
#define SCM_PROC1(RANAME, STR, TYPE, CFN) \
-%%% scm_make_subr(RANAME, TYPE, CFN)
+%%% scm_make_subr(RANAME, TYPE, (SCM (*)(...))CFN)
#endif
#ifndef SCM_MAGIC_SNARFER
Lots of warnings like (see guile-1.3-includes.patch):
color.c:221: warning: passing arg 1 of `gh_str02scm' discards `const' from pointer target type
and
image.c:414: warning: passing arg 1 of `scm_wrong_type_arg' discards `const' from pointer target type
Just ignore them-- they are harmless-- they can be fixed by adding
const declarations to the prototypes in libguile/error.h, guile/gh.h.
Undefined __bzero symbol?
>sync14% scwm -V
>scwm: error in loading shared libraries
>: undefined symbol: __bzero
>sync14%
I have seen this on a stock standard Redhat 5.2, using the scwm RPM from
redhat-contrib.
I solved the problem by grabbing the SRPM file and remaking the RPM file.
This had an annoying conflict with /usr/info/dir, which I (hastily) solved
by using --force and then mv /usr/info/dir.rpmsave /usr/info/dir.
Grame Cross