FriendsOfPHP / pickle

PHP Extension installer
Other
1.65k stars 88 forks source link

fix issue#253 window install failed #260

Open xiaoliwang opened 2 years ago

xiaoliwang commented 2 years ago

Fixes https://github.com/FriendsOfPHP/pickle/issues/253

  1. Remove undefined method Binary::setInput and DependencyLib::setInput
  2. Support Additional .ini Path
  3. Support deplister.exe not in Path
  4. Implementing PHPUnzipper function exttactTo
excitedbox commented 1 year ago

box fails at compiling your fix to a phar. please post a release to your fork.

gphg commented 1 year ago

This PR fixed the issue I'm having on Windows. Please merge this PR as soon as possible.

box fails at compiling your fix to a phar. please post a release to your fork.

I managed to build .phar file from this PR and install redis PHP extension myself. As listened on phpredis INSTALL.md. Here the procedure how I build this:

  1. get box installed.
    • The box2 version listed on README.md abandoned.
    • On my side, I get it installed as a composer global package.
  2. git clone the source repo, then cd pickle
  3. install required dependencies: composer install --no-dev --optimize-autoloader
    • On Windows's cmd, it might fails because it requires patch.exe. I had to switch to Git's bash.exe shell.
  4. execute box build

The binary is available under bin directory.

This is the output on how I install redis.

> bin\pickle.bat install redis
+---------------+----------------------+
| php Path      | C:\xampp\php\php.exe |
| php Version   | 7.4.33               |
| Compiler      | vc15                 |
| Architecture  | x64                  |
| Thread safety | yes                  |
| Extension dir | C:\xampp\php\ext     |
| php.ini       | C:\xampp\php\php.ini |
+---------------+----------------------+
downloading https://windows.php.net/downloads/pecl/releases/redis/5.3.7/php_redis-5.3.7-7.4-ts-vc15-x64.zip
 667099/667099 [============================] 100%Extracting archives...
copying C:\xampp\tmp\pickle-redis\php_redis.dll to C:\xampp\php\ext\php_redis.dll