Eminem Posted September 28, 2022 Share Posted September 28, 2022 We are trying to use Jenkins to build our Vivado project and we can't figure out how to build from the command line. Is there a way to do this? If so what are the steps? Link to comment Share on other sites More sharing options...
0 Eminem Posted October 11, 2022 Author Share Posted October 11, 2022 This is what we ended up with and it seems to work in our Jenkins pipeline # Run with the following command line for the 3eg # vivado2022 -mode batch -source mta_build.tcl -tclargs mta_3eg # or for the 5ev board use the following command # vivado2022 -mode batch -source mta_build.tcl -tclargs mta_5ev # if { $argc != 1 } { puts "This script requires one argument for the board you are building" } else { open_project [lindex $argv 0].xpr make_wrapper -files [get_files [lindex $argv 0].bd] -top -import launch_runs synth_1 wait_on_run synth_1 launch_runs impl_1 -to_step write_bitstream wait_on_run impl_1 write_hw_platform -fixed -include_bit -force -file [lindex $argv 0].xsa } Now if we could only add some tests artvvb 1 Link to comment Share on other sites More sharing options...
0 artvvb Posted September 29, 2022 Share Posted September 29, 2022 Hi @Eminem Welcome to the Forums! Here are a couple of good blog posts on this exact topic: https://www.starwaredesign.com/index.php/blog/63-fpga-meets-devops-xilinx-vivado-and-git https://www.starwaredesign.com/index.php/blog/64-fpga-meets-devops-xilinx-vivado-and-jenkins-with-docker Running build scripts written in TCL from the command line via Vivado's batch mode is the way to go. The first post above discusses this topic in some detail. The checkout script in digilent-vivado-scripts also optionally builds the checked out project, but that requires following the same file structure as Digilent's Vivado projects on Github. We haven't used this with Jenkins or Docker before, so I couldn't comment on how easy that would be to use as a starting point. Thanks, Arthur Eminem 1 Link to comment Share on other sites More sharing options...
0 artvvb Posted October 11, 2022 Share Posted October 11, 2022 I've never looked into how exactly to do it, but Vivado's simulator should also be able to be controlled through TCL, and based on these posts, the simulator can be invoked separately from Vivado entirely through the xsim command. Eminem 1 Link to comment Share on other sites More sharing options...
Question
Eminem
We are trying to use Jenkins to build our Vivado project and we can't figure out how to build from the command line. Is there a way to do this? If so what are the steps?
Link to comment
Share on other sites
3 answers to this question
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now