タグ「Python」を含む投稿[119件](2ページ目)
「error: Unable to find vcvarsall.bat」とのエラーで困ったものの解決しました。
以下、オレメモであります。
あえて gcc を使うのは Linux で標準だからです。
VSCode で gcc を使う
2023年9月10日実施
● OS
エディション: Windows11 Pro x64
バージョン: 21H2
● Visual Studio Code
バージョン: 1.74.2 (user setup)
※ ダウンロード量が 1.8GB くらいあるのでネット回線が良好な環境での作業を推奨します。
● gcc をインストールする
・gcc を GitHub からダウンロード
https://github.com/niXman/mingw-builds-b...
「Release of 13.1.0-rt_v11-rev1」の項から Windows64bit版
ダウンロード項目: x86_64-13.1.0-release-win32-seh-msvcrt-rt_v11-rev1.7z
・圧縮ファイルなので解凍する。.7z ファイルは CubeICE で解凍可能。「mingw64」フォルダが出来る。
・「mingw64」フォルダごと任意の位置に配置する。"C:\Program Files"が適当?」
・PATH を通しておく。環境変数のPATHに「mingw64\bin」を追加する。今回は"C:\Program Files\mingw64\bin"とする。
「Windowsメニュー」→「設定」→「システム」→「バージョン情報」
→「関連リンク」の行の「システムの詳細設定」をクリック。
→ ウィンドウ下の方の「環境変数」をクリック。
→ 上段のリスト、PATHの行をクリックし、「編集」をクリック。
→ 表示されたリストに"C:\Program Files\mingw64\bin"を追記する。
→ 追記したら閉じる。
・確認
コマンドプロンプトか Power Shell で次を実行
> gcc -v
もろもろ表示された最後に以下が表示されればOK。
gcc version 13.1.0 (x86_64-win32-seh-rev1, Built by MinGW-Builds project)
● Microsoft C++ Build Tools をインストールする
・microsoft のサイトよりインストーラーをダウンロード
https://visualstudio.microsoft.com/ja/vi...
※「Microsoft C++ Build Tools」で検索しても上記 URL に行きつかない。試行錯誤中、偶然行きついた。
・ブラウザの「Build Tools のダウンロード」をクリックすると「vs_BuildTools.exe」がダウンロードされる
・ダウンロードしたインストーラーを起動する。
・「Visual Studio Installer」と画面が出てファイルのダウンロードが始まる。
・画面が切り替わり、右項目「インストールの詳細」に「MSBuild Tools」が表示されているの確認。
・左項目「C++によるデスクトップ開発」をクリック。右項目「インストールの詳細」に追加されているのを確認。オプションはデフォストのまま。
・右下の「インストール」をクリック。終わるまで待つ。ダウンロード量が 1.7GB ある。かなり時間がかかる。
・終了したら Windows を再起動する。
● VSCode の設定・・・拡張機能をインストール
・C/C++ Extension Pack
・Code Runner
● VSCode の設定・・・拡張機能の設定
・Code Runner
Code-runner: Run In Terminal
→ チェックを入れる
Code-runner: Executor Map
→ settings.json をクリック
→ "c" に -fexec-charset=CP932 を書き加える
- "c" : "cd $dir && gcc $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
+ "c" : "cd $dir && gcc -fexec-charset=CP932 $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
次のサイトの例題がコンパイル出来、Python からの呼び出しで動作しました。
「PythonからC言語の関数を呼び出す(基本編)」
C/C++のライブラリを Python で呼び出せると製作の幅が広がります。
手始めにしては難しい課題ですが、DoctorMX を Python から使えるようにしてみたいですね。
#C言語 #Python
以下、オレメモであります。
あえて gcc を使うのは Linux で標準だからです。
VSCode で gcc を使う
2023年9月10日実施
● OS
エディション: Windows11 Pro x64
バージョン: 21H2
● Visual Studio Code
バージョン: 1.74.2 (user setup)
※ ダウンロード量が 1.8GB くらいあるのでネット回線が良好な環境での作業を推奨します。
● gcc をインストールする
・gcc を GitHub からダウンロード
https://github.com/niXman/mingw-builds-b...
「Release of 13.1.0-rt_v11-rev1」の項から Windows64bit版
ダウンロード項目: x86_64-13.1.0-release-win32-seh-msvcrt-rt_v11-rev1.7z
・圧縮ファイルなので解凍する。.7z ファイルは CubeICE で解凍可能。「mingw64」フォルダが出来る。
・「mingw64」フォルダごと任意の位置に配置する。"C:\Program Files"が適当?」
・PATH を通しておく。環境変数のPATHに「mingw64\bin」を追加する。今回は"C:\Program Files\mingw64\bin"とする。
「Windowsメニュー」→「設定」→「システム」→「バージョン情報」
→「関連リンク」の行の「システムの詳細設定」をクリック。
→ ウィンドウ下の方の「環境変数」をクリック。
→ 上段のリスト、PATHの行をクリックし、「編集」をクリック。
→ 表示されたリストに"C:\Program Files\mingw64\bin"を追記する。
→ 追記したら閉じる。
・確認
コマンドプロンプトか Power Shell で次を実行
> gcc -v
もろもろ表示された最後に以下が表示されればOK。
gcc version 13.1.0 (x86_64-win32-seh-rev1, Built by MinGW-Builds project)
● Microsoft C++ Build Tools をインストールする
・microsoft のサイトよりインストーラーをダウンロード
https://visualstudio.microsoft.com/ja/vi...
※「Microsoft C++ Build Tools」で検索しても上記 URL に行きつかない。試行錯誤中、偶然行きついた。
・ブラウザの「Build Tools のダウンロード」をクリックすると「vs_BuildTools.exe」がダウンロードされる
・ダウンロードしたインストーラーを起動する。
・「Visual Studio Installer」と画面が出てファイルのダウンロードが始まる。
・画面が切り替わり、右項目「インストールの詳細」に「MSBuild Tools」が表示されているの確認。
・左項目「C++によるデスクトップ開発」をクリック。右項目「インストールの詳細」に追加されているのを確認。オプションはデフォストのまま。
・右下の「インストール」をクリック。終わるまで待つ。ダウンロード量が 1.7GB ある。かなり時間がかかる。
・終了したら Windows を再起動する。
● VSCode の設定・・・拡張機能をインストール
・C/C++ Extension Pack
・Code Runner
● VSCode の設定・・・拡張機能の設定
・Code Runner
Code-runner: Run In Terminal
→ チェックを入れる
Code-runner: Executor Map
→ settings.json をクリック
→ "c" に -fexec-charset=CP932 を書き加える
- "c" : "cd $dir && gcc $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
+ "c" : "cd $dir && gcc -fexec-charset=CP932 $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
次のサイトの例題がコンパイル出来、Python からの呼び出しで動作しました。
「PythonからC言語の関数を呼び出す(基本編)」
C/C++のライブラリを Python で呼び出せると製作の幅が広がります。
手始めにしては難しい課題ですが、DoctorMX を Python から使えるようにしてみたいですね。
#C言語 #Python
「Open DMX USB」をオリジナルのアプリで使うことを考えていきますと「DoctorMX」も使えたらなと思ってしまいます。
開発・販売元のクワテックさんでは DoctorMX を使うためのライブラリとサンプルコードを公開してくださってます。C/C++ 向けですが、サンプルコードは私でも読めるので扱えるかもしれません(その昔は全く理解出来ませんでした。ちょっと感動。)。
小屋卓のPC版を作るかはともかく、DoctorMX と Open DMX USB の扱い方を習得しておくのはいいかもしれません。
2023年9月現在、クワテックさんから DoctorMX の Python ライブラリの提供はありません。リクエストしたら作ってくれそうな気もしますが、まずは自力で解決を目指しましょう。工夫や努力もせずに安易なリクエストをされるのは私も嫌ですしね。
「PythonからC言語の関数を呼び出す(基本編)」
追記
上記がコンパイル出来るか試みましたがエラーを吐いて終わらない。
「error: Unable to find vcvarsall.bat」とのこと。
なんじゃこりゃ!?
環境は VSCode の上で gcc です。
日本語サイトには直球な解決策は見つかりませんでしたが、某英語サイトに「Microsoft Visual C++ Build Tools」を入れたら解決するとの書き込み。
Microsoft Visual C++ ビルド ツールをインストールする
システムに Microsoft Visual C++ がインストールされていない場合、または古いバージョンがインストールされている場合は、Microsoft Visual C++ Build Tools をダウンロードしてインストールできます。Microsoft Visual C++ Build Tools には、Windows 上で C++ コードをビルドするために必要な環境変数とツールが含まれています。
Microsoft Visual C++ Build Tools をインストールする手順は次のとおりです。
1:Visual Studio Build Tools Web サイトに移動します。
2:インストーラーをダウンロードして実行します。
3:「C++ ビルド ツール」ワークロードを選択します。
4:「インストール」をクリックします。
開演時間になったのでお試しはお預けですが、2時間ほど悩んでいたので期待感大。
#Python #器具の製作
開発・販売元のクワテックさんでは DoctorMX を使うためのライブラリとサンプルコードを公開してくださってます。C/C++ 向けですが、サンプルコードは私でも読めるので扱えるかもしれません(その昔は全く理解出来ませんでした。ちょっと感動。)。
小屋卓のPC版を作るかはともかく、DoctorMX と Open DMX USB の扱い方を習得しておくのはいいかもしれません。
2023年9月現在、クワテックさんから DoctorMX の Python ライブラリの提供はありません。リクエストしたら作ってくれそうな気もしますが、まずは自力で解決を目指しましょう。工夫や努力もせずに安易なリクエストをされるのは私も嫌ですしね。
「PythonからC言語の関数を呼び出す(基本編)」
追記
上記がコンパイル出来るか試みましたがエラーを吐いて終わらない。
「error: Unable to find vcvarsall.bat」とのこと。
なんじゃこりゃ!?
環境は VSCode の上で gcc です。
日本語サイトには直球な解決策は見つかりませんでしたが、某英語サイトに「Microsoft Visual C++ Build Tools」を入れたら解決するとの書き込み。
Microsoft Visual C++ ビルド ツールをインストールする
システムに Microsoft Visual C++ がインストールされていない場合、または古いバージョンがインストールされている場合は、Microsoft Visual C++ Build Tools をダウンロードしてインストールできます。Microsoft Visual C++ Build Tools には、Windows 上で C++ コードをビルドするために必要な環境変数とツールが含まれています。
Microsoft Visual C++ Build Tools をインストールする手順は次のとおりです。
1:Visual Studio Build Tools Web サイトに移動します。
2:インストーラーをダウンロードして実行します。
3:「C++ ビルド ツール」ワークロードを選択します。
4:「インストール」をクリックします。
開演時間になったのでお試しはお預けですが、2時間ほど悩んでいたので期待感大。
#Python #器具の製作
VLC が入っていて Python を入れていないパソコンが一台あったので exeファイルを試してみました。
問題なく動きます。
python-vlc は VLC を入れていなくても動くハズですが、入れておいた方がいいのかもしれません。
VLC をアンインストールして試す手もありますが、DLL などが残る可能性もあるので、一度 VLC に触れたパソコンはインストール済みと思うしかありません。
いずれにしても、VLC のインストールを推奨することにしましょう。
「VLC media player」
とても便利なアプリです。特にこだわりがなければ、デフォルトアプリとしてもお勧めする一品です。
#Python #タイムコード
問題なく動きます。
python-vlc は VLC を入れていなくても動くハズですが、入れておいた方がいいのかもしれません。
VLC をアンインストールして試す手もありますが、DLL などが残る可能性もあるので、一度 VLC に触れたパソコンはインストール済みと思うしかありません。
いずれにしても、VLC のインストールを推奨することにしましょう。
「VLC media player」
とても便利なアプリです。特にこだわりがなければ、デフォルトアプリとしてもお勧めする一品です。
#Python #タイムコード
pyinstaller でexeファイルを作ってみましたが環境によって微妙な不具合が出ます。原因は不明ですが、pyinstaller の操作手順かもしれません。
「PyinstallerでPythonプログラムをexe化する手順書(Windows編)」
上記を参考に作った exeファイルは自分の環境では問題なく動いたのですが、ここに一工夫加えてみようと思います。
仮想環境での実行が推奨されていますが、pyinstaller 自体も仮想環境にインストールするべきなのかもしれません。別の先達情報にはその様に書かれている物があります。
「PyInstallerを使ってみた」
追記
作業手順のオレメモ。
仮想環境に pyinstaller を入れての実行の方が良いようです。
作業ディレクトリに移動
> cd <作業ディレクトリ>
pipenv をインストール
> pip install pipenv
pipenv で使う python のバージョンを指定
> pipenv --python 3.9
pipenv(仮想環境)を開始
> pipenv shell
仮想環境にpyinstaller をインストール
> pipenv install -d pyinstaller
必要なライブラリをインストール
> pipenv install pyserial
> pipenv install PySimpleGUI
> pipenv install python-vlc
・・・etc
ビルドする
> pyinstaller ltcplayer.py --clean --noconcole --onefile
・・・数分で終わる。
作業ディレクトリ内の distフォルダ内 に ltcplayer.exe が出来ている。
終了なら仮想環境のshellから抜ける
> exit
仮想環境を削除
> pipenv --rm
作業ディレクトリは Python のソースコードがある階層でもいいのだけれど、
ゴチャゴチャするので私は一つ下の階層で作業をしています。
ソースコードがある階層で
> mkdir env
> cd env
> pyinstaller ..\ltcplayer.py --clean --noconcole --onefile
相対パスでソースコードを一つ上の階層として呼びます。
お好みですけど。
#Python #タイムコード
「PyinstallerでPythonプログラムをexe化する手順書(Windows編)」
上記を参考に作った exeファイルは自分の環境では問題なく動いたのですが、ここに一工夫加えてみようと思います。
仮想環境での実行が推奨されていますが、pyinstaller 自体も仮想環境にインストールするべきなのかもしれません。別の先達情報にはその様に書かれている物があります。
「PyInstallerを使ってみた」
追記
作業手順のオレメモ。
仮想環境に pyinstaller を入れての実行の方が良いようです。
作業ディレクトリに移動
> cd <作業ディレクトリ>
pipenv をインストール
> pip install pipenv
pipenv で使う python のバージョンを指定
> pipenv --python 3.9
pipenv(仮想環境)を開始
> pipenv shell
仮想環境にpyinstaller をインストール
> pipenv install -d pyinstaller
必要なライブラリをインストール
> pipenv install pyserial
> pipenv install PySimpleGUI
> pipenv install python-vlc
・・・etc
ビルドする
> pyinstaller ltcplayer.py --clean --noconcole --onefile
・・・数分で終わる。
作業ディレクトリ内の distフォルダ内 に ltcplayer.exe が出来ている。
終了なら仮想環境のshellから抜ける
> exit
仮想環境を削除
> pipenv --rm
作業ディレクトリは Python のソースコードがある階層でもいいのだけれど、
ゴチャゴチャするので私は一つ下の階層で作業をしています。
ソースコードがある階層で
> mkdir env
> cd env
> pyinstaller ..\ltcplayer.py --clean --noconcole --onefile
相対パスでソースコードを一つ上の階層として呼びます。
お好みですけど。
#Python #タイムコード
Python でファイル保存するには次の方法がお手軽みたい。
「pythonでlistをファイルに保存し、読み込む方法(numpyも同様!)」
上記内の「pickleを使用する方法(おすすめ!)」です。
ここでは list を保存する方法として書かれていますが tuple でもOK。もちろん、list や dict を含む異なる型をテキトウに突っ込んだ tuple でもOK。Python で一つの変数として扱える状態にしてから pickle.dump でファイルに入れれば何でもいいみたい。読出しは load すれば pickle.dump する直前の状態で変数に格納されます。変数のまんま保存し変数のまんま読み出せるイメージです。
やりたいことは list 型のセットリストと諸々のステータスの保存/読出しです。これらを tuple にまとめれば一括で扱えるみたいです。
ファイル保存は手続きが面倒ってイメージがありましたが、これは楽チンです。
追加オレメモ。
「Pythonでファイル、ディレクトリ(フォルダ)の存在確認」
「Pythonでディレクトリ(フォルダ)を作成するmkdir, makedirs」
「Python ファイルのコピーと移動」
こういった基本的なことが凄く簡単なのは Python のすばらしさ。
この様な操作を整理しているのは、データを他のパソコンに持って行く前提で、音源ファイルをセットリストファイルと同じフォルダに置きたいからです。
pyinstaller を使って実行ファイル化(.exe化)してみました。この状態にすると Python をインストールしていないパソコンでも動きます。操作は簡単ですし中身を隠せていいかも。
モノは試しにアップしてみました。Windows11の64bitでしか試していませんが、64bitならWindows10でも動くと思われます。
LtcPlayer
セットリストの保存機能が未実装のβ版です。モノ好き大好き自己責任でお楽しみください。
LTC の出力には専用インターフェースが必要です。これが無ければ単なる音楽プレーヤーです。
専用インターフェースのことを LTC Generator と呼んでいますが販売するかは検討中です。ノンクレーム返品可で少数販売でしょうか?手作りなので数を作れませんしサポートしきれませんし。
#タイムコード #Python
「pythonでlistをファイルに保存し、読み込む方法(numpyも同様!)」
上記内の「pickleを使用する方法(おすすめ!)」です。
ここでは list を保存する方法として書かれていますが tuple でもOK。もちろん、list や dict を含む異なる型をテキトウに突っ込んだ tuple でもOK。Python で一つの変数として扱える状態にしてから pickle.dump でファイルに入れれば何でもいいみたい。読出しは load すれば pickle.dump する直前の状態で変数に格納されます。変数のまんま保存し変数のまんま読み出せるイメージです。
やりたいことは list 型のセットリストと諸々のステータスの保存/読出しです。これらを tuple にまとめれば一括で扱えるみたいです。
ファイル保存は手続きが面倒ってイメージがありましたが、これは楽チンです。
追加オレメモ。
「Pythonでファイル、ディレクトリ(フォルダ)の存在確認」
「Pythonでディレクトリ(フォルダ)を作成するmkdir, makedirs」
「Python ファイルのコピーと移動」
こういった基本的なことが凄く簡単なのは Python のすばらしさ。
この様な操作を整理しているのは、データを他のパソコンに持って行く前提で、音源ファイルをセットリストファイルと同じフォルダに置きたいからです。
pyinstaller を使って実行ファイル化(.exe化)してみました。この状態にすると Python をインストールしていないパソコンでも動きます。操作は簡単ですし中身を隠せていいかも。
モノは試しにアップしてみました。Windows11の64bitでしか試していませんが、64bitならWindows10でも動くと思われます。
LtcPlayer
セットリストの保存機能が未実装のβ版です。モノ好き大好き自己責任でお楽しみください。
LTC の出力には専用インターフェースが必要です。これが無ければ単なる音楽プレーヤーです。
専用インターフェースのことを LTC Generator と呼んでいますが販売するかは検討中です。ノンクレーム返品可で少数販売でしょうか?手作りなので数を作れませんしサポートしきれませんし。
#タイムコード #Python