quite simple configuring https - working with openssl - windows

THis is a quite basic question, and I am not sure why i haven't been able to solve it.
Essentially in this guide
http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/configuring-https.html
I am trying to get pass by the following step:
Enter the path to the OpenSSL installation:
c:\ set OpenSSL_HOME=path_to_your_OpenSSL_installation
In particular, path_to_your_OpenSSL_installation
When I downloaded and install openssl the folder it is found
c>OpenSSL and all its files is found inside that folder, I am not sure how to configure that path.
Another question I have is whats the point of geotrust, or verisign if you can use openssl as https for free.

Type set prog in command line window to see how similar paths look like:
d:\bat>set prog
ProgramData=C:\ProgramData
ProgramFiles=C:\Program Files
ProgramFiles(x86)=C:\Program Files (x86)
ProgramW6432=C:\Program Files
d:\bat>
So you could type either
set "OpenSSL_HOME=%ProgramFiles%\OpenSSL" if you run 64-bit Windows and have downloaded 64-bit OpenSSL version, or
set "OpenSSL_HOME=%ProgramFiles(x86)%\OpenSSL" in case of 32-bit version of windows or OpenSSL
Note an error in your guide To include OpenSSL in your path; should be as follows:
set "Path=%OpenSSL_HOME%\bin;%Path%"
However, change your PATH system environment variable no sooner than the OpenSSL_HOME variable exists and %OpenSSL_HOME%\bin points to an existing directory.
Read about set (changes made to the environment variables are valid only for the current command-line session) versus setx (set environment variables permanently).

Related

Can't build Rustless on Windows

I'm trying to build the rustless "basic usage" sample project.
This is my Cargo.toml. I had to add the dependencies in Cargo.toml in order to avoid the build error error[E0463]: can't find crate for 'hyper'
[package]
name = "rustlessTest"
version = "0.1.0"
authors = ["x"]
[dependencies.rustless]
git = "https://github.com/rustless/rustless"
[dependencies]
hyper = "0.9.14"
iron = "0.4.0"
rustc-serialize = "0.3.22"
valico = "1.0.1"
I also downloaded the OpenSSL library & sources. I stored them under C:\OpenSSL\lib and C:\OpenSSL\include and set the directories as a environment variable, as mentioned in this thread about how to using Hyper on Windows.
When I try to compile, it fails with the following output:
Build failed, waiting for other jobs to finish...
error: failed to run custom build command for `openssl v0.7.14`
....
....
I finally managed to build OpenSSL on Windows by following the solution from this blog post.
Here's a summary:
Download Win64 OpenSSL v1.0.1u from here. Install it with default settings.
Set the following environment variables
DEP_OPENSSL_INCLUDE=C:\OpenSSL-Win64\include
OPENSSL_INCLUDE_DIR=C:\OpenSSL-Win64\include
OPENSSL_LIB_DIR=C:\OpenSSL-Win64\lib\VC
OPENSSL_LIBS=ssleay32MT:libeay32MT
Install Visual Studio 2015 or Visual Studio Code with C++ support.
Ensure that all path variables are set correctly
Set rust-msvc as the toolchain. You can check this by typing rustup show into the console. You should get an output like this:
Default host: x86_64-pc-windows-msvc
stable-x86_64-pc-windows-msvc (default)
rustc 1.13.0 (2c6933acc 2016-11-07)
Now you should able to build Rust projects which requires OpenSSL.
You are right that it is because OpenSSL is not found. A good tutorial is in the README of rust-openssl.
Windows MSVC
On MSVC it's unfortunately not always a trivial process acquiring
OpenSSL. Perhaps the easiest way to do this right now is to download
precompiled binaries and install them on your system. Currently it's
recommended to install the 1.1.0 (non-light) installation if you're
choosing this route.
Once a precompiled binary is installed you can configure this crate to
find the installation via an environment variable:
set OPENSSL_DIR=C:\OpenSSL-Win64
Note that this OpenSSL distribution does not ship with any root
certificates. So to make requests to servers on the internet, you have
to install them manually. Download the cacert.pem file from here,
copy it somewhere safe (C:\OpenSSL-Win64\certs is a good place) and
point the SSL_CERT_FILE environment variable there:
set SSL_CERT_FILE=C:\OpenSSL-Win64\certs\cacert.pem
After that, you're just a cargo build away!
Windows GNU (MinGW)
The easiest way to acquire OpenSSL when working with MinGW is to
ensure you're using MSYS2 and to then
execute:
# 32-bit pacman -S mingw-w64-i686-openssl
# 64-bit pacman -S mingw-w64-x86_64-openssl
And after that, a cargo build should be all you need!
Manual configuration
rust-openssl's build script will by default attempt to locate OpenSSL
via pkg-config or other system-specific mechanisms. This will not work
in some situations however, for example cross compiling or when using
a copy of OpenSSL other than the normal system install.
The build script can be configured via environment variables:
OPENSSL_DIR - If specified, a directory that will be used to find OpenSSL installation. It's expected that under this directory the
include folder has header files and a lib folder has the runtime
libraries.
OPENSSL_LIB_DIR - If specified, a directory that will be used to find OpenSSL libraries. Overrides the lib folder implied by
OPENSSL_DIR (if specified).
OPENSSL_INCLUDE_DIR - If specified, a directory that will be used to find OpenSSL header files. Overrides the include folder implied
by OPENSSL_DIR (if specified).
OPENSSL_STATIC - If specified, OpenSSL libraries will be statically rather than dynamically linked.
If OPENSSL_DIR is specified, then the build script will skip the
pkg-config step.
It's a nightmare; OpenSSL with Windows is really painful. I hope that one day Rust has its own implementation of SSL/TLS.

