linux - 在 Kubuntu 14.10 : make error 上构建 OpenImageIO

标签 linux ubuntu boost build makefile

这里是 Ubuntu 的新手,这让我很困惑。

目前正在尝试使用 make 构建 OpenImageIO,按照此处概述的步骤操作:https://sites.google.com/site/openimageio/checking-out-and-building-openimageio

据我所知,我已经安装了所有依赖项,但是尝试运行 make 时出现以下错误:

platform=linux64, hw=x86_64
OPENIMAGEIO_SITE = shanesimmsart-pc
dist_dir = dist/linux64
INSTALLDIR = /home/shanesimmsart/oiio
( cd build/linux64 ; make  )
make[1]: Entering directory `/home/shanesimmsart/oiio/build/linux64'
make[2]: Entering directory `/home/shanesimmsart/oiio/build/linux64'
make[3]: Entering directory `/home/shanesimmsart/oiio/build/linux64'
make[3]: Leaving directory `/home/shanesimmsart/oiio/build/linux64'
make[3]: Entering directory `/home/shanesimmsart/oiio/build/linux64'
[  0%] Building CXX object src/libutil/CMakeFiles/OpenImageIO_Util.dir/strutil.cpp.o
/home/shanesimmsart/oiio/src/libutil/strutil.cpp: In function ‘OpenImageIO::v1_6::string_view OpenImageIO::v1_6::Strutil::parse_nested(OpenImageIO::v1_6::string_view&, bool)’:
/home/shanesimmsart/oiio/src/libutil/strutil.cpp:768:28: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]
     for ( ; nesting && len < p.size(); ++len) {
                            ^
cc1plus: all warnings being treated as errors
make[3]: *** [src/libutil/CMakeFiles/OpenImageIO_Util.dir/strutil.cpp.o] Error 1
make[3]: Leaving directory `/home/shanesimmsart/oiio/build/linux64'
make[2]: *** [src/libutil/CMakeFiles/OpenImageIO_Util.dir/all] Error 2
make[2]: Leaving directory `/home/shanesimmsart/oiio/build/linux64'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/shanesimmsart/oiio/build/linux64'
make: *** [cmake] Error 2

有谁知道我可能做错了什么/可能遗漏了什么?

最佳答案

您正在使用的包默认启用了 -Werror 标志,这会强制编译器将所有警告视为错误。这对于将代码交付给用户来说总是一个坏主意,因为用户会有各种各样不同的编译器和编译器版本,因此用户会收到与开发人员不同的警告。当开发人员构建代码时,他们绝对应该使用 -Werror。当开发人员向用户发送代码时,他们绝对默认启用-Werror

无论如何,查看 Git 中的代码,如果您这样做:

make STOP_ON_WARNING=no

它将禁用-Werror

关于linux - 在 Kubuntu 14.10 : make error 上构建 OpenImageIO,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28659800/

相关文章:

linux - 如何在 Unix 中创建附加到文件的 Shell 脚本?

linux - 批量重命名文件

docker - 无法热重载与 Docker 集成的我的 ionic 应用程序

Linux 查找和替换(有条件)

C 程序创建 3 个从 3 个不同文件读取的子进程

php - CodeIgniter 项目加载空白网页

linux - 无线连接不佳 Ubuntu 14.04 LTS Ralink

c++ - 使用 tcp 套接字执行 async_write 时,何时调用处理程序?

c++ - 为什么 BGL 函数的参数用点而不是逗号分隔?

c++ - 从基类发送和接收序列化类