Daha çox

Windows üçün PHP MapScript (MapServer) son versiyasını necə tərtib etmək və ya tapmaq olar?


Məndə böyük performans çətinlikləri var idi MapServer versiyası 6.0.3 (MS4W 3.0.6) və ehtiyac son versiya of MapScript ancaq Windows üçün tapa bilmirəm.

Hər kəs mənə sonuncunu tapmaqda kömək edə bilər tərtib edilmişdir (ikili) of MapScript (PHP) yoxsa Windows üçün mənbədən tərtib etmək?


Hazırkı heç bir PHP üçün heç bir tərtib edilmiş php_mapscript tapa bilmədim, buna görə özüm tərtib etməyə çalışdım. Məni uzun müddət apardı və bir çox uğursuzluqlar etdi, amma mən bunu etdim.

Yazının bir yaşından çox olduğu üçün buna daha çox ehtiyacınız olub olmadığını bilmirəm, ancaq php-5.6.27-win32-vc11-ts-x86 və Mapserver-7.0-vc11-x86 (stabil) ə qarşı qurulmuş php_mapscript.dll var gisinternals-dan 7-0 üçün filial paketi).

Php_mapscript.dll almaq üçün qısa hekayə:

Php veb saytında sənədlərdə təsvir edildiyi kimi php yaradın. Mənim php-sdk varC: dev work php-dev. Gisinternals SDK-nı yükləyin və hər şeyi çıxarınC: gisinteralssdk. Kataloqu əldə etmək üçün hər şeyi eyni qovluqdan çıxarınzibil qabı,sənəd,gdal,daxildir,lib,mapserver,regex-0.23,buraxılış-1700SWIG-1.3.39içəriC: gisinteralssdk .

Xəritə server server deposunu github-da klonladım və php-mapscript-i https://github.com/AlexanderGabriel/mapserver-də uğurla tərtib etməyim üçün lazım olan dəyişiklikləri tətbiq etdim. Bu nöqtədə, filial dəyişikliklərini birləşdirməyə qərar verdinizfilial-7-0-fixphpmapscriptwin32buildwithcmake ilərəsmi anbarda olmaq və ya sadəcə anbarı klonlamaq üçün mapserver-mənbələrinəgit klonu https://github.com/AlexanderGabriel/mapserver/ C: gisinteralssdk mapserver.

Mən yalnız bir açılış istəyi açdım və ümid edirəm ki, gələcək versiyalara əlavə edəcəklər.

Qalanları bu əmrlər edəcək:

cd C: gisinteralssdk mapserver mkdir build cd build cmake… -G "NMake Makefiles" -DBUILD_SHARED_LIBS = 1 -DCMAKE_BUILD_TYPE = Release -Wno-dev -DCMAKE_PREFIX_PATH = C: gsinter; gisinter; lib; C: gisinteralssdk include -DREGEX_DIR = C: gisinteralssdk regex-0.12 -DWITH_SOS = 1 -DWITH_KML = 1 -DWITH_CLIENT_WFS = 1 -DWITH_CLIENT_WFS = 1 -DWITH_THIR_TH_D_F_D_F_D_F_D_F_D_F_D_F_D_F_DF = C: gisinteralssdk lib cairo.lib -DWITH_SVGCAIRO = 1 -DSVGCAIRO_LIBRARY = C: gisinteralssdk lib libsvg-cairo.lib -DSVG_LIBRARY = 1 -DSVG_LIBRIS = C- 0

İşlədiyini yoxlayınetmək. Sonra php-ni aktivləşdirin:

cmake… -DWITH_PHP = 1 -DPHP5_INCLUDES = C: dev work php-dev phpdev vc11 x86 php-5.6.27-src -DPHP5_EXTENSION_DIR = C: gisinteralssdk

Və nəhayət ilə PHP-MapScript yaradınetmək.

Bilmirəm, CMake ilə məşhursan. Lazımi seçimlərinizi seçin. PostGIS sisteminizə PostGIS quraşdırsanız və CMake-ə ilk başlamazdan əvvəl istifadəçilər üçün PATH dəyişən sistemlərinizə bin-qovluq yolunu əlavə etsəniz PostGIS işləyir.

Bu nöqtədən hər hansı bir kitabxananı fərqli bir versiyaya dəyişdirmək və ya ehtiyac duyulan bir xüsusiyyəti təmin etmək üçün CMake seçimlərini dəyişdirmək daha asandır. Mapscript-i ilk dəfə tərtib etmək üçün bir neçə gün çəkdim (bunu ümumiyyətlə edə biləcəyimi bilmirdim), amma işi bu bir neçə pilləyə endirməyə başladım. Mənim fikrimcə, bütün asılılıqları sıfırdan tərtib etmək tamamilə çılğın və lazımsızdır. Fərqli qurma sistemləri, oxumaq, etmək və test etmək üçün çox şey. İstəsəniz, bu barədə qeydlərimi ala bilərsiniz, amma bunu bir daha belə etməyəcəyəm;)

PHP qurma prosesi həqiqətən sadədir. Https://wiki.php.net/internals/windows/stepbystepbuild-də təsvir olunduğu kimi.

Bu Windows-Build-Stuff-da təcrübəli olmadığım üçün dəyişdiyim hər şeyin yaxşı olub-olmadığına əmin deyiləm. Buna görə istehsalda istifadə etməzdən əvvəl xahiş edirəm test edin, test edin, test edin.

Ümid edirəm bu, PHP-Mapscriptinizi yaratmağa kömək edir. Hər hansı bir rəy açıqdır.

PS: Bir neçə dəqiqə ərzində Windows 10-un yeni "Linux Alt Sistemi" ilə "Windows-da" php-mapscript tərtib edə bilərdim. Anbarlarda paketlər də var, beləliklə apt-get ilə yükləyə bilərsiniz. Orada bir Apache qurub başlaya bilərsiniz. Windows Machine'inizin 'localhost'unu dinləyəcək. Crazy lakin işləyir və Mapfiles-ə C və ya başqa bir sürücüdən oradan daxil ola bilərsiniz. Beləliklə, yalnız inkişaf üçün Windows istifadə etmək istəyirsinizsə, bu bəlkə də bir seçimdir. Ancaq hələ istehsal üçün deyil.

ƏLAVƏ OLUNUB 2017-01-04: Mapserver layihəsi github-dakı açma-sorğumu birləşdirdi. Versiya 7.0.3 bütün yamaları ehtiva edir, lakin yenilənmiş sənədlər yoxdur. Mövcud filialda artıq README.WIN32-də Mapserver və PHP / MapScript üçün yeni bir sənəd var, beləliklə Windows-da PHP / MapScript ilə Mapserver qurmaq üçün orada sənədləri istifadə edə bilərsiniz.


Sualınızı göndərdiyiniz üçün MapServer for Windows (MS4W), MapServer-in 7-ci versiyasını və PHP, Python, Java və CSharp üçün MapScript dəstəyini təmin edən yeni bir versiya yayımladı.

MapServer üçün Windows Binaries-in alternativ mənbəyini (Mapscript dəstəyi ilə) GISInternals-dan tapmaq olar