我正在构建库 gdal-1.9.2
。启动 ./configure
命令后,make
失败并出现错误
ISO C++ forbids comparison between pointer and integer [-fpermissive]
如果我在控制台中使用附加选项 -fpermissive
启动最后一个失败的命令,它会成功完成(有警告,而不是错误)。
g++ -g -O2 -Wall -DOGR_ENABLED -I/home/unona/unona-pult/gdal-1.9.2/port -DHAVE_LIBZ -fpermissive -c cplkeywordparser.cpp -fPIC -DPIC -o .libs/cplkeywordparser.o
现在如何完成构建过程?只是 make
重建它并以同样的方式崩溃。
最佳答案
对于 autotools 构建,您可以期望 ./configure
脚本检查通过环境变量设置的编译器标志(通常也支持命令行选项,但它们不那么容易内存,恕我直言)。这些变量的名称是标准名称,在您的情况下,它应该是
CXXFLAGS="-fpermissive" ./configure
make install
配置脚本生成 makefile
,以便在构建时将 CXXFLAGS
的值传递给编译器。
关于c++ - 使用 autotools 和附加编译器标志编译库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52380268/