2016-11-18 7 views
0

Я хочу, чтобы преобразовать shpfile в OSM файл , поэтому я запустив 【osm2shp】 но когда я делаю это шоу ошибка:когда я делаю [shp2osm], это показать ошибки л.д. возвращается 1 выход статус

osm.c:(.text+0x82c): undefined reference to `xmlAddChild' 
osm.c:(.text+0x869): undefined reference to `xmlAddChild' 
osm.c:(.text+0x95c): undefined reference to `xmlAddChild' 
osm.o:osm.c:(.text+0x992): more undefined references to `xmlAddChild' follow 
osm.o: In function `createXmlDoc': 
osm.c:(.text+0xafc): undefined reference to `xmlNewDoc' 
osm.c:(.text+0xb0f): undefined reference to `xmlNewNode' 
osm.c:(.text+0xb31): undefined reference to `xmlNewProp' 
osm.c:(.text+0xb44): undefined reference to `xmlDocSetRootElement' 
shp2osm.o: In function `main': 
shp2osm.c:(.text+0x40d): undefined reference to `xmlSaveFormatFileEnc' 
shp2osm.c:(.text+0x419): undefined reference to `xmlFreeDoc' 
collect2: error: ld returned 1 exit status 
make: *** [shp2osm] Error 1 

Я предполагаю, что это подключить libxml2, но я не знаю, как решить thisproblem

здесь подробно:

[email protected]:~/Desktop/osmutils-master$ make 
gcc -c -Wall `xml2-config --cflags --libs` -lproj transform.c 
gcc -c -Wall `xml2-config --cflags --libs` -lproj ruleset.c 
gcc -c -Wall `xml2-config --cflags --libs` -lproj osm.c 
osm.c: In function ‘tagElement’: 
osm.c:80:8: warning: variable ‘key’ set but not used [-Wunused-but-set-variable] 
    char *key; 
     ^
gcc -c -Wall `xml2-config --cflags --libs` -lproj shape.c 
gcc -c -Wall `xml2-config --cflags --libs` -lproj shp2osm.c 
gcc -Wall `xml2-config --cflags --libs` -lproj -o shp2osm dbfopen.o shpopen.o keyvals.o transform.o ruleset.o osm.o shape.o shp2osm.o 
transform.o: In function `sridIsValid': 
transform.c:(.text+0x4c): undefined reference to `pj_init_plus' 
transform.c:(.text+0x69): undefined reference to `pj_init_plus' 
transform.o: In function `transformPoint': 
transform.c:(.text+0xe7): undefined reference to `pj_transform' 
osm.o: In function `tagElement': 
osm.c:(.text+0x285): undefined reference to `xmlNewNode' 
osm.c:(.text+0x2b1): undefined reference to `xmlNewProp' 
osm.c:(.text+0x2d9): undefined reference to `xmlNewProp' 
osm.o: In function `nodeElement': 
osm.c:(.text+0x33b): undefined reference to `xmlNewNode' 
osm.c:(.text+0x365): undefined reference to `xmlNewProp' 
osm.c:(.text+0x393): undefined reference to `xmlNewProp' 
osm.c:(.text+0x3c1): undefined reference to `xmlNewProp' 
osm.o: In function `nodeRef': 
osm.c:(.text+0x3de): undefined reference to `xmlNewNode' 
osm.c:(.text+0x408): undefined reference to `xmlNewProp' 
osm.o: In function `wayElement': 
osm.c:(.text+0x428): undefined reference to `xmlNewNode' 
osm.c:(.text+0x452): undefined reference to `xmlNewProp' 
osm.o: In function `buildNodes': 
osm.c:(.text+0x606): undefined reference to `xmlAddChild' 
osm.c:(.text+0x63c): undefined reference to `xmlAddChild' 
osm.o: In function `parseLine': 
osm.c:(.text+0x82c): undefined reference to `xmlAddChild' 
osm.c:(.text+0x869): undefined reference to `xmlAddChild' 
osm.c:(.text+0x95c): undefined reference to `xmlAddChild' 
osm.o:osm.c:(.text+0x992): more undefined references to `xmlAddChild' follow 
osm.o: In function `createXmlDoc': 
osm.c:(.text+0xafc): undefined reference to `xmlNewDoc' 
osm.c:(.text+0xb0f): undefined reference to `xmlNewNode' 
osm.c:(.text+0xb31): undefined reference to `xmlNewProp' 
osm.c:(.text+0xb44): undefined reference to `xmlDocSetRootElement' 
shp2osm.o: In function `main': 
shp2osm.c:(.text+0x40d): undefined reference to `xmlSaveFormatFileEnc' 
shp2osm.c:(.text+0x419): undefined reference to `xmlFreeDoc' 
collect2: error: ld returned 1 exit status 
make: *** [shp2osm] Error 1 
+0

Похоже, что вы не правильно связываетесь с libxml2. Более подробный журнал построения будет полезен для выявления проблемы. – scai

+0

ok Я уже размещаю детали, я думаю, что мои proj4 и libxml2 все не связаны с правильностью, но я не могу их решить – PengJ

+0

Что делает 'xml2-config --cflags -libs' return? – scai

ответ

1

Это е по существу, дубликат Error while linking libxml2. Неверный порядок аргументов в команде link. Библиотеки должны идти за объектными файлами. Вы должны открыть проблему, возможно, here on GitHub.