<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://wiki.gis-lab.info/index.php?action=history&amp;feed=atom&amp;title=%D0%9A%D0%BE%D0%BC%D0%BF%D0%B8%D0%BB%D1%8F%D1%86%D0%B8%D1%8F_osm2shp_%D0%B4%D0%BB%D1%8F_Ubuntu</id>
	<title>Компиляция osm2shp для Ubuntu - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.gis-lab.info/index.php?action=history&amp;feed=atom&amp;title=%D0%9A%D0%BE%D0%BC%D0%BF%D0%B8%D0%BB%D1%8F%D1%86%D0%B8%D1%8F_osm2shp_%D0%B4%D0%BB%D1%8F_Ubuntu"/>
	<link rel="alternate" type="text/html" href="https://wiki.gis-lab.info/index.php?title=%D0%9A%D0%BE%D0%BC%D0%BF%D0%B8%D0%BB%D1%8F%D1%86%D0%B8%D1%8F_osm2shp_%D0%B4%D0%BB%D1%8F_Ubuntu&amp;action=history"/>
	<updated>2026-04-03T19:15:27Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.39.6</generator>
	<entry>
		<id>https://wiki.gis-lab.info/index.php?title=%D0%9A%D0%BE%D0%BC%D0%BF%D0%B8%D0%BB%D1%8F%D1%86%D0%B8%D1%8F_osm2shp_%D0%B4%D0%BB%D1%8F_Ubuntu&amp;diff=6067&amp;oldid=prev</id>
		<title>Voltron: Новая страница: «{{Статья|Опубликована|osm2shp-ubuntu}} {{Аннотация|Пошаговая инструкция по компиляции osm2shp.}}  Для…»</title>
		<link rel="alternate" type="text/html" href="https://wiki.gis-lab.info/index.php?title=%D0%9A%D0%BE%D0%BC%D0%BF%D0%B8%D0%BB%D1%8F%D1%86%D0%B8%D1%8F_osm2shp_%D0%B4%D0%BB%D1%8F_Ubuntu&amp;diff=6067&amp;oldid=prev"/>
		<updated>2012-07-25T09:39:23Z</updated>

		<summary type="html">&lt;p&gt;Новая страница: «{{Статья|Опубликована|osm2shp-ubuntu}} {{Аннотация|Пошаговая инструкция по компиляции osm2shp.}}  Для…»&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Статья|Опубликована|osm2shp-ubuntu}}&lt;br /&gt;
{{Аннотация|Пошаговая инструкция по компиляции osm2shp.}}&lt;br /&gt;
&lt;br /&gt;
Для начинающего пользователя Unix, запуск инструмента &amp;lt;tt&amp;gt;osm2shp&amp;lt;/tt&amp;gt; может оказаться нетривиальной задачей, для того, чтобы он все-таки смог это сделать и создана эта инструкция. Обращаем внимание, что [http://lists.openstreetmap.org/pipermail/talk/2007-May/013857.html описания приводимые] на самом OSM недостаточно подробно описывают процесс, особенно для новичков. В этом описание предполагается, что пакеты make, gcc, g++, subversion уже установлены. Наверняка есть какая-то несуразица в подходе (несколько смущает последняя часть с переписыванием путей в &amp;lt;tt&amp;gt;Makefile&amp;lt;/tt&amp;gt;), прошу учесть базовое знакомство с Unix автора данных строк.&lt;br /&gt;
&lt;br /&gt;
'''Примечание''': текущая версия библиотеки &amp;lt;tt&amp;gt;libosm&amp;lt;/tt&amp;gt; и использующего ее конвертера [http://trac.openstreetmap.org/browser/applications/utils/export/osm2shp osm2shp] (ревизия 2911) не работают с текущим форматом OSM XML 0.5 на момент написания статьи и предназначены для данных версии 0.4.&lt;br /&gt;
&lt;br /&gt;
Сначала установим дополнительные библиотеки &amp;lt;tt&amp;gt;shapelib&amp;lt;/tt&amp;gt; и &amp;lt;tt&amp;gt;libshp-dev&amp;lt;/tt&amp;gt; для создания shape-файлов, &amp;lt;tt&amp;gt;expat&amp;lt;/tt&amp;gt; и &amp;lt;tt&amp;gt;libexpatl-dev&amp;lt;/tt&amp;gt; для чтения XML синтаксиса.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
apt-get install shapelib libshp-dev&lt;br /&gt;
apt-get install expat libexpat1-dev&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Эти пакеты при установке потребуют дополнительных, установим и их, проблем быть не должно. Если не установить &amp;lt;tt&amp;gt;libshp-dev&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;make&amp;lt;/tt&amp;gt; будет выдавать сообщение об ошибке:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;/usr/bin/ld: cannot find -lshp&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если не установить &amp;lt;tt&amp;gt;libexpat1-dev&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;make&amp;lt;/tt&amp;gt; будет выдавать сообщение об ошибке:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;/usr/bin/ld: cannot find -lexpat&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если директории с исходниками еще нет, создадим и перейдем в нее:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
mkdir src&lt;br /&gt;
cd ~/src&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Перед установкой самого &amp;lt;tt&amp;gt;osm2shp&amp;lt;/tt&amp;gt;, необходимо установить две дополнительные библиотеки &amp;lt;tt&amp;gt;libosm&amp;lt;/tt&amp;gt; и &amp;lt;tt&amp;gt;ccoord&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
svn co http://svn.openstreetmap.org/applications/lib/libosm&lt;br /&gt;
svn co http://svn.openstreetmap.org/applications/lib/ccoord&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ревизия этих библиотек и &amp;lt;tt&amp;gt;osm2shp&amp;lt;/tt&amp;gt; на момент написания статьи: 10355.&lt;br /&gt;
&lt;br /&gt;
Для начала разберемся с библиотекой libosm.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd libosm&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Отредактируем &amp;lt;tt&amp;gt;Components.cpp&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
pico Components.cpp&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Найдем и заменим:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;libshp/shapefil.h&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
на&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;shapefil.h&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Запустим сборку и установку:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
make&lt;br /&gt;
make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Разберемся с библиотекой &amp;lt;tt&amp;gt;ccoord&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd ../ccoord&lt;br /&gt;
make&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Инструкций по &amp;lt;tt&amp;gt;make install&amp;lt;/tt&amp;gt; для этой библиотеки не существует, поэтому выполним необходимые действия вручную:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cp libccoord.a /usr/local/lib&lt;br /&gt;
cp *.h /usr/local/include&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Сборка дополнительных библиотек завершена, перейдем к собственно &amp;lt;tt&amp;gt;osm2shp&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ..&lt;br /&gt;
svn co http://svn.openstreetmap.org/applications/utils/export/osm2shp&lt;br /&gt;
cd osm2shp&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Здесь потребуется сделать ряд замен в &amp;lt;tt&amp;gt;osm2shp.cpp&amp;lt;/tt&amp;gt; и &amp;lt;tt&amp;gt;Makefile&amp;lt;/tt&amp;gt;. Сначала исправим &amp;lt;tt&amp;gt;osm2shp.cpp&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;pico osm2shp.cpp&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Найдем и заменим:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;libshp/shapefil.h&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
на&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;shapefil.h&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Теперь очередь &amp;lt;tt&amp;gt;Makefile&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;pico Makefile&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Заменим:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
-I../../../lib/libosm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
на&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
-I/usr/local/lib&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Заменим:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
../../../lib/libosm/libosm.a&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
на&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/usr/local/lib/libosm.a&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Заменим:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
../../../lib/ccoord/libccoord.a&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
на&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/usr/local/lib/libccoord.a&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Заменим:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
../../../lib/libosm/libosm.a&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
на&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/usr/local/lib/libosm.a&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Вот и все, проверим и если на:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
./osm2shp&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Нам в ответ выдается:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Usage: osm2shp OSMfile nodeSHPfile waySHPfile  areaSHPfile features.xml&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
То значит все прошло удачно.&lt;br /&gt;
&lt;br /&gt;
=== Ссылки по теме ===&lt;br /&gt;
&lt;br /&gt;
* [http://gis-lab.info/qa/osm-begin.html Начало работы с OpenStreetMap]&lt;/div&gt;</summary>
		<author><name>Voltron</name></author>
	</entry>
</feed>