ダウンロードしたソリューションのエラーが取れなくて困っています。

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
らいよん
記事: 10
登録日時: 2年前

ダウンロードしたソリューションのエラーが取れなくて困っています。

#1

投稿記事 by らいよん » 2年前

ご教示ください。ダウンロードしたソリューションでプロジェクトを読むこむ際にエラーが発生しています。
エラーを取ろうと四苦八苦しているのですがどうにもならずご教示頂ければと思い投稿しました。

サンプルはMapWindowsV5.1.10とMapWinGIS v4.9.4.2です。
以下にダウンロードのアドレスを記述しますのでエラー要因をご教示頂ければ幸いです。
尚、サンプルは Visual Studio2015で作成されたようなのですが、当方は最近始めたばかりで
Visual Studio2017しかダウンロードできなくてバージョンの違いによるエラーなのかどうかもわからない次第です。

MapWindowsV5.1.10
https://github.com/MapWindow/MapWindow5 ... g/v5.1.1.0

MapWinGIS v4.9.4.2
https://github.com/MapWindow/MapWinGIS/releases

以上、宜しくお願い申し上げます。

アバター
沖 滉均
記事: 237
登録日時: 8年前
住所: K県F市

Re: ダウンロードしたソリューションのエラーが取れなくて困っています。

#2

投稿記事 by 沖 滉均 » 2年前

らいよん さんが書きました:ダウンロードしたソリューションでプロジェクトを読むこむ際にエラーが発生しています。
少々情報が不足しているので、まずどのようなエラーが発生しているのでしょうか?
古いバージョンで開くのならともかく最新版で開く際にエラーが発生することは稀だと思われます。

