pantheon-systems / terminus

The Pantheon CLI — a standalone utility for performing operations on the Pantheon Platform
https://pantheon.io
Other
318 stars 195 forks source link

Win10/Cygwin Installation #1443

Open WardinT opened 7 years ago

WardinT commented 7 years ago

Can't install terminus in cygwin on my win10-pc. Composer returns segmentation fault and creates stackdump when executed in terminus subdir of /usr/bin. Afterwards always - irrespective of arguments supplied - returns segmentation fault and creates stackdump until composer is reinstalled.

Stackdump:

Exception: STATUS_ACCESS_VIOLATION at rip=6FFFE670010 rax=000000060014C0D0 rbx=00000006000E2F40 rcx=00000000FFFF89A0 rdx=0000000000000024 rsi=00000006000E3080 rdi=0000000000000024 r8 =0000000000000000 r9 =0000000055555556 r10=00000006000E3080 r11=000006FFFE670010 r12=0000000000000000 r13=0000000000000000 r14=0000000000000002 r15=000006FFFF57A6B0 rbp=00000000FFFF8ED0 rsp=00000000FFFF8978 program=C:\Program Files\Cygwin\bin\php.exe, pid 93752, thread main cs=0033 ds=002B es=002B fs=0053 gs=002B ss=002B Stack trace: Frame Function Args 000FFFF8ED0 6FFFE670010 (00000000000, 00000000000, 0060030EF70, 0060014C0D0) 000FFFF8ED0 003F5DB79D0 (003F5DBC020, 00000000000, 0060030EF70, 00600000000) 000FFFF8ED0 003F5D7909C (006000E2F40, 6FFFF4CA9F8, 6FF00000007, 6FF00000000) 000FFFF8ED0 003F575F33F (6FFFF4CA9F8, 6FF00000007, 6FFFFE184F0, 6FFFF57A6B0) 6FFFF57A6B0 003F576004D (0000000012E, 003F5A9E7C0, 6FFFFE17AD0, 6FFFE80B0E0) 00000000000 003F594F325 (00000000000, 00000000000, 003F5A9E7C0, 6FFFFE13030) 00000000000 003F590D2A5 (6FFFFE80000, 000FFFFB820, 6FFFFE80000, 000FFFF9288) 00000000000 003F595DC74 (00300000008, 00000000011, 6FFFFE5C510, 000FFFFA390)

Installed php version: 7.0.14 Installed composer version 1.2.4

spiderwisp commented 7 years ago

I can confirm this same exact issue. I rectified it by using a different version of php and terminus

TeslaDethray commented 7 years ago

@WardinT @spiderwisp What what is the command you are entering when you get this result?

WardinT commented 7 years ago

I worked along the installation instructions on github. git clone worked, composer install did not, threw the error.

Am 19.12.2016 um 23:50 schrieb Sara McCutcheon:

@WardinT https://github.com/WardinT @spiderwisp https://github.com/spiderwisp What what is the command you are entering when you get this result?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/pantheon-systems/terminus/issues/1443#issuecomment-268101982, or mute the thread https://github.com/notifications/unsubscribe-auth/AXY10kLAYmu33ichsAmuJnyJ-jGhHSyIks5rJwpRgaJpZM4LK1aB.

--

Dr. Thomas Wardin • Talweg 2 • 51469 Bergisch Gladbach, Germany Phone +49 2202 108800 • Fax +49 2202 244401 • Mobile +49 171 2158565


Diese E-Mail wurde von Avast Antivirus-Software auf Viren geprüft. https://www.avast.com/antivirus

ghost commented 7 years ago

Pantheon Support sent me here from a ticket I created there. They don't have a solution for me. Pardon the long, detailed comment, but I want to really convey in real-world terms the level of exasperation I experience every time I run into a situation requiring Terminus on Windows with Pantheon.

Here’s just the latest thing I’m trying to do and how I got to this point.

I need to create a WordPress plugin, from scratch, that will grab orders from our Walmart store via its API and put them into WooCommerce.

I started with this Smashing Magazine article: https://www.smashingmagazine.com/2016/03/making-a-wordpress-plugin-that-uses-service-apis/

It says I need a PHP environment (I want to use the Pantheon Dev or a multi-dev site), my API provider (Walmart), and recommends I use Composer to manage dependencies as I create the plugin.

Can Composer be run in a Pantheon Dev or multi-dev environment? The answer “yes” is what I’m understanding in the Pantheon Composer documentation. https://pantheon.io/docs/composer/

So then I turn to Pantheon’s documentation to figure out how to get Composer working on my Pantheon Dev (or multi-dev) site.

Using that documentation successfully apparently depends on me using Terminus (see “Initialize Composer” for the commands I’m supposed to run).

I don’t have Terminus installed on Windows 10 Home (I do have 64-bit Anniversary Update build 14393 or later).

So I click on the link to the Terminus installation documentation. https://pantheon.io/docs/terminus/install/

