【发布时间】:2014-02-20 00:11:16
【问题描述】:
我正在尝试编译一个 libpng 库。问题是我需要这个库的特定版本 - 1.2.37 - 因为我正在使用它的项目是用这个版本编写的。 我找到了这个版本的源代码here(GnuWin32项目)。
但是文件夹结构看起来像这样:
libpng-1.2.37-src/
contrib/
projects/
scripts/
CMakeLists.txt
png.h
pngread.c
pngwrite.c
...
看,CMakeLists.txt 比源文件深一层。
我试过了:
- 源目录 libpng-1.2.37-src/ -> 导致错误:源目录似乎不包含 CMakeLists.txt
- 源目录libpng-1.2.37-src/scripts -> 导致多个错误:文件libpng-1.2.37-src/scripts/scripts/libpng.pc.in 不存在。
- 将 CMakeLists.txt 从 /scripts 复制到 /libpng-1.2.37-src 并将源目录设置为 /libpng-1.2.37-src -> 导致错误:源“/libpng-1.2.37-src/CMakeLists.txt”与用于生成缓存的源“/libpng-1.2.37-src/scripts/CMakeLists.txt”不匹配.
我应该怎么做才能让它工作?不知道为什么不能使用CMakeLists.txt文件会被包含进来。
【问题讨论】:
-
我相信你应该再次尝试
3.,但在此之前擦除二进制目录。该错误来自更改源目录,同时保持缓存不变 - 如果您从新的二进制目录开始,它应该可以工作。