Set proper paths for VS Command Line Compiler

I recently installed vs15 - preview (Stripped down version of visual studio 2015).
I am able to compile C/C++ sources from inside the IDE, but I am not able to compile with the command line interface cl.exe. It can't find the c stdlib headers. I tried to use vcvars32.bat to set the proper reg values but seemingly it cant find the "Common Tools Folder".
"ERROR: Cannot determine the location of the VS Common Tools folder."
The script uses the env. variable "%VS150COMNTOOLS%".
If I try to run "cd %VS150COMNTOOLS%" from the cmd line, it can't find the path, so this seems to be the main problem.
How can manually set %VS150COMNTOOLS% to the right path? how can I set the cmd linker settings manually (Without telling the cl.exe every time I call it)?
Okay, I solved it by adding the path to the include directories and lib directories to the env. variables as "INCLUDE", "LIB". It works now, whyever the script was not able to set those values properly. I am not fluent in reading .bat let away writing in, I assume the directory structure, which is different for the vs15 preview when compared to the full version, had not been adapted yet.

LuaRocks can't find luarocks.lua

I've been having difficulties getting luarocks to work in Windows 7. Whenever I run luarocks, I get the following error:
lua5.1: cannot open C:\Program Files (x86)\Lua\luarocks.lua: No such file or directory
Now, checking the folders, it is indeed the case that luarocks.lua is not in C:\Program Files (x86)\Lua, but in C:\Program Files (x86)\Lua\5.1. I don't know where or what file I have to change to get that to work. I installed with the /MW /L /F options in case that matters, but I've had the same problem installing without options. The documentation has not been much help, and I've set all my path variables correctly, in accordance with the text dump at the end of the install. I got no errors during the install. I installed the latest version of luarocks, 2.2.0.
The full path to luarocks.lua is written into the generated luarocks.bat by the installation script. You could change it there, but it looks like your LuaRocks installation is seriously broken: luarocks.lua should not be in C:\Program Files (x86)\Lua\5.1 but in C:\Program Files (x86)\LuaRocks\2.2, next to luarocks.bat. (The LuaRocks version number, 2.2 in this case, is appended to the install location automatically by the installation script, so I have no idea how you could end up with a path like yours.) You will most likely run into more problems along the way. This is also the reason why your bundled tools could not be found before.
It could be something simple like another failed installation attempt that interferes because of leftover environment variable settings, but I suggest you show up on the LuaRocks mailing list (also accessible as a newsgroup), and post your solution here at SO once the underlying problem is resolved.

"Android Create" call fails in windows 7 - missing JDK

