wiki:FileGDB

Version 38 (modified by Kyle Shannon, 10 years ago) ( diff )

add reference to OpenFileGDB driver

FileGDB

Build GDAL with FileGDB Support

Download the API / SDK

  • http://www.esri.com/apps/products/download/#File_Geodatabase_API_1.3 (you will need an 'ESRI Global Account')
    • available downloads:
      • File Geodatabase API 1.3 version for Windows (Visual Studio 2008)
      • File Geodatabase API 1.3 version for Windows (Visual Studio 2010)
      • File Geodatabase API 1.3 version for Windows (Visual Studio 2012)
      • File Geodatabase API 1.3 version for Linux 32-bit
      • File Geodatabase API 1.3 version for Linux 64-bit
      • File Geodatabase API 1.3 version for Mac 64-bit

Compile

Windows (Visual Studio 2008) - FileGDB driver as a plugin

You may compile filegdb as a plugin for GDAL:

  1. Compile GDAL with the FGDB section commented
  1. Now edit your nmake.opt (or add it in nmake.local) so it contains something like the following (pay attention to the FGDB_SDK path):
  FGDB_ENABLED = YES
  FGDB_PLUGIN = YES
  FGDB_SDK = $(GDAL_HOME)\..\FileGDB_API_VS2008_1_0Final
  FGDB_INC = $(FGDB_SDK)\include
  FGDB_LIB = $(FGDB_SDK)\lib\FileGDBAPI.lib
  1. Next, cd to the /ogr/ogrsf_frmts/filegdb directory
  1. Execute the following:
  nmake /f makefile.vc plugin

A file named ogr_FileGDB.dll should be generated.

  1. You will also need the file: FileGDB_API_VS2008_1_0Final/bin/FileGDBAPI.dll

Windows (Visual Studio 2008) - FileGDB driver built inside gdalXX.dll

  1. Edit your nmake.opt (or add it in nmake.local) so it contains something like the following (pay attention to the FGDB_SDK path and let FGDB_PLUGIN commented):
  FGDB_ENABLED = YES
  #FGDB_PLUGIN = YES
  FGDB_SDK = $(GDAL_HOME)\..\FileGDB_API_VS2008_1_0Final
  FGDB_INC = $(FGDB_SDK)\include
  FGDB_LIB = $(FGDB_SDK)\lib\FileGDBAPI.lib
  1. Compile GDAL
  1. You will also need the file: FileGDB_API_VS2008_1_0Final/bin/FileGDBAPI.dll

Unix (Tested on Ubuntu 8.04 and trunk 22708)

FileGDB is supported through ./configure

Assuming you've installed libFileGDBAPI library under the default location, the procedure of adding FileGDB support to GDAL/OGR is relatively simple.

First, you need to append the FileGDB_API path (e.g., /usr/local/FileGDB_API/lib) to /etc/ld.so.conf. Next, update the dynamic linker with: sudo ldconfig. Finally, provide GDAL/OGR configure with the path to the FileGDB installation (replace /usr/local/FileGDB_API with whereever you extracted FileGDB_API_<version>.tar.gz) prefix:

$ cd /path/to/gdal
$ ./configure --with-fgdb=/usr/local/FileGDB_API
$ make
# make install

Testing the driver

To test if the driver is been loaded, make sure that the path to ogr_FileGDB.dll is defined with the GDAL_DRIVER_PATH environmenet variable and FileGDBAPI.dll is found in your path, and then execute the following (look for "FileGDB" in the results):

.\> ogrinfo --formats
Supported Formats:
  -> "FileGDB" (read/write)
  -> "ESRI Shapefile" (read/write)
  -> "MapInfo File" (read/write)
  -> "UK .NTF" (readonly)
  -> "SDTS" (readonly)
  -> "TIGER" (read/write)
  -> "S57" (read/write)
  -> "DGN" (read/write)
  -> "VRT" (readonly)
  -> "REC" (readonly)

Note for Unix when note compiled as plugin: The order in supported formats (and I think order in which drivers are attempted) is slightly different.

$ ogrinfo --formats
Supported Formats:
...
  -> "PostgreSQL" (read/write)
  -> "PCIDSK" (read/write)
  -> "FileGDB" (read/write)
  -> "XPlane" (readonly)
...

Then test with a sample file (such as here):

  ogrinfo test_fgdb.gdb
    INFO: Open of `test_fgdb.gdb'
      using driver `FileGDB' successful.
      1: basetable_2 (None)
      2: basetable (None)
      3: base_table1 (None)
      4: test_lines (3D Multi Line String)
      5: more_test_lines (3D Multi Line String)
      6: test_points (3D Point)
      7: test_areas (3D Multi Polygon)

Note: FileGDB_API 1.0 only supports a FileGDB created with ArcGIS>=10.0. If you try accessing a FileGDB created with an earlier ArcGIS version you will get the following error:

  ERROR 1: Error: Failed to open Geodatabase (This release of the GeoDatabase is either invalid or out of date.)

Open Tickets

(May also show tickets about ArcObjects Driver which can also read FileGDB but requires an ArcObjects license) No results

Attachments (1)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.