ここのことはなかったことにするかもしれない

仕事がらみの記事を主として扱いますが、あくまで個人ブログです。2013年以前の記事は https://yellow-73.hatenablog.com/ にあります。

gdalのビルドに失敗したら古いgdalが悪さしてた

portsでgdal (3.0.4)をビルドしていたところ

ld: error: undefined symbol: OSRSetAxisMappingStrategy

で止まりました。

次のコマンドが見て取れたので、リンクしているところで止まっているようです。

c++ -Wl,-rpath,/usr/local/lib -L/usr/local/lib -fstack-protector-strong  gdallocationinfo.o  -L/usr/ports/graphics/gdal/work/gdal-3.0.4 -lgdal  -lcrypto -L/usr/local/lib -lpoppler  -ljson-c -lfreexl -L/usr/local/lib -lSFCGAL -L/usr/local/lib -lgeos_c -L/usr/local/lib -lkmlbase -lkmldom -lkmlengine -lkmlxsd -lkmlregionator  -L/usr/local/lib -lexpat -L/usr/local/lib -lxerces-c -lpthread -L/usr/local/lib -lopenjp2  -ljasper -L/usr/local/lib -lnetcdf -lgif -ljpeg -lgeotiff -ltiff -lpng -L/usr/local/lib -lpq  -lzstd -llzma -lproj -lz -L/usr -L/usr/lib -lpthread -lm -lrt -ldl -L/usr/local/lib -lspatialite -lsqlite3 -lproj -lpcre   -L/usr/local/lib -lcurl            -L/usr/local/lib -lxml2 -lz -L/usr/lib -llzma -L/usr/lib -lm       -o gdallocationinfo

全く意味不明。

2時間費やしたところで、-lgdalとなっているのに注目。前にpackagesからgdal 2を入れてたのです。


pkgでgdalをいったん外してビルドしなおすとうまくいきました。


悩んだ割にあっけなかったです。