gatecat / nextpnr-xilinx

Experimental flows using nextpnr for Xilinx devices
ISC License
200 stars 37 forks source link

Failure in generating xczu7ev.bba #68

Open burntfalafel opened 1 year ago

burntfalafel commented 1 year ago

Hi, I am using the latest xilinx-upstream branch to run the ZCU104 blinky.sh example. I generate the Makefile successfully and make runs correctly generating me the 4 "binaries" (rapidwright_json2dcp, rapidwright_bbaexport, bbasm, nextpnr-xilinx).

However when I run: java -jar rapidwright_bbaexport.jar xczu7ev-ffvc1156-2-e xilinx/constids.inc xilinx/xczu7ev.bba, I get the following error:

Exception in thread "main" java.lang.NoClassDefFoundError: com/xilinx/rapidwright/device/IOBankType
        at com.xilinx.rapidwright.device.IOBank.b(Unknown Source)
        at com.xilinx.rapidwright.device.Device.a(Unknown Source)
        at com.xilinx.rapidwright.device.Device.a(Unknown Source)
        at java.base/java.util.HashMap.compute(HashMap.java:1324)
        at com.xilinx.rapidwright.device.Device.getDevice(Unknown Source)
        at com.xilinx.rapidwright.device.Device.getDevice(Unknown Source)
        at com.xilinx.rapidwright.design.Design.setPartName(Unknown Source)
        at com.xilinx.rapidwright.design.Design.<init>(Unknown Source)
        at dev.fpga.rapidwright.bbaexport.main(bbaexport.java:781)
Caused by: java.lang.ClassNotFoundException: com.xilinx.rapidwright.device.IOBankType
        at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
        at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
        ... 9 more

If I were to see what was generated by the CMake/Make the error is correctly raised (i.e. No IOBankType generated): image But RapidWright has generated IOBankType class in it's build folder / jar file: image

I have attached the command and the logfile I used below. But it's the exact same to what is in the README.

export RAPIDWRIGHT_PATH=<path-to-RW>
cmake -DARCH=xilinx -DRAPIDWRIGHT_PATH=<path-to-RW> -DGSON_PATH=./gson-2.8.5.jar .
make

CMake.log Make.log

(PS - I understand it's a work in progress, but this will help me greatly if you know what's going on...Thanks :))