编译 SDWebImage 演示:找不到 libwebp/src/utils/random.c
Posted
技术标签:
【中文标题】编译 SDWebImage 演示:找不到 libwebp/src/utils/random.c【英文标题】:Compiling SDWebImage demo: libwebp/src/utils/random.c not found 【发布时间】:2014-01-12 11:34:01 【问题描述】:在 MacOS Mavericks 上,我正在尝试编译 SDWebImage 演示。
我已经用
查看了最新版本git clone https://github.com/rs/SDWebImage.git
并在 Xcode 5.0.2 中打开 SDWebImage Demo.xcodeproj。
但是构建项目失败了(这里是full-sized screenshot):
clang: error: no such file or directory: 'SDWebImage/Vendors/libwebp/src/utils/random.c'
clang: error: no input files
请问这个 random.c 从哪里得到?
或者也许可以在没有 webP 支持的情况下配置 SDWebImage,然后我就不需要它了?
更新:
我注意到 libwebp 是“SDWebImage”项目的“git 子模块”——因为当我再次使用 SourceTree 签出时,我看到了:
Submodule 'SDWebImage' (https://github.com/rs/SDWebImage.git) registered for path 'SDWebImage'
Cloning into 'SDWebImage'...
Submodule path 'SDWebImage': checked out '42f97369726f1ee282b40b63616e339adfcb2c8a'
Submodule 'Vendors/libwebp' (http://git.chromium.org/webm/libwebp.git) registered for path 'Vendors/libwebp'
Cloning into 'Vendors/libwebp'...
Submodule path 'Vendors/libwebp': checked out '68e7901da53cbda6ec93ddf93e039346d3c6a531'
Completed successfully
不幸的是,我还不太了解 git 并且必须阅读它 - 为什么在我克隆“SDWebImage”时没有下载这个子模块...
【问题讨论】:
使用 --recursive 方法。 "git clone --recursive github.com/rs/SDWebImage.git" 【参考方案1】:这对我有用:
git clone --recursive https://github.com/rs/SDWebImage.git
【讨论】:
这对我有用。从 GitHub.com 下载 ZIP 无法编译,这解决了问题【参考方案2】:试试https://chromium.googlesource.com/webm/libwebp/+/refs/heads/master/src/utils
我已经下载了,我的构建没问题:
【讨论】:
【参考方案3】:我最近也有类似的情况……
我需要从 github 添加SDWebImage
作为子模块,但是当我尝试编译项目时失败,因为 'Vendors' 文件夹中没有文件我就这样解决了我的问题:
我将 SDWebImage 项目添加为 sumbodule:
进入repo目录 类型:git submodule add git@github.com:<username>/example.git path/to/submodule
键入git status
并注意提供的路径是如何创建并添加到要提交的更改中的。此外,还创建了一个名为 .gitmodules
的新文件,其中包含我们提供的有关新子模块的详细信息。
提交更改
现在,为了解决我的问题,我做了以下操作来更新每个甚至包含子模块的子模块:
输入:来自 repo 目录的git submodule update --init --recursive
提交更改
推送到远程
【讨论】:
以上是关于编译 SDWebImage 演示:找不到 libwebp/src/utils/random.c的主要内容,如果未能解决你的问题,请参考以下文章
ASIHttpRequest或者SDWebImage给UIImageView加载图片的逻辑是什么样子的
ld.exe:找不到 -ldwrite 和 -ldwmapi