FreeBSD 8.3-RELEASE-p3なマシンにて、portsのdatabases/sqlite3をmakeすると
sqlite3.c:23349: error: 'posix_fallocate' undeclared here (not in a function)
というエラーがでました。
とりあえず、な対処方法。
sqlite-autoconf-3071601のMakefileにて、
DEFS = -DPACKAGE_NAME=\"sqlite\" -DPACKAGE_TARNAME=\"sqlite\" -DPACKAGE_VERSION=\"3.7.16.1\" -DPACKAGE_STRING=\"sqlite\ 3.7.16.1\" -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\" -DPACKAGE=\"sqlite\" -DVERSION=\"3.7.16.1\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1 -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1 -DHAVE_READLINE=1 -DHAVE_POSIX_FALLOCATE=1
とかなっているので、このなかの「-DHAVE_POSIX_FALLOCATE=1」を削除してから、もう一度、portsのディレクトリにてmakeすればOKな気がします。
なぜconfigureがposix_fallocate()があると勘違いするのかは、よく調べてないのでわかりません[E:coldsweats01]
ちなみに、posix_fallocate()は、FreeBSDの8系には無くて、9系だとあるのかも。
Thanks man, i had the same problem building it inside a jail!
返信削除Worked like a charm!