Where can I set path to make.exe on Windows? - c++

When I try run make from cmd-console on Windows, it runs Turbo Delphi's make.exe but I need MSYS's make.exe. There is no mention about Turbo Delphi in %path% variable, maybe I can change it to MSYS in registry?

The path is in the registry but usually you edit through this interface:
Go to Control Panel -> System -> System settings -> Environment Variables.
Scroll down in system variables until you find PATH.
Click edit and change accordingly.
BE SURE to include a semicolon at the end of the previous as that is the delimiter, i.e. c:\path;c:\path2
Launch a new console for the settings to take effect.

Here I'm providing solution to setup Terraform environment variable in windows for beginners.
Download the terraform ZIP file from Terraform site.
Extract the .exe from the ZIP file to a folder eg C:\Apps\Terraform
copy this path location like C:\Apps\terraform\
Add the folder location to your PATH variable, eg: Control Panel -> System -> System settings -> Environment Variables
In System Variables, select Path > edit > new > Enter the location of the Terraform .exe, eg C:\Apps\Terraform then click OK
Open a new CMD/PowerShell and the Terraform command should work

Or you can just run this PowerShell command to append extra folder to the existing path:
$env:Path += ";C:\temp\terraform"

To add a PERSISTENT path (eg one that's permanent), you can do this one-liner in PowerShell (adjust the last c:\apps\terraform part)
Set-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment' -Name PATH -Value (((Get-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment' -Name PATH).path) + ";c:\apps\terraform" )
Alternatively, you can jump directly to the Environment Variables dialog by RUNning/CMD/PowerShell this:
rundll32.exe sysdm.cpl,EditEnvironmentVariables

I had issues for a whilst not getting Terraform commands to run unless I was in the directory of the exe, even though I set the path correctly.
For anyone else finding this issue, I fixed it by moving the environment variable higher than others!

Why don't you create a bat file makedos.bat containing the following line?
c:\DOS\make.exe %1 %2 %5
and put it in C:\DOS (or C:\Windowsè or make sure that it is in your %path%)
You can run from cmd, SET and it displays all environment variables, including PATH.
In registry you can find environment variables under:
HKEY_CURRENT_USER\Environment
HKEY_CURRENT_USER\Volatile Environment
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment

just copy it to system32 call make1 or whatever if the name conflicts.

Related

Generate shell doesn't work on Windows Toolbox

I enabled Generate shell script on Toolbox and I am sure have added the C:\Windows to path environment variables.
But it claims the webstorm is not a program, why?
You need to add the path that you used to export the generated shell scripts.
Ex.: If you set the path of the "Generate shell scripts" option to "C:/Shell Scripts" (without quotes of course); You need to add this path to your environment variables
What about changing your shell location to A custom path but not the system's path(e.g. c:\myshells)
then add your path to the system environment.
The "Select" function of my toolbox is not working, I need to fill the path on myself.

set the OpenSSL_HOME variable

I am trying to configuring HTTPS based on this tutorial:
Configuring HTTPS for your Elastic Beanstalk Environment
I am stuck at the following section:
To set the OpenSSL_HOME variable
Enter the path to the OpenSSL installation:
c:\ set OpenSSL_HOME=path_to_your_OpenSSL_installation
My openSSL is installed in c:\OpenSSL, so would I write set OpenSSL_HOME=C:\ OpenSSL?
Do I enter such command in Command Prompt?
Finally this step:
To include OpenSSL in your path
Open a terminal or command interface and enter the appropriate command for your operating system:
c:\ set Path=OpenSSL_HOME\bin;%Path%
My %Path% here would be what?
My openSSL is installed in c:\OpenSSL, so would I write set OpenSSL_HOME=C:\ OpenSSL?
Yes, but without the space after C:\:
set OpenSSL_HOME=C:\OpenSSL
Do I enter such command in Command Prompt?
You can. Do note, however, that with this approach, you would be modifying the OpenSSL_HOME environment variable for that particular command window only, and it would be accessible only to processes that are run from that same window. As soon as you close the window, your variable disappears.
If you need to make it persistent, especially through reboots, you have to configure the OS's global environment instead. On Windows, right-click on My Computer, go to Properties, Advanced system settings, Environment Variables, and add a new entry for your variable.
My %Path% here would be what?
That is an existing environment variable. You are modifying the existing Path, so by including %Path% to the end of your assignment, you preserve the existing Path so that existing paths can still be accessed.
Fir, note that the example in the documentation is wrong. It should be this instead:
c:\ set Path=%OpenSSL_HOME%\bin;%Path%
With that said, lets say for example that Path already contains a value of C:\Windows\;etc. After the assignment, the new Path will be C:\OpenSSL\bin;C:\Windows\;etc

