cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Mac_H
Visitor
Visitor
199 Views
Registered: ‎04-12-2021

Vivado 2020.2 : Unable to Acquire Authentication token

Jump to solution

Hi everyone in support,

I have a fresh install of Vivado 2020.2 on a Windows 10 machine.

I attempt to acquire an Authentication token by following the instruction in the user guide and:

1. Open a command window with admin privileges
2. cd C:\Xilinx\xic\bin
3. xsetup.bat -b AuthTokenGen
 
When I do this, instead of getting the results we expect I instead get the message:


Running in batch mode...
Exception in thread "main" java.lang.ExceptionInInitializerError
at com.xilinx.installer.api.InstallerLauncher.a(Unknown Source)
at com.xilinx.installer.api.InstallerLauncher.main(Unknown Source)
Caused by: java.lang.RuntimeException: Could not load necessary resources, both static and dynamic resources are null.
at com.xilinx.installer.data.LocaleManager.<clinit>(Unknown Source)
... 2 more

I can see that the batch file has replaced all the path variables with:


PATH=C:\Xilinx\xic\bin\..\lib\win64.o;;C:\WINDOWS\system32;C:\WINDOWS\system32\wbem;C:\WINDOWS:

.. and is failing to run this:

"C:\Xilinx\xic\bin\..\tps\win64\jre11.0.2"\bin\java.exe
-DLOAD_64_NATIVE="true" -Djava.library.path="C:\Xilinx\xic\bin\..\lib\win64.o;;C:\WINDOWS\system32;C:\WINDOWS\system32\wbem;C:\WINDOWS"
-DOS_ARCH="64"
-DDYNAMIC_LANGUAGE_BUNDLE="C:\Xilinx\xic\bin\..\data"
-Dsun.java2d.d3d=false
-XX:HeapDumpPath="C:\Users\{USER_NAME}\.Xilinx\xinstall"
-DINSTALLER_ROOT_DIR="C:\Xilinx\xic\bin\\.. "
-Dlog4j.configuration="C:\Xilinx\xic\bin\../data/log4j.xml"
-DHAS_DYNAMIC_LANGUAGE_BUNDLE=true
-cp "C:\Xilinx\xic\bin\..\lib\classes\commons-codec-1.6.jar;
 C:\Xilinx\xic\bin\..\lib\classes\jaxb-api-2.3.1.jar;
 C:\Xilinx\xic\bin\..\lib\classes\jaxb-core-2.3.0.1.jar;
 C:\Xilinx\xic\bin\..\lib\classes\jaxb-impl-2.3.1.jar;
 C:\Xilinx\xic\bin\..\lib\classes\json-simple-1.1.1.jar;
 C:\Xilinx\xic\bin\..\lib\classes\httpclient-4.2.5.jar;
 C:\Xilinx\xic\bin\..\lib\classes\httpcore-4.2.4.jar;
 C:\Xilinx\xic\bin\..\lib\classes\commons-logging-1.1.1.jar;
 C:\Xilinx\xic\bin\..\lib\classes\commons-cli-1.4.jar;
 C:\Xilinx\xic\bin\..\lib\classes\xinstaller.jar;
 C:\Xilinx\xic\bin\..\lib\classes\log4j-1.2.15.jar;
 C:\Xilinx\xic\bin\..\lib\classes\sevenzipjbinding-AllWindows.jar;
 C:\Xilinx\xic\bin\..\lib\classes\zip4j-2.2.1.jar;
 C:\Xilinx\xic\bin\..\lib\classes\commons-cli-1.4.jar" com.xilinx.installer.api.InstallerLauncher -b AuthTokenGen

Any clue as to what is happening?

Thanks,

-- Mac

 

0 Kudos
1 Solution

Accepted Solutions
Mac_H
Visitor
Visitor
104 Views
Registered: ‎04-12-2021

Thanks - that helped. 

The confusion was that I wasn't actually trying to install Xilinx on my host machine - I was just interested in running a script to get an install token - so I can pass the install token to a build VM.

The good news is that I realised this is easy to do without running a script at all - I just to a HTTP query:


> curl "https://www.xilinx.com/bin/public/webinstall/oauth/login?password=[URL Encoded Password]&xilinxUserId=[Url Encoded Email Address]&encrypted=false" -d ""

(The -d "" is necessary instead of just -X POST because otherwise the API complains that there isn't a content length included in the message)
You can also use 'encrypted=true' and run the password through a simple one-way hash and do it exactly like the script does it.

Knowing that in advance would have saved me some pain !

Thanks,

-- Mac

View solution in original post

0 Kudos
2 Replies
anatoli
Moderator
Moderator
136 Views
Registered: ‎06-14-2010

Hello @Mac_H ,

Seems like you are in the XIC/bin (C:\Xilinx\xic\bin) folder and trying to run this from this location.

Can I clarify with you please, are you trying to do the Batch Mode Installation Using Web Installer or have you obtain a full Single File Download (SFD) and trying to install Vivado/Vitis in the Silent/Batch mode?

If you are using a webinstaller, for Windows, open the command window with administrator privileges and run the xsetup.bat file, found in the \bin directory (not in C:\Xilinx\xic\bin). This would be available once you've extracted the batch mode client as per UG973 :

Windows: /Xilinx_Vivado_SDK_Web_201X.Y_MMDD_HHMM_Win64.exe -y -gm2 -nr -InstallPath="<Client_dir>"

 

e.g. Xilinx_Vivado_SDK_Web_2020.2_1234_1234_Win64.exe -y -gm2 -nr -InstallPath="C:\Test"

Then, within this C:\Test folder you'd then find the bin file wit xsetup.bat, e.g.:

image.png

As you can see, there is no xic/bin 

Therefore, if you are using a Webinstaller and not a full SFD, please extact the webinstaller using e.g. Xilinx_Vivado_SDK_Web_2020.2_1234_1234_Win64.exe -y -gm2 -nr -InstallPath="C:\Test" and this will then created files and folders such as this:

image.png

You can then navigate to this bin folder and run the xsetup.bat -b AuthTokenGen

e.g.:

image.png

 

Again, all of this info is in the UG973, page 56: https://www.xilinx.com/support/documentation/sw_manuals/xilinx2020_2/ug973-vivado-release-notes-install-license.pdf#page=56

By following these steps as instructed, you should be able to overcome this issue then.

Hope this helps.

 

Kind Regards,
Anatoli Curran,
Xilinx Technical Support
------------------------------------------------------------------------------------------------

Don’t forget to reply, kudo, and accept as solution.

If starting with Versal, take a look at our Versal Design Process Hub and our
Versal Blogs

------------------------------------------------------------------------------------------------
0 Kudos
Mac_H
Visitor
Visitor
105 Views
Registered: ‎04-12-2021

Thanks - that helped. 

The confusion was that I wasn't actually trying to install Xilinx on my host machine - I was just interested in running a script to get an install token - so I can pass the install token to a build VM.

The good news is that I realised this is easy to do without running a script at all - I just to a HTTP query:


> curl "https://www.xilinx.com/bin/public/webinstall/oauth/login?password=[URL Encoded Password]&xilinxUserId=[Url Encoded Email Address]&encrypted=false" -d ""

(The -d "" is necessary instead of just -X POST because otherwise the API complains that there isn't a content length included in the message)
You can also use 'encrypted=true' and run the password through a simple one-way hash and do it exactly like the script does it.

Knowing that in advance would have saved me some pain !

Thanks,

-- Mac

View solution in original post

0 Kudos