g++ [...] -ldiskcache_i [...] -lDCache [...]
链接并运行良好,但是
g++ [...] -Xlinker --as-needed -ldiskcache_i [...] -lDCache [...]
给出一个缺失的符号:
libdiskcache_i.so: undefined reference to `TDCacheFile::Stage(char const*, unsigned int, char const*)'
这两个库都是共享对象。
该符号在 中被请求-ldiskcache_i
并且应该在 中被解析
-lDCache
,因为它是在引入 as-needed 标志之前。这个方法唯一有趣的是它是一个类的静态方法TDCacheFile
,并且调用使用了静态属性。