下記は、プロジェクトを読み込む度にエラーが発生とのことなので推測です。
Visual Studio 2017 Communityを使用していると過程のうえですがオンラインインストーラでインストール時に.NETデスクトップ開発を選んでいない(.NET Framework及びC#の開発環境が入っていない)
C++によるデスクトップ開発のみを選んだ場合にはC#及び.NET Frameworkがインストールされないためプロジェクトが開けない可能性があるのではないかと思われます。
There is no royal road to learning.
codeタグで指定できる言語
画像

らいよん
記事: 10
登録日時: 2年前

Re: ダウンロードしたソリューションのエラーが取れなくて困っています。

#3

投稿記事 by らいよん » 2年前

熟練のプログラマー様
返信ありがとうございます。
>Visual Studio 2017 Communityを使用して過程のうえですが
はい、Visual Studio 2017 Communityを使用しています。
>.NET Framework及びC#の開発環境が入っていない
C#で簡単なプログラムを作成して動作はしているのでC#およびFrameworkはインストールできていると思うのですが・・・

エラーですが90個ほど出ていて同じようなエラーなので抜粋します。
---エラー---
重大度レベル コード 説明 プロジェクト ファイル 行 抑制状態
エラー CS0006 メタデータ ファイル 'D:\MapWinGis\mapwingis_source\MapWindow5-5.1.1.0\src\MW5.Shared\bin\x64\Debug\MW5.Shared.dll' が見つかりませんでした。 MW5.Api D:\MapWinGis\mapwingis_source\MapWindow5-5.1.1.0\src\MW5.Api\CSC 1 アクティブ

確かに指定されているフォルダにMW5.Shared.dllがないのですがソリューションにMW5.Sharedプロジェクトも含まれております。MW5.Sharedプロジェクトもエラーが出ているのでMW5.Sharedプロジェクトのエラーだけを抜粋してみると以下のエラーがでています
---エラー---
重大度レベル コード 説明 プロジェクト ファイル 行 抑制状態
エラー This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is D:\MapWinGis\mapwingis_source\MapWindow5-5.1.1.0\src\\.nuget\NuGet.targets. MW5.Shared D:\MapWinGis\mapwingis_source\MapWindow5-5.1.1.0\src\MW5.Shared\MW5.Shared.csproj 361

上記のエラー内容がよくわからないのですが何か環境設定がおかしいのでしょうか?
以上、宜しくお願い申し上げます。

アバター
沖 滉均
記事: 237
登録日時: 8年前
住所: K県F市

Re: ダウンロードしたソリューションのエラーが取れなくて困っています。

#4

投稿記事 by 沖 滉均 » 2年前

エラー内容確認しました。
現在のVS Communityが使用できない確認のため下記は参考までにお願いします(帰宅後であれば確認できるかもしれませんが…)

まず、プロジェクトを読み込む際ではなくビルドしたときのエラーですよね?
MapWindow5-5.1.1.0からビルドしようとしても、参照しているOCXファイルがないので提示していただいたエラーが発生します。

両方ソースファイルから取得したのであれば、まず最初にMapWinGIS-4.9.4.2をビルドして、ビルドが完了したらMapWinGIS-4.9.4.2\src\bin\Win32\regMapWinGIS.cmdを実行し、MapWindow5-5.1.1.0で参照しているOCXファイルを登録してやる必要があるようです。
MapWinGIS-4.9.4.2のビルドにはMFCが必要になるのでオンラインインストーラで予めインストールしておく必要がありますが、もしかすると参照ライブラリのバージョンが異なっているかもしれないので確認が必要です。

MapWindow5-5.1.1.0\docsの中にcompile.htmlというファイルがあるのでこちらも参照してみると良いのではないでしょうか
オフトピック
あと、熟練のプログラマというのはここの掲示板のPointによる称号みたいなもので私の名前ではありません
There is no royal road to learning.
codeタグで指定できる言語
画像

YuO
記事: 941
登録日時: 8年前
住所: 東京都世田谷区

Re: ダウンロードしたソリューションのエラーが取れなくて困っています。

#5

投稿記事 by YuO » 2年前

とりあえず,
らいよん さんが書きました:This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them.
と「NuGetパッケージの復元を有効にしろ」と書いてあるのだから,それをしてみてはどうでしょうか。
[ソリューション エクスプローラー]でソリューションを選択してコンテキストメニューから[NuGet パッケージの復元]を選択することで,手動での復元が出来るはずです。
また,[ツール] - [オプション] - [NuGet パッケージ マネージャー] - [見つからないパッケージのダウンロードを NuGet に許可]とか[Visual Studio でのビルド中に見つからないパッケージを自動的に確認]にチェックを入れておくと,NuGetパッケージが復元されていない場合はビルド時に勝手にダウンロード(orキャッシュを利用)してくれます。

らいよん
記事: 10
登録日時: 2年前

Re: ダウンロードしたソリューションのエラーが取れなくて困っています。

#6

投稿記事 by らいよん » 2年前

沖 滉均 様
失礼しました。

ご教示頂きましたようにMFCをインストーラしてMapWinGIS-4.9.4.2をビルドしたのですが下記のエラーが
出力されます。
---エラー---
重大度レベル コード 説明 プロジェクト ファイル 行 抑制状態
エラー C1083 include ファイルを開けません。'gdal_priv.h':No such file or directory MapWinGIS D:\MapWinGis\mapwingis_source\MapWinGIS-4.9.4.2\src\Control\GlobalVars.h 8

何か私の環境がおかしいのか、ダウンロードしたものがもともと簡単に動かないのか。。。
お手数をおかけしてすみません。

らいよん
記事: 10
登録日時: 2年前

Re: ダウンロードしたソリューションのエラーが取れなくて困っています。

#7

投稿記事 by らいよん » 2年前

YuO様
返信ありがとうございます。

>[ツール] - [オプション] - [NuGet パッケージ マネージャー] - [見つからないパッケージのダウンロードを NuGet に許可]とか[Visual Studio でのビルド中に見つからないパッケージを自動的に確認]にチェックを入れておくと,NuGetパッケージが復元されていない場合はビルド時に勝手にダウンロード(orキャッシュを利用)してくれます。

手動でも復元してみましたしチェックも入っていましたがやはりエラーは変わらないようです。

丁寧にご教示頂きありがとうございました。

アバター
沖 滉均
記事: 237
登録日時: 8年前
住所: K県F市

Re: ダウンロードしたソリューションのエラーが取れなくて困っています。

#8

投稿記事 by 沖 滉均 » 2年前

> YuOさん
私の方でもNuGetパッケージの復元関連は試してみて更新すべきファイルはないと出ていたので対策として記述していませんでした。
申し訳ないです。

> らいよんさん
さて、エラー内容から改めて色々と探ってみましたが'gdal_priv.h'があるべき場所に入っていないようですね。
本来は
MapWinGIS-4.9.4.2\support\GDAL_SDK以下の対応バージョンのところに 'gdal_priv.h' などのファイルがあるべきなのでしょうがライセンスの都合でしょうか?入っていないようです。
MapWinGIS-4.9.4.2\support\build\HowToBuild.txt
また上記のファイルがあり、MapWinGIS-x.x.x.xについてもビルドの手順が書かれています。

そもそもですが、なぜソースコードからビルドをしようとしているのでしょうか?
実行したいだけであれば32bit版、64bit版ともにバイナリが提供されているようです。

もし、何らかの拡張をしたくてソースコードを編集したいのであればビルドするためには同梱されていないライブラリをダウンロードし適切なディレクトリに入れてビルドすることが必要です。
また、ビルドのエラー出力にも原因が書かれており、その結果何が不足しているのかご自身で探すことができないのであれば非常に厳しいと思われます。

今回のエラーに関しては、GDAL_SDKに必要なファイルを入れれば
エラー C1083 include ファイルを開けません。'gdal_priv.h':No such file or directory MapWinGIS D:\MapWinGis\mapwingis_source\MapWinGIS-4.9.4.2\src\Control\GlobalVars.h 8
この点に関しては解決するでしょう

しかし、元々のMapWindow5には依存関係として下記のように書かれているのでこれらは本体とは別のライブラリなので別に用意する必要があるのではないでしょうか?
Syncfusion Essential Studioも使用しているようなのでこちらも別途入手する必要がありそうですね(試してはいません)

Dependencies:
MapWinGIS: v4.9.4.2-Stable, released Jun. 9, 2016
GDAL: v2.2.0, released May 31, 2016
Synfusion Essential Studio 14.1.0.46

あまり親切なパッケージ構成はしていませんがドキュメント類は入っているようなので全て英語ですが読んでて進めていくことが必要だと思いますよ。
There is no royal road to learning.
codeタグで指定できる言語
画像

アバター
沖 滉均
記事: 237
登録日時: 8年前
住所: K県F市

Re: ダウンロードしたソリューションのエラーが取れなくて困っています。

#9

投稿記事 by 沖 滉均 » 2年前

長々と書いてますがちょっと追加でひとつ
MapWindow5-5.1.1.0/docs/index.html
上記のファイルを開くとビルドについても書かれていますが、先述の
MapWindow5-5.1.1.0/docs/compile.html
に飛びます。
そこの下の方に
MapWinGIS - The C++ mapping engine
というセクションがあるので、そこを読みましょう。
Step2に "Get the GDAL binaries, libraries and header files from gisinternals.com"
GDALのバイナリ、ライブラリ、ヘッダファイルを取ってこいと書かれていますね。
Step3以降に
Projectの設定についても書いてます。
英語ですが、まず全て読みましょう

おすすめはしませんがざっくりGoogle翻訳とか翻訳サイト使っても良いと思いますし
There is no royal road to learning.
codeタグで指定できる言語
画像

らいよん
記事: 10
登録日時: 2年前

Re: ダウンロードしたソリューションのエラーが取れなくて困っています。

#10

投稿記事 by らいよん » 2年前

沖 滉均 様
度々ありがとうございます。
>何らかの拡張をしたくてソースコードを編集したい
少し追加したい事があって変更できるか試してみたかったのです。

>Syncfusion Essential Studioも使用しているようなのでこちらも別途入手する必要がありそうですね
調べてみます、ありがとうございます。

ご教示いただきましたようにドキュメントを読んでみます。
とりあえず、ライブラリのビルドをするのも大変だという事がわかりました。
以降はドキュメントを読んでもう少し試してみようと思います。
度々ありがとうございました。

らいよん
記事: 10
登録日時: 2年前

Re: ダウンロードしたソリューションのエラーが取れなくて困っています。

#11

投稿記事 by らいよん » 2年前

回答頂きました方々ありがとうございました。

少し調べるのに時間が掛かりそうなので一旦解決とさせていただきます。

返信

“C言語何でも質問掲示板” へ戻る