【发布时间】:2018-04-30 04:40:54
【问题描述】:
我正在尝试使用 g++ 6.4.0 在最新的 cygwin64 环境中编译 CPP 应用程序(一个开源项目),我收到以下错误:
错误:“posix_memalign”未在此范围内声明
现在可以在 stdlib.h 中找到 posix_memlig
项目的 make 文件报告以下编译设置
g++ -DHAVE_CONFIG_H -I。 -Wall -Wnon-virtual-dtor -I。 -I./include -g -O3 -std=c++0x -g -O3 -std=c++0x -MT lib/rectangular_binary_matrix.lo -MD -MP -MF lib/.deps/rectangular_binary_matrix.Tpo -c lib/rectangular_binary_matrix.cc -DDLL_EXPORT -DPIC -o lib/.libs/rectangular_binary_matrix.o
所以它看起来不会覆盖默认的包含路径。有任何想法吗?
附言 我能够毫无问题地在 Linux (Redhat) 上构建代码。
【问题讨论】:
-
尝试删除
-std=c++0x它会缩小声明的范围 -
感谢您的建议,但它似乎更早地完全破坏了构建,因此这不是一个可行的选择