Windows」タグアーカイブ

Windows環境にちゃんと動くComposerを導入する

2016年1月現在においてPHPで何かを作るうえで、パッケージ管理ツール(兼、便利なクラスオートローダー)であるComposerを使う機会は多いと思います。そしてこのComposerはWindows環境においても簡単に導入できるのですが、実際にComposerを使ってパッケージを導入してみようと思うと内部でGitコマンドを呼び出していたりと動かないことがありますのでその辺まで含めて簡単にまとめてみたいと思います。

0.PHPをインストール済み

http://windows.php.net/download
既に導入済みかとは思いますがWindows版PHPをインストールしておきます。ファイルを展開し C:\php\バージョン\ あたりにでも展開、環境変数にパスを設定して、あとはphp.iniのタイムゾーンやら基本的な設定をしておきます。Windows 10は以前のWindowsに比べて環境変数が編集しやすくなってていいですね。

php環境変数設定

更に脱線すると、WebサーバはPHP内臓のビルトインサーバが使えますので、別途ApacheやXAMPP等をインストールしたりする必要は特にありません。DBを使いたい人はWindows版のMySQLなりPostgreSQLなりもどうぞ。

1.Composerをインストールする

https://getcomposer.org/
Windows版のインストーラがありますのでComposer-Setup.exeをダウンロード、実行でインストール完了です。途中、右クリックメニューにComposer関連のコマンドを追加するかのオプションが表示されますが、特に追加する必要はないかと思います。

もし、以下のような画面でインストールが失敗した場合、PHPのopensslエクステンションが有効になっていません。php.iniでopensslを有効にして再度実行してみてください。

composer_windows_openssl

php_ext_openssl

2. Git for Windowsのインストール

https://git-for-windows.github.io/
ここまででComposerの導入はできているのですが、実際に使おうと思うと内部でGitコマンドを呼んでいるなどして結局動かないことが多々あります。Gitコマンド含めLinuxコマンドも使える環境としてGit for Windowsを導入します。えっ、結局Linux互換環境入れちゃうの?と思われるかもしれませんが、基本的にComposerコマンドを使うときにコマンドプロンプトの代わりにGit Bashを開く程度で済みます。コンポーネントの選択でGit BashのチェックはデフォルトでONですので、そのままにしておきます。以下、注意が必要な選択肢。

1番目か3番目をお好みで。3番目の「Use Git and optional Unix tools from the Windows Command Prompt」を使う場合は記載の注意を要確認。

git_bash1

MinTTY(MSys2)を使います。

git_bash2

3. 使ってみる

ここまででインストール完了です。実際に使ってみます。インストール済みのGit Bashを起動します。

bit_bash_menu

おもむろに composer とタイプしてみます。動いた!

comoposer_for_gitbash

では実際にパッケージを導入してみます。今回はとりあえずCodeigniterを入れてみます。Codeigniterは公式のComposerパッケージがないのですが、@kenji_s 氏作成の使いやすい導入パッケージが利用できます。ありがたい。

CodeIgniter 3.0をコマンド一発でインストールするCodeIgniter Composer Installer

適当なインストール先ディレクトリを作成し移動、サンプルのコマンド通りに実行してみます。

composer_codeigniter

ComposerでCodeigniterが導入できました!せっかくなので動作確認まで行います。publicディレクトリまで潜り、php -S localhost:9090でビルトインサーバを起動、Webブラウザで開いてみます。

codeigniter_303_init

しっかり動いています!おしまい!

特定の環境でexFATのHDDが有ると起動しない件

既に夏ごろの話なのですが、メインPCをWindows10にリプレースするにあたって遭遇した現象。最終的にはNTFSでフォーマットしなおす結果になりました。はっきりした事は分かっていませんが、状況をメモしておきます。UEFI(BIOS)のPOST時点で起動がフリーズするのでOSは関係なさそうです。

  • 発生した状況はマザーボードにASUSTek P8Z68-M PRO、HDDはHGST HDP725050GLA360を利用している環境。
  • 再現率100%。
  • exFATのHDDは起動ドライブではない。起動ドライブはNTFSでフォーマットされたSSDを利用しておりSSDのみ繋いだ状態では問題なく起動する。
  • UEFIをその時点の最新バージョンに更新してみるも特に変わらず。
  • exFAT形式でのフォーマットはWindows7 SP1で実施。
  • どうもチップセットに関係なく同様の状況が起きているケースもある模様。
    ―(検証希望)3TBのHDDをexFATで初期化するとHDDにロックがかかる
    http://bbs.kakaku.com/bbs/K0000424008/SortID=16591024/#tab
  • NTFSでフォーマットしなおしたら改善。

sgfxk64.sysでエラーが出てWindows 10 insider previewがインストールできない場合

Windows 10 insider preview インストールの過程で sgfxk64.sys なるファイルにてエラーが出て失敗する場合がありました。対処法としては「SMSC Graphics Adapter WDDM Software」をアンインストールすることで解決します。

これは何?

よくあるUSB接続のHDMI接続アダプター同梱のドライバ、なんですが、

  • そもそも未だにWindows 8 / 8.1にも対応していない。
  • 対応しているとされるWindows 7においても、intel内臓グラフィックスの設定画面を一部開く事が出来なくなる(設定画面がクラッシュする)。
  • Web上のドライバダウンロードには「一部のウイルス対策ソフトで検知される場合」の記述

と、怪しさを感じる代物となっております。本当に安全なドライバなんでしょうか?