这几天疫情原因一直待在家,闲来无事,逛了一下 Archlinux 的 Animation 分类,发现一个叫 Animata 的开源项目。
观看其演示视频后发现这样的基于顶点和三角的变形动画非常不错,和一般的2D骨骼动画相比,Animata 给予我们的控制更多,除了设置影响范围的半径以外,还能指定受骨骼影响的顶点,从而弥补通过圆指定影响范围所遗留的不足(在关节处常常出现影响范围交叉,造成关节的异常运动,不可避免成为骨骼动画的缺陷,常出现在一根骨骼出现在另一根骨骼的直径范围内时);可以在一张 Sprite 上自己布置顶点自己连接三角形;此外,还有IK机制。
如果能与其他动画项目集成的话前途无量,可惜作者早已不再维护,代码放在 Google Code 上,现在只剩下 Archive,而AUR上这个项目的构建文件也依赖 Google Code 上的 Animata 源码。然而今天,众所周知,Google Code 已经不再提供代码克隆服务。
Step 1:转移仓库
Animata 保存于 SVN 仓库,现在公开的SVN仓库已经少之又少,知名的 Codeplex 已经变为只读,Coding 提供的SVN仓库克隆代码必须要提供密码,SVNBucket 只能创建私有项目,Gitee 上传了一份,尚未测试,SourceForge 不明原因无法注册,显示“System Error 5121225”。内心还是想用上 SourceForge 这个正宗的SVN仓库,找遍全网发现只有一个人遇到和我一样的问题,还好评论区提到要用国外邮箱,我就用了 outlook 邮箱,最后注册成功了!马上把 Google Code Archive 上下载到的源码上传到了这里。
Step 2:修改构建文件
变量 _svntrunk
改为 svn://svn.code.sf.net/p/animata/svn/trunk/
,pkgver
改为 6
,第6版是自上传到 SourceForge 以来能够构建成功的第一个版本。只是想用这款软件的人跟着这里的说明做已经可以不看下文了,如果对我后续对代码做的修改感兴趣,或者遇到了问题想知道我对代码做的修改,可以接着看 Step 3。
Step 3:修改过时代码
从 Python 2 到 Python 3
原始的构建脚本 trunk/src/SConscript
使用了 Python 2 print "xxxxxx"
的语法,我尝试用兼容语法发现最后构建还是在这里报错,于是决定放弃 Python 2 语法,使用 Python 3 print("xxxxxx")
的语法。
Animata 类 Drawable 与 系统库 /usr/include/X11/Xlib.h 的 Drawable 类混淆
仅仅修改了构建脚本的语法,构建时会发现如下错误:
g++ -o build/animataUI.o -c -Wall -Wno-unknown-pragmas -Wno-long-long -pedantic -pthread -Wno-format -DTIXML_USE_STL -DOSC_HOST_LITTLE_ENDIAN -DANIMATA_MAJOR_VERSION=0 -DANIMATA_MINOR_VERSION=004 -ggdb2 -O0 -DDEBUG=1 -march=x86-64 -mtune=generic -pipe -fstack-protector-strong -fno-plt -D_THREAD_SAFE -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -I/usr/include -Ibuild/libs -Isrc/libs -Ibuild/libs/tinyxml -Isrc/libs/tinyxml -Ibuild/libs/oscpack -Isrc/libs/oscpack src/animataUI.cpp
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:678:2: error: reference to 'Drawable' is ambiguous
678 | Drawable drawable;
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:691:2: error: reference to 'Drawable' is ambiguous
691 | Drawable drawable;
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:1458:5: error: reference to 'Drawable' is ambiguous
1458 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:1458:5: error: 'Drawable' has not been declared
1458 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:1468:5: error: reference to 'Drawable' is ambiguous
1468 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:1468:5: error: 'Drawable' has not been declared
1468 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:1586:5: error: reference to 'Drawable' is ambiguous
1586 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:1586:5: error: 'Drawable' has not been declared
1586 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:1599:5: error: reference to 'Drawable' is ambiguous
1599 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:1599:5: error: 'Drawable' has not been declared
1599 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:1606:5: error: reference to 'Drawable' is ambiguous
1606 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:1606:5: error: 'Drawable' has not been declared
1606 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:1613:5: error: reference to 'Drawable' is ambiguous
1613 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:1613:5: error: 'Drawable' has not been declared
1613 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2186:5: error: reference to 'Drawable' is ambiguous
2186 | Drawable /* src */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2186:5: error: 'Drawable' has not been declared
2186 | Drawable /* src */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2187:5: error: reference to 'Drawable' is ambiguous
2187 | Drawable /* dest */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2187:5: error: 'Drawable' has not been declared
2187 | Drawable /* dest */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2206:5: error: reference to 'Drawable' is ambiguous
2206 | Drawable /* src */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2206:5: error: 'Drawable' has not been declared
2206 | Drawable /* src */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2207:5: error: reference to 'Drawable' is ambiguous
2207 | Drawable /* dest */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2207:5: error: 'Drawable' has not been declared
2207 | Drawable /* dest */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2304:5: error: reference to 'Drawable' is ambiguous
2304 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2304:5: error: 'Drawable' has not been declared
2304 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2316:5: error: reference to 'Drawable' is ambiguous
2316 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2316:5: error: 'Drawable' has not been declared
2316 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2324:5: error: reference to 'Drawable' is ambiguous
2324 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2324:5: error: 'Drawable' has not been declared
2324 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2334:5: error: reference to 'Drawable' is ambiguous
2334 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2334:5: error: 'Drawable' has not been declared
2334 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2344:5: error: reference to 'Drawable' is ambiguous
2344 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2344:5: error: 'Drawable' has not been declared
2344 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2354:5: error: reference to 'Drawable' is ambiguous
2354 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2354:5: error: 'Drawable' has not been declared
2354 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2363:5: error: reference to 'Drawable' is ambiguous
2363 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2363:5: error: 'Drawable' has not been declared
2363 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2371:5: error: reference to 'Drawable' is ambiguous
2371 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2371:5: error: 'Drawable' has not been declared
2371 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2380:5: error: reference to 'Drawable' is ambiguous
2380 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2380:5: error: 'Drawable' has not been declared
2380 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2390:5: error: reference to 'Drawable' is ambiguous
2390 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2390:5: error: 'Drawable' has not been declared
2390 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2398:5: error: reference to 'Drawable' is ambiguous
2398 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2398:5: error: 'Drawable' has not been declared
2398 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2406:5: error: reference to 'Drawable' is ambiguous
2406 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2406:5: error: 'Drawable' has not been declared
2406 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2416:5: error: reference to 'Drawable' is ambiguous
2416 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2416:5: error: 'Drawable' has not been declared
2416 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2426:5: error: reference to 'Drawable' is ambiguous
2426 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2426:5: error: 'Drawable' has not been declared
2426 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2436:5: error: reference to 'Drawable' is ambiguous
2436 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2436:5: error: 'Drawable' has not been declared
2436 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2461:5: error: reference to 'Drawable' is ambiguous
2461 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2461:5: error: 'Drawable' has not been declared
2461 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2473:5: error: reference to 'Drawable' is ambiguous
2473 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2473:5: error: 'Drawable' has not been declared
2473 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2481:5: error: reference to 'Drawable' is ambiguous
2481 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2481:5: error: 'Drawable' has not been declared
2481 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2491:5: error: reference to 'Drawable' is ambiguous
2491 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2491:5: error: 'Drawable' has not been declared
2491 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2501:5: error: reference to 'Drawable' is ambiguous
2501 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2501:5: error: 'Drawable' has not been declared
2501 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2622:5: error: reference to 'Drawable' is ambiguous
2622 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2622:5: error: 'Drawable' has not been declared
2622 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2905:5: error: reference to 'Drawable' is ambiguous
2905 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2905:5: error: 'Drawable' has not been declared
2905 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2922:5: error: reference to 'Drawable' is ambiguous
2922 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2922:5: error: 'Drawable' has not been declared
2922 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2932:5: error: reference to 'Drawable' is ambiguous
2932 | Drawable /* which_screen */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2932:5: error: 'Drawable' has not been declared
2932 | Drawable /* which_screen */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2941:5: error: reference to 'Drawable' is ambiguous
2941 | Drawable /* which_screen */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2941:5: error: 'Drawable' has not been declared
2941 | Drawable /* which_screen */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:2950:5: error: reference to 'Drawable' is ambiguous
2950 | Drawable /* which_screen */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:2950:5: error: 'Drawable' has not been declared
2950 | Drawable /* which_screen */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:3033:5: error: reference to 'Drawable' is ambiguous
3033 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:3033:5: error: 'Drawable' has not been declared
3033 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:3732:5: error: reference to 'Drawable' is ambiguous
3732 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:3732:5: error: 'Drawable' has not been declared
3732 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:3742:5: error: reference to 'Drawable' is ambiguous
3742 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:3742:5: error: 'Drawable' has not been declared
3742 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:3752:5: error: reference to 'Drawable' is ambiguous
3752 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:3752:5: error: 'Drawable' has not been declared
3752 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:3762:5: error: reference to 'Drawable' is ambiguous
3762 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:3762:5: error: 'Drawable' has not been declared
3762 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:3773:5: error: reference to 'Drawable' is ambiguous
3773 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:3773:5: error: 'Drawable' has not been declared
3773 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:3784:5: error: reference to 'Drawable' is ambiguous
3784 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:3784:5: error: 'Drawable' has not been declared
3784 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:3795:5: error: reference to 'Drawable' is ambiguous
3795 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:3795:5: error: 'Drawable' has not been declared
3795 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:3806:5: error: reference to 'Drawable' is ambiguous
3806 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:3806:5: error: 'Drawable' has not been declared
3806 | Drawable /* d */,
| ^~~~~~~~
/usr/include/X11/Xlib.h:3817:5: error: reference to 'Drawable' is ambiguous
3817 | Drawable /* d */,
| ^~~~~~~~
In file included from src/Mesh.h:33,
from src/animata.h:45,
from src/animataUI.h:9,
from src/animataUI.cpp:3:
src/Drawable.h:31:7: note: candidates are: 'class Animata::Drawable'
31 | class Drawable
| ^~~~~~~~
In file included from /usr/include/X11/Xlib.h:44,
from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/X.h:97:13: note: 'typedef XID Drawable'
97 | typedef XID Drawable;
| ^~~~~~~~
In file included from /usr/include/FL/x.H:37,
from /usr/include/FL/fl_draw.H:27,
from src/animataUI.cpp:1555:
/usr/include/X11/Xlib.h:3817:5: error: 'Drawable' has not been declared
3817 | Drawable /* d */,
| ^~~~~~~~
scons: *** [build/animataUI.o] Error 1
scons: building terminated because of errors.
简而言之,src/animataUI.cpp
编译失败。
分析之后发现 Animata 类 Drawable 与 系统库 /usr/include/X11/Xlib.h 的 Drawable 类混淆了,遂将 Animata 类 Drawable 改为 ADrawable,相应地修改其他源码,最后构建成功。
这是 Garlic Player 之后第二个在遇到构建失败问题后依靠自己的分析判断,做出行动以后构建成功的 Linux 软件。Garlic Player 只是缺了 vlc 依赖,这个直接修改了源码并成功了,为构建积累了宝贵的经验。
后记
中国加油!武汉加油!
来源:oschina
链接:https://my.oschina.net/baytars/blog/3186553