/ usr / local / bin: / usr / bin: до конца $ PATH, а не вверху - PullRequest
6 голосов
/ 07 февраля 2012

Я пытаюсь код ICU с помощью компоновщика MSVC.Тем не менее, запуск Cygwin помещает / usr / local / bin и / usr / bin перед путем, в результате чего link.exe всегда вызывает версию Cygwin, а не версию MSVC.Как я могу исправить эту проблему конфигурации?В настоящее время я запускаю командную строку VS, затем запускаю cygwin.bat.

/ usr / local / bin: / usr / bin: / cygdrive / c / Program Files (x86) / Microsoft F # /v4.0: / cygdr ive / c / Program Files (x86) / Microsoft Visual Studio 10.0 / VSTSDB / Развернуть: / cygdrive / c / Program Files (x86) / Microsoft Visual Studio 10.0 / Common7 / IDE: / cygdrive / c /Файлы Program (x86) / Microsoft Visual Studio 10.0 / VC / BIN: / cygdrive / c / Program Files (x86) / Microsoft Visual Studio 10.0 / Common7 / Инструменты: /cygdrive/c/Windows/Microsoft.NET/F ramework /v4.0.30319: /cygdrive/c/Windows/Microsoft.NET/Framework/v3.5: / cygdrive / c / Program Files (x86) / Microsoft Visual Studio 10.0 / VC / VCPackages: / cygdrive / c / Prog ram Файлы (x86) / HTML Help Workshop: / cygdrive / c / Program Files (x86) / Microsoft Visual Studio 10.0 / Средства управления командой / Инструменты производительности: / cygdrive / c / Program Files (x86) / Mic rosoft SDKs / Windows / v7.0A/ bin / NETFX 4.0 Tools: / cygdrive / c / Program Files (x86) / Mi crosoft SDKs / Windows / v7.0A / bin: / cygdrive / c / Program Files / Общие файлы / Microsoft Shared / Windows Live: / cygдиск / c / Windows / system32: / cygdrive / c / Windows: / cygdrive / c /Windows/System32/Wbem:/cygdrive/c/Windows/System32/WindowsPowerShell/v1.0:/cygd rive / c / Program Files ((x86) / Microsoft SQL Server / 100 / Инструменты / Binn: / cygdrive / c / Progr am Files / Microsoft SQL Server / 100 / Инструменты / Binn: / cygdrive / c / Программные файлы / Microsoft SQL Server / 100 / DTS / Binn:/ cygdrive / c / Файлы программ (x86) / Microsoft ASP.NET/ASP.N ET Web Pages / v1.0: / cygdrive / c / Файлы программ / TortoiseHg: / cygdrive / c / Файлы программ (x86) / GtkSharp /2.12 / bin: / cygdrive / c / Users / tim / AppData / Roaming / npm: / cygdrive / c / P Файлы программы (x86) / nodejs: / cygdrive / c / Файлы программы (x86) / Общие файлы / Intuit / QBPOSSDKRuntime: / cygdrive / c / Program Files (x86) / Git / cmd

ICU сообщает мне

Убедитесь, что порядок PATH - MSVC, Cygwin,а затем другие пути.Сценарию конфигурации требуются определенные инструменты в Cygwin (например, grep).

Update. Мой cygwin.bat выглядит следующим образом:

@ echo off

C: chdir C: \ cygwin \ bin

bash --login -i

Не очень полезно.

Ответы [ 2 ]

7 голосов
/ 07 февраля 2012

Для установки Cygwin по умолчанию PATH установлен в / etc / profile. Вы можете изменить PATH, добавив, а не добавив / usr / local / bin: / usr / bin.

# PATH="/usr/local/bin:/usr/bin:${PATH}"
PATH="${PATH}:/usr/local/bin:/usr/bin/"

В результате:

Setting environment for using Microsoft Visual Studio 2010 x86 tools.

C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC>c:\cygwin\cygwin.bat

tim@xxx ~
$ printenv PATH
/cygdrive/c/Program Files (x86)/Microsoft F#/v4.0:/cygdrive/c/Program Files (x86
)/Microsoft Visual Studio 10.0/VSTSDB/Deploy:/cygdrive/c/Program Files (x86)/Mic
rosoft Visual Studio 10.0/Common7/IDE:/cygdrive/c/Program Files (x86)/Microsoft
Visual Studio 10.0/VC/BIN:/cygdrive/c/Program Files (x86)/Microsoft Visual Studi
o 10.0/Common7/Tools:/cygdrive/c/Windows/Microsoft.NET/Framework/v4.0.30319:/cyg
drive/c/Windows/Microsoft.NET/Framework/v3.5:/cygdrive/c/Program Files (x86)/Mic
rosoft Visual Studio 10.0/VC/VCPackages:/cygdrive/c/Program Files (x86)/HTML Hel
p Workshop:/cygdrive/c/Program Files (x86)/Microsoft Visual Studio 10.0/Team Too
ls/Performance Tools:/cygdrive/c/Program Files (x86)/Microsoft SDKs/Windows/v7.0
A/bin/NETFX 4.0 Tools:/cygdrive/c/Program Files (x86)/Microsoft SDKs/Windows/v7.
0A/bin:/cygdrive/c/Program Files/Common Files/Microsoft Shared/Windows Live:/cyg
drive/c/Windows/system32:/cygdrive/c/Windows:/cygdrive/c/Windows/System32/Wbem:/
cygdrive/c/Windows/System32/WindowsPowerShell/v1.0:/cygdrive/c/Program Files (x8
6)/Microsoft SQL Server/100/Tools/Binn:/cygdrive/c/Program Files/Microsoft SQL S
erver/100/Tools/Binn:/cygdrive/c/Program Files/Microsoft SQL Server/100/DTS/Binn
:/cygdrive/c/Program Files (x86)/Microsoft ASP.NET/ASP.NET Web Pages/v1.0:/cygdr
ive/c/Program Files/TortoiseHg:/cygdrive/c/Program Files (x86)/GtkSharp/2.12/bin
:/cygdrive/c/Users/tim/AppData/Roaming/npm:/cygdrive/c/Program Files (x86)/nodej
s:/cygdrive/c/Program Files (x86)/Common Files/Intuit/QBPOSSDKRuntime:/cygdrive/
c/Program Files (x86)/Git/cmd:/usr/local/bin:/usr/bin/

tim@xxx ~
$ which link
/cygdrive/c/Program Files (x86)/Microsoft Visual Studio 10.0/VC/BIN/link
6 голосов
/ 29 июня 2015

Я думаю, что более чистый метод - использовать переменную ORIGINAL_PATH, созданную в /etc/profile Cygwin.Вместо изменения этого файла измените ваш .bashrc файл, чтобы использовать ORIGINAL_PATH, а затем добавьте /usr/local/bin и /usr/bin.

.bashrc:

export PATH=$ORIGINAL_PATH:/usr/local/bin:/usr/bin

Тогда вы не сможетене нужно изменять установочные файлы Cygwin.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...