FileGDB API for linux 学习系列之一,编译例子程序
FileGDB AIP for linux年后已经发布一段时间了,功能还是很强大的,其一共包括6个文件夹以及一个README文件,如下所示:192.168.100.228 [sde filegdbapi]$ lsdocincludeliblicenseREADMEsamplessrc其中 doc: 包括所有的帮助信息, include: 包括所有的头文件 l
·
FileGDB AIP for linux年后已经发布一段时间了,功能还是很强大的,其一共包括6个文件夹以及一个README文件,如下所示:
192.168.100.228 [sde filegdbapi]$ ls
doc include lib license README samples src
其中
doc: 包括所有的帮助信息,
include: 包括所有的头文件
lib: 包括所有的库文件
license: 包括一些license信息
README:包括详细的介绍信息
samples: 包括例子信息
src: 包括GNU的一些源代码
可以使用下面的方法来编译例子程序:
使用samples/Makefile文件来进行编译,默认的情况是编译32bit的release版本。
编译命令为:
192.168.100.228 [sde samples]$ make
make -C Domains
make[1]: Entering directory `/home/sde/filegdbapi/samples/Domains'
g++ -fPIC -O2 -m32 -W -fexceptions -fno-inline -D_CONSOLE -DUNICODE -D_UNICODE -DLINUX -D_REENTRANT -DFILEGDB_API -D__USE_FILE_OFFSET64 -DLINUX_FILEGDB_API -I "../../src/FileGDBEngine/include/FileGDBLinux" -I "../../include" -I. -c Domains.cpp
g++ -fPIC -O2 -m32 -W -fexceptions -fno-inline -D_CONSOLE -DUNICODE -D_UNICODE -DLINUX -D_REENTRANT -DFILEGDB_API -D__USE_FILE_OFFSET64 -DLINUX_FILEGDB_API -I "../../src/FileGDBEngine/include/FileGDBLinux" -I "../../include" -I. -m32 -L"../../lib" -o ../bin/Domains ./Domains.o -lFileGDBAPI
make[1]: Leaving directory `/home/sde/filegdbapi/samples/Domains'
make -C Editing
make[1]: Entering directory `/home/sde/filegdbapi/samples/Editing'
g++ -fPIC -O2 -m32 -W -fexceptions -fno-inline -D_CONSOLE -DUNICODE -D_UNICODE -DLINUX -D_REENTRANT -DFILEGDB_API -D__USE_FILE_OFFSET64 -DLINUX_FILEGDB_API -I "../../src/FileGDBEngine/include/FileGDBLinux" -I ../../include -I. -c Editing.cpp
g++ -fPIC -O2 -m32 -W -fexceptions -fno-inline -D_CONSOLE -DUNICODE -D_UNICODE -DLINUX -D_REENTRANT -DFILEGDB_API -D__USE_FILE_OFFSET64 -DLINUX_FILEGDB_API -I "../../src/FileGDBEngine/include/FileGDBLinux" -I ../../include -I. -m32 -L ../../lib -o ../bin/Editing ./Editing.o -lFileGDBAPI
make[1]: Leaving directory `/home/sde/filegdbapi/samples/Editing'
make -C ExecutingSQL
make[1]: Entering directory `/home/sde/filegdbapi/samples/ExecutingSQL'
g++ -fPIC -O2 -m32 -W -fexceptions -fno-inline -D_CONSOLE -DUNICODE -D_UNICODE -DLINUX -D_REENTRANT -DFILEGDB_API -D__USE_FILE_OFFSET64 -DLINUX_FILEGDB_API -I "../../src/FileGDBEngine/include/FileGDBLinux" -I "../../include" -I. -c ExecutingSQL.cpp
g++ -fPIC -O2 -m32 -W -fexceptions -fno-inline -D_CONSOLE -DUNICODE -D_UNICODE -DLINUX -D_REENTRANT -DFILEGDB_API -D__USE_FILE_OFFSET64 -DLINUX_FILEGDB_API -I "../../src/FileGDBEngine/include/FileGDBLinux" -I "../../include" -I. -m32 -L ../../lib -o ../bin/ExecutingSQL ./ExecutingSQL.o -lFileGDBAPI
make[1]: Leaving directory `/home/sde/filegdbapi/samples/ExecutingSQL'
make -C FeatureDatasets
make[1]: Entering directory `/home/sde/filegdbapi/samples/FeatureDatasets'
g++ -fPIC -O2 -m32 -W -fexceptions -fno-inline -D_CONSOLE -DUNICODE -D_UNICODE -DLINUX -D_REENTRANT -DFILEGDB_API -D__USE_FILE_OFFSET64 -DLINUX_FILEGDB_API -I "../../src/FileGDBEngine/include/FileGDBLinux" -I ../../include -I. -c FeatureDatasets.cpp
g++ -fPIC -O2 -m32 -W -fexceptions -fno-inline -D_CONSOLE -DUNICODE -D_UNICODE -DLINUX -D_REENTRANT -DFILEGDB_API -D__USE_FILE_OFFSET64 -DLINUX_FILEGDB_API -I "../../src/FileGDBEngine/include/FileGDBLinux" -I ../../include -I. -m32 -L ../../lib -o ../bin/FeatureDatasets ./FeatureDatasets.o -lFileGDBAPI
make[1]: Leaving directory `/home/sde/filegdbapi/samples/FeatureDatasets'
make -C GeodatabaseManagement
make[1]: Entering directory `/home/sde/filegdbapi/samples/GeodatabaseManagement'
g++ -fPIC -O2 -m32 -W -fexceptions -fno-inline -D_CONSOLE -DUNICODE -D_UNICODE -DLINUX -D_REENTRANT -DFILEGDB_API -D__USE_FILE_OFFSET64 -DLINUX_FILEGDB_API -I "../../src/FileGDBEngine/include/FileGDBLinux" -I ../../include -I. -c GeodatabaseManagement.cpp
g++ -fPIC -O2 -m32 -W -fexceptions -fno-inline -D_CONSOLE -DUNICODE -D_UNICODE -DLINUX -D_REENTRANT -DFILEGDB_API -D__USE_FILE_OFFSET64 -DLINUX_FILEGDB_API -I "../../src/FileGDBEngine/include/FileGDBLinux" -I ../../include -I. -m32 -L../../lib -o ../bin/GeodatabaseManagement ./GeodatabaseManagement.o -lFileGDBAPI
make[1]: Leaving directory `/home/sde/filegdbapi/samples/GeodatabaseManagement'
make -C Querying
make[1]: Entering directory `/home/sde/filegdbapi/samples/Querying'
g++ -fPIC -O2 -m32 -W -fexceptions -fno-inline -D_CONSOLE -DUNICODE -D_UNICODE -DLINUX -D_REENTRANT -DFILEGDB_API -D__USE_FILE_OFFSET64 -DLINUX_FILEGDB_API -I "../../src/FileGDBEngine/include/FileGDBLinux" -I ../../include -I. -c Querying.cpp
g++ -fPIC -O2 -m32 -W -fexceptions -fno-inline -D_CONSOLE -DUNICODE -D_UNICODE -DLINUX -D_REENTRANT -DFILEGDB_API -D__USE_FILE_OFFSET64 -DLINUX_FILEGDB_API -I "../../src/FileGDBEngine/include/FileGDBLinux" -I ../../include -I. -m32 -L ../../lib -o ../bin/Querying ./Querying.o -lFileGDBAPI
make[1]: Leaving directory `/home/sde/filegdbapi/samples/Querying'
make -C TableSchema
make[1]: Entering directory `/home/sde/filegdbapi/samples/TableSchema'
g++ -fPIC -O2 -m32 -W -fexceptions -fno-inline -D_CONSOLE -DUNICODE -D_UNICODE -DLINUX -D_REENTRANT -DFILEGDB_API -D__USE_FILE_OFFSET64 -DLINUX_FILEGDB_API -I "../../src/FileGDBEngine/include/FileGDBLinux" -I "../../include" -I. -c TableSchema.cpp
g++ -fPIC -O2 -m32 -W -fexceptions -fno-inline -D_CONSOLE -DUNICODE -D_UNICODE -DLINUX -D_REENTRANT -DFILEGDB_API -D__USE_FILE_OFFSET64 -DLINUX_FILEGDB_API -I "../../src/FileGDBEngine/include/FileGDBLinux" -I "../../include" -I. -m32 -L../../lib -o ../bin/TableSchema ./TableSchema.o -lFileGDBAPI
make[1]: Leaving directory `/home/sde/filegdbapi/samples/TableSchema'
编译完后的可执行文件,存放在sample/bin目录下。
如果想调试程序,需要将例子程序编译成debug版本,可以通过修改lib/make.include文件来进行,使用vi打开该文件,在第一行中
添加上CFG=DEBUG即可。
调试程序,只能是用gdb来进行了,具体如何使用gdb可以查看相关帮助。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
已为社区贡献1条内容
所有评论(0)