質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Visual Studio Code

Visual Studio Codeとは、Microsoft社が開発したマルチプラットフォーム対応のテキストエディタです。Visual Studioファミリーの一員でもあります。拡張性とカスタマイズ性が高く、テキストエディタでありながら、IDEと遜色ない機能を備えることができます。

include

あるファイルで定義された関数や処理を、別のファイル上でも使用できるようにするプロセスをincludeと呼びます。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

Q&A

解決済

1回答

1534閲覧

C++でSiv3Dフレームワークをincludeするプログラムでコンパイルしようとするとエラーが発生する。

Soybeanman

総合スコア15

Visual Studio Code

Visual Studio Codeとは、Microsoft社が開発したマルチプラットフォーム対応のテキストエディタです。Visual Studioファミリーの一員でもあります。拡張性とカスタマイズ性が高く、テキストエディタでありながら、IDEと遜色ない機能を備えることができます。

include

あるファイルで定義された関数や処理を、別のファイル上でも使用できるようにするプロセスをincludeと呼びます。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

1グッド

0クリップ

投稿2022/10/16 11:47

編集2022/10/16 21:16

前提

C++17にて、アプリを容易に作成できるSiv3D(https://siv3d.github.io/ja-jp/ )というフレームワークを使ってプログラムを作成しようとしています。
エディタはVisual Studio Codeです。

まず最初に、正常にincludeできるかどうか確かめるために何もメインの処理を書かないプログラムを作成しました。F5キーにてコンパイルを行おうとしました。しかし、コンパイル前に以下に書くようなエラーメッセージが発生しました。

実現したいこと

・Siv3D.hppを正常にincludeする。

発生している問題・エラーメッセージ

Visual Studio Codeで表示されたメッセージをコピーしたものです。3つ表示されました。

[{ "resource": "/c:/Users/Kitsune/Documents/Programing/Code/Cpp/GameTemplate/Test.cpp", "owner": "C/C++", "code": "1696", "severity": 8, "message": "#include エラーが検出されました。includePath を更新してください。この翻訳単位 (C:\\Users\\Kitsune\\Documents\\Programing\\Code\\Cpp\\GameTemplate\\Test.cpp) では、波線が無効になっています。", "source": "C/C++", "startLineNumber": 1, "startColumn": 1, "endLineNumber": 1, "endColumn": 21 }]
[{ "resource": "/c:/Users/Kitsune/Documents/Programing/Code/Cpp/GameTemplate/Test.cpp", "owner": "C/C++", "code": "1696", "severity": 8, "message": "ソース ファイルを開けません \"tbb/blocked_range.h\" (dependency of \"Siv3D.hpp\")", "source": "C/C++", "startLineNumber": 1, "startColumn": 1, "endLineNumber": 1, "endColumn": 21 }]
[{ "resource": "/c:/Users/Kitsune/Documents/Programing/Code/Cpp/GameTemplate/Test.cpp", "owner": "cpptools", "severity": 8, "message": "Siv3D.hpp: No such file or directory", "source": "gcc", "startLineNumber": 1, "startColumn": 10, "endLineNumber": 1, "endColumn": 10 }]

該当のソースコード

Test.cppが今回問題が起きたソースコードです。
.vscode/c_cpp_properties.jsonはVisual Studio Codeが自動的に生成したものに、コンパイラにMinGWのg++.exeを設定し、該当するincludePathを追加したものになっています。
その他の.vscode/~はVisual Studio Codeが自動的に生成して何も変更を加えていないファイルです。
C:/Users/Kitsune/Documents/OpenSiv3D_0.6.5はSiv3D(https://siv3d.github.io/ja-jp/ )の案内通りにダウンロードしたものとなっています。
また、C:/Users/Kitsune/Documents/OpenSiv3D_0.6.5/includeにはSiv3D.hppが存在していることを確認しています。
以下のプログラムの存在位置は、C:\Users\Kitsune\Documents\Programing\Code\Cpp\GameTemplate\です。

C++:Test.cpp

1#include <Siv3D.hpp> 2 3void Main() {}; // Siv3DではmainではなくMainを使用する

json:.vscode/c_cpp_properties.json

1{ 2 "configurations": [ 3 { 4 "name": "MinGW", 5 "includePath": [ 6 "${workspaceFolder}/**", 7 "C:/Users/Kitsune/Documents/OpenSiv3D_0.6.5/include", 8 "C:/Users/Kitsune/Documents/OpenSiv3D_0.6.5/include/ThirdParty" 9 ], 10 "defines": [ 11 "_DEBUG", 12 "UNICODE", 13 "_UNICODE" 14 ], 15 "windowsSdkVersion": "10.0.19041.0", 16 "compilerPath": "C:\\MinGW\\bin\\g++.exe", 17 "cStandard": "c17", 18 "cppStandard": "c++17", 19 "intelliSenseMode": "gcc-x64", 20 "compilerArgs": [] 21 } 22 ], 23 "version": 4 24}

json:.vscode/settings.json

1{ 2 "files.associations": { 3 "filesystem": "cpp" 4 } 5}

json:.vscode/tasks.json

1{ 2 "tasks": [ 3 { 4 "type": "cppbuild", 5 "label": "C/C++: g++.exe アクティブなファイルのビルド", 6 "command": "C:\\MinGW\\bin\\g++.exe", 7 "args": [ 8 "-fdiagnostics-color=always", 9 "-g", 10 "${file}", 11 "-o", 12 "${fileDirname}\\${fileBasenameNoExtension}.exe" 13 ], 14 "options": { 15 "cwd": "${fileDirname}" 16 }, 17 "problemMatcher": [ 18 "$gcc" 19 ], 20 "group": "build", 21 "detail": "デバッガーによって生成されたタスク。" 22 }, 23 { 24 "type": "cppbuild", 25 "label": "C/C++: cl.exe アクティブなファイルのビルド", 26 "command": "cl.exe", 27 "args": [ 28 "/Zi", 29 "/EHsc", 30 "/nologo", 31 "/Fe${fileDirname}\\${fileBasenameNoExtension}.exe", 32 "${file}" 33 ], 34 "options": { 35 "cwd": "${fileDirname}" 36 }, 37 "problemMatcher": [ 38 "$msCompile" 39 ], 40 "group": "build", 41 "detail": "デバッガーによって生成されたタスク。" 42 }, 43 { 44 "type": "cppbuild", 45 "label": "C/C++: cpp.exe アクティブなファイルのビルド", 46 "command": "C:\\MinGW\\bin\\cpp.exe", 47 "args": [ 48 "-fdiagnostics-color=always", 49 "-g", 50 "${file}", 51 "-o", 52 "${fileDirname}\\${fileBasenameNoExtension}.exe" 53 ], 54 "options": { 55 "cwd": "${fileDirname}" 56 }, 57 "problemMatcher": [ 58 "$gcc" 59 ], 60 "group": { 61 "kind": "build", 62 "isDefault": true 63 }, 64 "detail": "デバッガーによって生成されたタスク。" 65 } 66 ], 67 "version": "2.0.0" 68}

試したこと

・.vscode/c_cpp_properties.jsonのincludePathにダウンロードしたディレクトリのincludeディレクトリと、その中に存在するThirdPartyディレクトリを追加指定しました。
・tbb/blocked_range.hをダウンロードしたディレクトリ内に存在するか検索しました。
→存在しませんでした。
・tbb/blocked_range.hについて検索しました。
→インテルのTBBというライブラリに含まれるものである可能性があります。(https://www.cism.ucl.ac.be/Services/Formations/ICS/ics_2013.0.028/composerxe/Documentation/ja_JP/tbb/help/index.htm#reference/algorithms/range_concept/blocked_range_cls.htm )
しかし、Siv3Dの公式ページには特にそのようなライブラリが必要という話がなかったため入れるかどうか迷っています。容量の問題であまり入れたくありません。また、導入方法がわかりません。おそらく、(https://www.intel.com/content/www/us/en/developer/tools/oneapi/onetbb.html )のGet it nowからダウンロードできると思われますが、正しいのかどうかわかりません……
・その他、類似事例について検索しました。→Siv3Dの情報自体が少ないため、私が検索した限りでは類似事例は見つかりませんでした。

補足情報(FW/ツールのバージョンなど)

Visual Studio Code バージョン 1.72.2
g++ バージョン 9.2.0
Siv3D バージョン 0.6.5

ご不明な点がございましたら、お手数ですがコメントまでお知らせください。
何卒、ご教授お願いします。

yukkuri_55🎉を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

Twitterにて作者本人から回答をいただきました。
https://twitter.com/Reputeless/status/1581618819717828608
公式サイトで説明している手順以外では Siv3D を使うことができないようです。
Visual Studio Community2022をダウンロードしてそれをエディタとして使用することが前提のようです。
考えていただいた皆様ありがとうございました!

投稿2022/10/16 12:16

Soybeanman

総合スコア15

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問