wsimport is not recognized as internal or external command

I am trying to generate the files using wsimport and i am getting the above error. I have done the following steps:
1) JAVA_HOME -set to C:\Program Files\Java\jre7
2) c:\Desktop\Temp>wsimport http://www.w3schools.com/webservices/tempconvert.asmx?WSDL -extension -keep
running the above command results in error.
I have also tried appending /bin to the JAVA_HOME but it does not remove the error.
You need a JDK, not JRE. XJC is not a part of JRE bin.
JAVA_HOME variable does not include bin:
JAVA_HOME=C:\Programme\Java\jdk1.6.0_29
However PATH should include %JAVA_HOME%\bin.
This is where my jdk is, works for my system:
Go to My computer >> right click and select properties.
On the properties tab select Advanced system settings (Windows 7)
Click enviroment variables
select path and click edit option
add
";C:\Program Files\Java\jdk1.7.0_60\bin"
at the end.
Done.
This fixed my problem:
If you are 100% sure that everything is set-up.Try to close cmd and reopen it. It should start recognizing it.

Use system() to call executable in a changing directory

I am writing a simple C++ helpertool for a popular game (League of Legends), targeted at windows users.
I wish to allow the user to auto restart games which crash. This can be done by starting 'leagueoflegends.exe'. I want to autodetect the location of the executable and this is where I have issues.
The exe is located at:
*GAME_FOLDER*\RADS\solutions\lol_game_client_sln\releases\x.x.x.xx\leagueoflegends.exe
I use a registry entry to get the game folder, ie: C:\leagueoflegends\
However there is a folder that changed with every update in the form of x.x.x.xx where the x are digits (numbers) reflecting the versions. There is always 1 folder in the releases folder.
I figured I need to use REGEXP but I didn't have much luck.
This is the regexp I made:
^[0-9]\.[0-9]\.[0-9]\.[0-9][0-9]$
This is what I used to get the name of the dir using cmd
dir /B | findstr /R " ^[0-9]\.[0-9]\.[0-9]\.[0-9][0-9]$"
However I cant seem to be able to run the executable no matter what I do. Its not like linux where I can manipulate filters and pipes. Any help with a one liner to run the exe or methods of obtaining the folder name (without using a system call?) would be appreciated. Once I can get the folder name in a variable then it becomes easy.
Thanks in advance!

PATH Environment Variable has no Effect? (VS2010)

From what I can tell from this MSDN walkthrough, the PATH environment variable should point to the location of a DLL when the DLL isn't in the same directory as the source.
I have set this variable through Property Pages > Configuration Properties > VC++ Directories > Executable Directories (which does correspond to the PATH variable, according to the tooltip).
When I try to compile and run my code, however, I still get "missing DLL" errors. Manually copying the DLL into the source folder solves the problem, but that's not really an option in this case.
What am I missing here?
The PATH directory that the "Executable Directories" page refers to are the directories that are searched for compiling your code, not the directories that are searched at run time to execute your program.
If you don't want to set your path every time in your command prompt, you can update your PATH environment variable for your user session. (My Computer -> Properties -> Advanced -> Environment Variables) You can then either update your system PATH variable or create a local PATH variable for your user account. (Make sure you restart your command prompt after you do this)