質問編集履歴

4

§解決・§補足の追加

2021/03/26 03:16

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -40,7 +40,7 @@
40
40
 
41
41
 
42
42
 
43
- ### 補足情報(FW/ツールのバージョンなど)
43
+ ### 補足情報(ツールのバージョンなど)
44
44
 
45
45
  - Windows10 64bit 10.0.19042
46
46
 
@@ -51,3 +51,79 @@
51
51
  - cl.exe 19.28.29913
52
52
 
53
53
  - CMake 3.19.4
54
+
55
+
56
+
57
+ ---
58
+
59
+ ### 解決
60
+
61
+
62
+
63
+ ppaulさん,jbpb0さん,ありがとうございます.
64
+
65
+ 既にビルド済の部分はもう一度ビルドされないという事実を知りませんでした…大規模なソースからビルドするという事が初めてでしたので.
66
+
67
+ アドバイスの通り,> pythonのバージョンに絡む部分だけを削除し、python3.8を指定 してビルドしてみた所,どちらのpythonでも使えました.
68
+
69
+
70
+
71
+ ただ,初回ビルドと,pythonのバージョン設定のみ変更した2回目ビルドの時間が殆ど同じ長さであったので,もう一度ビルドする必要のない部分まで再ビルドされている様に思えましたが,opencvというよりCMakeあるいは基本的なビルドに関する知識不足の問題かと思いますので,この問題についてはもう少し調べてみます.
72
+
73
+ 取り敢えず,主要な問題であった両バージョンのpythonでcv2パッケージが使える様にしたいという目的は達成されたので,解決としておきます.
74
+
75
+
76
+
77
+ ありがとうございました.
78
+
79
+
80
+
81
+ #### 補足
82
+
83
+
84
+
85
+ 少々脱線しますがCMakeを使ってpythonに関する設定項目をver3.8を対象とした設定に直した上で,再度ビルドした際に少し嵌ったポイントがあったので一応残しておきます.CMakeの使い方の面で勘違いしていた所です.
86
+
87
+
88
+
89
+
90
+
91
+
92
+
93
+ [opencv公式チュートリアル](https://docs.opencv.org/4.5.1/d5/de5/tutorial_py_setup_in_windows.html)や[いくつかのサイト](https://qiita.com/obikata/items/7b1f08010474dafeca47)ではCMakeのgui版を使ったビルド方法が示されており,今回初めてCMakeを使うのでそれらで示されていた内容を参考に以下に示す様な手順を試していました.
94
+
95
+
96
+
97
+ 「source/buildディレクトリ,プロジェクト種類(Visual Studio 16 2019)のみを指定して「Configure」→各設定項目一覧が画面に出るので修正の必要があれば変更して再度Configure最後にGenerate」
98
+
99
+
100
+
101
+ 上の手順はインストールされているpythonのバージョンが1つの場合にはあまり問題無いのかもしれません.
102
+
103
+
104
+
105
+ ただ,
106
+
107
+
108
+
109
+ - Configureが走り始めるとPythonの自動検出が始まり,それを基に各項目を自動で設定する
110
+
111
+ - 因みに,pythonの検出について,どのバージョンのpythonにもpathが通っていない設定にしても3.9の方が検出されるので,検出されるかどうか/どのバージョンが検出されるかはpathとは関係無い模様?
112
+
113
+
114
+
115
+ - しかし,Configure後に画面に出る設定項目は全てではなく,ver3.9になっているpython関連の項目を全て3.8に書き換えても実は必要な項目を全て変更出来ていない
116
+
117
+ (gui上からアクセス出来る項目を全て3.8に変更してConfigure→Generateしてから,生成されたCMakeCache.txtを見てみると一部v3.9となっている記述が残っている.)
118
+
119
+
120
+
121
+ この問題は,初回Configureを押す前に「+Add Entry」から,pythonのとりわけバージョンに関する設定を予め追加しておく事で回避できました.
122
+
123
+
124
+
125
+ (ただ,これだとguiでは大変なので結局コマンドラインからやりました.)
126
+
127
+
128
+
129
+ コマンドの方だと,cmakeをすると基本的にはエラーが特に無ければ立て続けにconfigure→generateまで一気にされてしまうし,エラーがあれば最初からやり直す事になる様な挙動なので最初から必要な設定を全て入力する必要があり,こういう勘違いは起こらないのかもしれません.

3

微修正

2021/03/26 03:16

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -24,7 +24,7 @@
24
24
 
25
25
  の2バージョンがインストールされており,pathは3.9の方に通してある為かCMakeでビルド設定をする際にはpython3.9の方が自動検出されました.
26
26
 
27
- python3.8でもopencvを使いたいのですが,取り敢えずそのまま進めてみて,ビルドされたopencv及びpython3.9のsite-packagesディレクトリ(デフォルト設定)にインストールされたpythonパッケージがcuda系の関数含め問題無く使用出来る事を確認しました.
27
+ python3.8でもopencvを使いたいのですが,取り敢えずそのまま進めてみて,ビルドされたopencvのc++ライブラリ及びpython3.9のsite-packagesディレクトリ(デフォルト設定)にインストールされたpythonパッケージがどちらもcuda系の関数含め問題無く使用出来る事を確認しました.
28
28
 
29
29
 
30
30
 

2

微修正

2021/03/24 04:22

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -11,10 +11,6 @@
11
11
  - CUDA Toolkit 11.0 (Update1)
12
12
 
13
13
  - cuDNN 8.0.4.30 for CUDA 11.1
14
-
15
- - (Windows10 64bit)
16
-
17
-
18
14
 
19
15
 
20
16
 

1

タイトル

2021/03/24 04:19

投稿

退会済みユーザー
test CHANGED
@@ -1 +1 @@
1
- OpenCVのビルドで,複数バージョンのpython3パッケージをビルドする方法
1
+ OpenCVのビルドで,複数バージョンのpython3パッケージをビルドするか,利用可能にする方法
test CHANGED
File without changes