微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c – cmake – CMakeLists.txt不在根文件夹中(但包含在源文件夹中)

我正在尝试编译一个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不存在.
>将/ scripts中的CMakeLists.txt复制到/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文件将被包括在内.

解决方法

INSTALL文件明确地说:
If you want to use "cmake" (see www.cmake.org),copy CMakeLists.txt
from the "scripts" directory to this directory and type

   cmake . [-dpnG_MMX=YES] -DCMAKE_INSTALL_PREFIX=/path
   make
   make install

作为旁注,在此之前,它说安装它的经典方法是:

On Unix/Linux and similar systems,you can simply type

    ./configure [--prefix=/path]
    make check
    make install

听起来你用3)做对了,但是你再次尝试之前忘了清理构建目录.

原文地址:https://www.jb51.cc/c/118075.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