I use Cygwin to install all the PHP modules I can find, including PHP-CURL and, I believe, PHP-CLI though it’s not explicitly shown in Cygwin’s install list. The PHP-CLI website is written in broken English and doesn’t say either way.

Assuming PHP-CLI is also installed, I go back to the try to run the Terminus install command from the command line of Cygwin, like this:

Rob@DESKTOP-2O45UCN ~
$ curl -O https://raw.githubusercontent.com/pantheon-systems/terminus-installer/master/builds/installer.phar && php installer.phar install

But that just returns the error

curl: (48) An unknown option was passed in to libcurl

So, curl is apparently installed, but what is this mysterious "unknown option" it says is being passed in to libcurl? How do I troubleshoot this? What's the next step after that? The documentation is silent and Pantheon Support has sent me here to this thread to seek help.

And this is where I’m stuck. Not knowing whether my local Cygwin install of PHP, Curl, and CLI is accurately done enough to run this remote Terminus install command.

More detail for Windows Terminus setup, in ALL Pantheon documentation that exists now and will exist in the future, is my number one wishlist item for 2017. I always cringe whenever I find that Pantheon wants me to use Terminus for anything I’m trying to do because that usually means hours and hours of me sifting through a multiplicity of steps just to get a working environment. I've never been successful doing so and I can never easily reproduce these steps from machine to machine for some reason.

spiderwisp commented 7 years ago

It would be really nice to have a resolution to this problem.

On Tue, Apr 4, 2017 at 7:11 PM, intechrahealth notifications@github.com wrote:

Pantheon Support sent me here from a ticket I created there. They don't have a solution for me. Pardon the long, detailed comment, but I want to really convey in real-world terms the level of exasperation I experience every time I run into a situation requiring Terminus on Windows with Pantheon.

Here’s just the latest thing I’m trying to do and how I got to this point.

I need to create a WordPress plugin, from scratch, that will grab orders from our Walmart store via its API and put them into WooCommerce.

I started with this Smashing Magazine article: https://www.smashingmagazine.com/2016/03/making-a- wordpress-plugin-that-uses-service-apis/

It says I need a PHP environment (I want to use the Pantheon Dev or a multi-dev site), my API provider (Walmart), and recommends I use Composer to manage dependencies as I create the plugin.

Can Composer be run in a Pantheon Dev or multi-dev environment? The answer “yes” is what I’m understanding in the Pantheon Composer documentation. https://pantheon.io/docs/composer/

So then I turn to Pantheon’s documentation to figure out how to get Composer working on my Pantheon Dev (or multi-dev) site.

Using that documentation successfully apparently depends on me using Terminus (see “Initialize Composer” for the commands I’m supposed to run).

I don’t have Terminus installed on Windows 10 Home (I do have 64-bit Anniversary Update build 14393 or later).

So I click on the link to the Terminus installation documentation. https://pantheon.io/docs/terminus/install/

I use Cygwin to install all the PHP modules I can find, including PHP-CURL and, I believe, PHP-CLI though it’s not explicitly shown in Cygwin’s install list. The PHP-CLI website is written in broken English and doesn’t say either way.

Assuming PHP-CLI is also installed, I go back to the try to run the Terminus install command from the command line of Cygwin, like this:

Rob@DESKTOP-2O45UCN ~ $ curl -O https://raw.githubusercontent.com/pantheon-systems/terminus-installer/master/builds/installer.phar && php installer.phar install

But that just returns the error

curl: (48) An unknown option was passed in to libcurl

So, curl is apparently installed, but what is this mysterious "unknown option" it says is being passed in to libcurl? How do I troubleshoot this? What's the next step after that? The documentation is silent and Pantheon Support has sent me here to this thread to seek help.

And this is where I’m stuck. Not knowing whether my local Cygwin install of PHP, Curl, and CLI is accurately done enough to run this remote Terminus install command.

More detail for Windows Terminus setup, in ALL Pantheon documentation that exists now and will exist in the future, is my number one wishlist item for

  1. I always cringe whenever I find that Pantheon wants me to use Terminus for anything I’m trying to do because that usually means hours and hours of me sifting through a multiplicity of steps just to get a working environment. I've never been successful doing so and I can never easily reproduce these steps from machine to machine for some reason.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/pantheon-systems/terminus/issues/1443#issuecomment-291684267, or mute the thread https://github.com/notifications/unsubscribe-auth/ACu1kFDAsZ7YhuZtolFDdecw6-Oc1Uc4ks5rstw6gaJpZM4LK1aB .

-- Tim Hallman SpiderWisp, LLC http://spiderwisp.com

ghost commented 7 years ago

Fixed. Reinstalled all the Cygwin packages, namely:

Then ran the terminus install command and then terminus -v to test it in the Cygwin prompt.

Who knows if it'll work the next time, but it did this time!

Now if Kalabox would just work on Windows 10 Home, I'd be all set.