I'm having a problem getting my android dev environment setup in Windows 7. I follow the instructions here, as well as several environment sublinks. I am using Eclipse with the Android plugin. I have installed the Java JDK several times, in various locations (jdk-6u20-windows-i586.exe) - but I am obviously missing something.
Every time I run "android create avd --target 2 --name my_avd" I get an error:
C:\Users\andrew>android create avd --target 2 --name my_avd
WARNING: Java not found in your path.
Checking it it's installed in C:\Program Files\Java instead.
ERROR: No suitable Java found. In order to properly use the Android Developer
Tools, you need a suitable version of Java installed on your system. We
recommend that you install the JDK version of JavaSE, available here:
http://java.sun.com/javase/downloads/
You can find the complete Android SDK requirements here:
http://developer.android.com/sdk/requirements.html
This error message is the reason for me installing the JDK several times over. First I tried installing to a location on my e: drive. I then moved it to the default loc (program files (x86)\java\jdk.6.something. I also tried forcing it to go into the program files\ path, but it still automatically installs into the (x86) path. I have added the install path to my path environment variable every single time, yet I still continue to get this error. My suspicion is that windows 7 and the android tools are not playing together well in terms of finding the JDK, but who knows, it may be something entirely different. If you have seen this error before, I would appreciate a hint.
I had this same problem, after accidentally installed the 32-bit version of Java SDK. I uninstalled it and installed the 64-bit version (since I'm using Windows 7 64). The Android SDK setup never found Java correctly, even after I added it to my PATH variable!
After a bit of digging around, I discovered a java.exe floating around in my system32 folder, which in the order of the PATH variable came before my SDK path. After whacking the java.exe in my system32 folder, the Android Setup ran just fine!
Hope this helps.
The android command is just a Windows Batch file which in turn uses the batch file tools\lib\find_java.bat to find Java.
Having a look at the source, it does the following:
Looks to see if java.exe is on your PATH.
Looks for java.exe in somewhere under %ProgramFiles%
Your problem arises because you're using the a 64-bit version of Windows. This means %ProgramFiles% is C:\Program Files but Java is installed in C:\Program Files (x86) as it's a 32-bit application, meaning find_java.bat doesn't find it.
So to fix this you'll need to add the directory containing java.exe to your PATH environment variable.
You'll need to the add the directory containing java.exe - something like C:\Program Files (x86)\Java\jdk6\bin - on to the end of PATH with a semicolon in front of it to separate it from the previous entry.
This question on superuser.com covers maintaining Environment Variables in Windows 7.
It is really hell with JDK detection...
My params: Win 7 x64 + JDK x64 (JDK path (c:\Program Files\Java\jre7\bin)
Was googling and playing around with env variables may be 1 hour - no way.
Finally come with such solution
Manually edit android-sdk-windows\tools\lib\find_java.bat by hardcoding the path to java.exe
set java_exe=c:\Progra~1\Java\jre7\bin\java.exe
if not defined java_exe goto :CheckFailed
:SearchJavaW
set javaw_exe=c:\Progra~1\Java\jre7\bin\javaw.exe
if not exist %javaw_exe% set javaw_exe=%java_exe%
goto :EOF
Thats works for me.
In the SDK tools folder go to libs and edit find_java.bat. It can usually be found in C:\Program Files (x86)\Android\android-sdk-windows\tools\lib.
Change all instances of %PROGRAMFILES% to %PROGRAMFILES(X86)%.
I did this and the error went away.
Find android-sdk-windows\tools\lib\find_java.bat and add something like the following:
set java_exe=
call :TestJavaDir "%JAVA_HOME%"
if defined java_exe goto :EOF
What worked for me was this:
add a path to your java/bin directory to the system Path variable. Do NOT include java.exe.
Steps on Win 7 64bit:
Click Windows Button
Right Click on Computer
Select Properties from the Context Menu
Click Advanced System Settings on the top left section
Click the Environment Variables... button at the bottom of the properties dialog
On the bottom list (System variables) find the "Path" variable
Click the Edit button
Go to the end of the textbox and type something like c:\program
files\java\jdk1.6.0_26\bin (make sure it matches the name of your
java directory!)
Click OK
Click OK
Click OK
Try it out!
hth,
\ ^ / i l l
I put rem statement in android.bat after the call command and hardcode the path of \bin\java.exe:
rem Check we have a valid Java.exe in the path.
set java_exe=<..>\jdk1.6.0_31\bin\java.exe
rem call lib\find_java.bat
if not defined java_exe goto :EOF
Same for setting other variable javaw_exe thus:
set javaw_exe=<..>\jre1.6.0_31\bin\javaw.exe
if not exist %javaw_exe% set javaw_exe=%java_exe%
goto :EOF
C:\Windows\SysWOW64
1down vote
I also had this same problem
-> accidentally installed the 32-bit version of Java SDK -> uninstalled -> installed the 64-bit version (Windows 7 64) -> -> the Android SDK setup never found Java correctly!
I discovered a java.exe floating around in C:\Windows\SysWOW64 folder.
After renaming this java.exe to javaX.exe, the Android Setup ran just fine!

How do I make OpenSSL write the RANDFILE on Windows Vista?

When I run:
openssl genrsa -out mykey.key 2048
I get the following error:
unable to write 'random state'
e is 65537 (0x10001)
My googling suggests this is some kind of Vista permissions issue. How can I allow Vista to write this file or how can I configure openssl to get round it?
The root issue is that the RANDFILE variable in the OpenSSL configuration file is ignored on Windows. This has been a long-standing problem that continues to exist as of the OpenSSL v1.0a release, regardless of whether the target Windows platform is x86 or x64.
There is a delightfully simple solution, though. Merely use a regular environmental var to set the RANDFILE value, like
set RANDFILE=.rnd
Because this value is ephemeral, it must be re-issued for every new DOS box, or scripted in a batch file.
I found this that might help: Using OpenSSL what does "unable to write 'random state'" mean?
also, here: http://adamyoung.net/OpenSSL-unable-to-write-random-state
there is a suggestion here http://www.mail-archive.com/openssl-users#openssl.org/msg51344.html on how to get it working in vista.
find the location of cmd.exe, right click and run as administrator
I had the same issue but for Windows 7. Easily solved, I created a system Environment Variable called HOME and set it to the directory I wanted my .rnd file in. This solved the issue because OpenSSL didn't know where my .rnd file was (because I didn't have one) and it didn't know where to put it if it was to create it. As soon as I set my environment variable HOME with a directory (c:\ is fine!) I reran my key generation in OpenSSL and it worked straight off. To verify, I checked the key I had created and it had proper content. I also checked the directory I set my HOME environment variable to, and lo and behold a .rnd file was sat there! Hope this helps someone :-)
Add a HOME variable into your environment variables.
The issue is that the script is missing some access rights or cant find the file.
The solution:
Create a system variable with the name RANDFILE and the value %USERPROFILE%.rnd
Notice the %USERPROFILE%, is a system variable that automatic inserts the path to your user profile.

Resources