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

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

新規登録して質問してみよう
ただいま回答率
85.46%
Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

C++

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

Q&A

解決済

1回答

1117閲覧

C++のプログラムを動かしたいのですがわかりません。

退会済みユーザー

退会済みユーザー

総合スコア0

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

C++

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

0グッド

0クリップ

投稿2021/11/17 07:58

C++のプログラムを動かしいのですが、どうすればいいのかわかりません。
間違っていたら(やらなくてもいいこと、プログラム等)教えてください。

自分がやったことは、

clang: error: linker command failed with exit code 1 (use -v to see invocation)

最初に上記のエラーが出たので、MacでC++を使ってOpenCVをした時の詰まったとこまとめて見たを参考に行いましたが、結果が変わらなかったので、
【Swift】CocoaPods導入手順を参考に入れたのですが

[!] No `Podfile' found in the project directory.

というエラーが出てきました。
Podfileがないというのですが、そもそも必要ない気がしてしまい、自分がどうしたらいいのかわかりません。
どなたか教えてください。

環境はMacOSです。

プログラムはこちらのサイトのvirtualcamera.cppです。
文字制限のため載せれませんでした。

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

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

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

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

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

episteme

2021/11/17 10:35

> 自分がやったことは、 > clang: error: linker command failed with exit code 1 (use -v to see invocation) それは やったこと ではなく「やった結果」でしょ。 「やったこと」はなんですか?
退会済みユーザー

退会済みユーザー

2021/11/18 04:08

やったことは、その下に書いてあることです。 文章をどのように直せばいいでしょうか? 自分がやったことは、 clang: error: linker command failed with exit code 1 (use -v to see invocation) 最初に上記のエラーが出たので ↓ 自分がやったことは、 clang: error: linker command failed with exit code 1 (use -v to see invocation) のエラーが出たので の方がわかりやすいですか? 文章が不出来ですみません。
jbpb0

2021/11/18 04:41 編集

質問者さん 「何か」をしたから、 > clang: error: linker command failed with exit code 1 (use -v to see invocation) が表示されたのですよね その「何か」も質問に書いてくれって、epistemeさんは言ってるのだと思いますよ https://github.com/gabrieleilertsen/hdrcnn/tree/master/training_code に書かれてる gcc -Wall -lm -lstdc++ -lopencv_core -lopencv_imgproc -lopencv_imgcodecs virtualcamera.cpp -o virtualcamera をやったのですか?
退会済みユーザー

退会済みユーザー

2021/11/18 04:43

なるほど、そう言うことでしたか、 その通りです。 gcc -Wall -lm -lstdc++ -lopencv_core -lopencv_imgproc -lopencv_imgcodecs virtualcamera.cpp -o virtualcamera を行った結果です。 自分がわかっていることを省略して書いてしまいました。 大変申し訳ございませんでした。
guest

回答1

0

ベストアンサー

古いバージョンのOpenCV用に書かれてるので、最近のバージョンでコンパイルするには、下記の修正が必要です

c++

1 host_im = cv::imread(fname.c_str(), CV_LOAD_IMAGE_COLOR|CV_LOAD_IMAGE_ANYDEPTH);

c++

1 host_im = cv::imread(fname.c_str(), IMREAD_COLOR|IMREAD_ANYDEPTH);

 .

c++

1 cv::cvtColor(host_im, host_im, CV_BGR2RGB, 0);

c++

1 cv::cvtColor(host_im, host_im, COLOR_BGR2RGB, 0);

 .

c++

1 cvtColor(host_roi8, host_roi8, CV_BGR2RGB);

c++

1 cvtColor(host_roi8, host_roi8, COLOR_BGR2RGB);

 .

c++

1 compression_params.push_back(CV_IMWRITE_JPEG_QUALITY);

c++

1 compression_params.push_back(IMWRITE_JPEG_QUALITY);

 .

c++

1 cvtColor(host_roi,host_roi,CV_RGB2HSV);

c++

1 cvtColor(host_roi,host_roi,COLOR_RGB2HSV);

 .

c++

1 cvtColor(host_roi,host_roi,CV_HSV2RGB);

c++

1 cvtColor(host_roi,host_roi,COLOR_HSV2RGB);

 

当方の、brewでOpenCVをインストールしてあるMacでは、上記修正を行ってから、ターミナルで「util.h」と「virtualcamera.cpp」があるディレクトリにcdしてから、下記のコマンドでコンパイルできました

sh

1g++ -std=c++11 virtualcamera.cpp -o virtualcamera `pkg-config --cflags opencv4` `pkg-config --libs opencv4`

投稿2021/11/17 08:49

jbpb0

総合スコア7653

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

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

退会済みユーザー

退会済みユーザー

2021/11/18 04:30

$ g++ -std=c++11 virtualcamera.cpp -o virtualcamera `pkg-config --cflags opencv4` `pkg-config --libs opencv4` virtualcamera.cpp:133:45: error: use of undeclared identifier 'IMAGE_COLOR' host_im = cv::imread(fname.c_str(), IMAGE_COLOR|CV_LOAD_IMAGE_ANYDEPTH); ^ virtualcamera.cpp:133:57: error: use of undeclared identifier 'CV_LOAD_IMAGE_ANYDEPTH' host_im = cv::imread(fname.c_str(), IMAGE_COLOR|CV_LOAD_IMAGE_ANYDEPTH); ^ virtualcamera.cpp:149:40: error: use of undeclared identifier 'COKOR_BGR2RGB'; did you mean 'COLOR_BGR2RGB'? cv::cvtColor(host_im, host_im, COKOR_BGR2RGB, 0); ^~~~~~~~~~~~~ COLOR_BGR2RGB /usr/local/opt/opencv/include/opencv4/opencv2/imgproc.hpp:545:5: note: 'COLOR_BGR2RGB' declared here COLOR_BGR2RGB = 4, ^ 3 errors generated. なにか、間違えているでしょうか? (実行してすぐに返信したため、今現在自分も原因がないか調べています。)
退会済みユーザー

退会済みユーザー

2021/11/18 04:35

スペルを間違えているのがわかりました。 直します。
jbpb0

2021/11/18 04:36

> 3 errors generated. と書かれてるように、三ヶ所間違えてます 回答を見て自分で書くと間違えるので、回答からコピペしてください
退会済みユーザー

退会済みユーザー

2021/11/18 04:38

コンパイルできました。 本当に有難うございます。
退会済みユーザー

退会済みユーザー

2021/11/18 05:43

続きで申し訳ないのですが、コンパイルした後に cd ../ python3 hdrcnn_train.py をしたところ $ python3 hdrcnn_train.py WARNING:tensorflow:From /Users/1831083/Library/Python/3.7/lib/python/site-packages/tensorlayer/layers/core.py:39: The name tf.GraphKeys is deprecated. Please use tf.compat.v1.GraphKeys instead. WARNING:tensorflow:From /Users/1831083/Library/Python/3.7/lib/python/site-packages/tensorlayer/layers/pooling.py:66: The name tf.nn.max_pool is deprecated. Please use tf.nn.max_pool2d instead. Traceback (most recent call last): File "hdrcnn_train.py", line 148, in <module> frames = [name for name in sorted(os.listdir(data_dir_bin)) if os.path.isfile(os.path.join(data_dir_bin, name))] FileNotFoundError: [Errno 2] No such file or directory: 'training_data/bin' となってしまいました。 本当は新たな質問を作成するべきなのでしょうが、このプログラムの構造を知っているjbpb0さんにしかお聞きできないので、ここで質問しました。 'training_data/bin'がないというエラー文なのは調べてわかったのですが、これはどうしたらいいのでしょうか? 何卒お願い致します。
jbpb0

2021/11/18 06:13

https://github.com/gabrieleilertsen/hdrcnn/blob/master/training_code/hdrcnn_train.py を見てください 65行目で、「data_dir」に「training_data」を代入してる 107行目で、「data_dir」と「bin」を連結して、「data_dir_bin」に代入してる 結果、「data_dir_bin」に「training_data/bin」が入ってる それをどうしたらいいのかは、知りません というか、 https://github.com/gabrieleilertsen/hdrcnn/tree/master/training_code の「Training procedure」に書いてるコマンド実行例では、 > python3 hdrcnn_train.py に、いろいろオプション付けてますよね それ付けなくてもいいのですか? (知らんけど)
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.46%

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

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

質問する

関連した質問