Showing results for 
Search instead for 
Did you mean: 

NIOS II Build Tools 19.1 now fail to build


Up to now I have had both the wsl and Quartus 19.1 NIOS II build tools working correctly. I have returned to do maintenance on an existing project and it will no longer build.

This is a serious problem for us and any advice would be greatly appreciated.

To try to isolate the problem I have used a demo FPGA project and created a new software project using 'Nios II Application and BSP from template' and selecting 'Hello World'.

During creation I get the following message in the console.


16:06:09 **** Clean-only build of configuration Nios II for project Test_Prj ****
wsl make clean
wslpath: /mnt/d/work/TechSupport/HAN/Demonstration/FPGA/Basic_Demo/software/Test_Prj_bsp//obj/HAL/src/crt0.o: No such file or directory
wslpath: hal_bsp: No such file or directory
[Test_Prj clean complete]

16:06:11 Build Finished (took 1s.448ms)


When I try to build the new project I get the following messages at the start of compilation...


16:08:53 **** Build of configuration Nios II for project Test_Prj ****
wsl make all
wslpath: /mnt/d/work/TechSupport/HAN/Demonstration/FPGA/Basic_Demo/software/Test_Prj_bsp//obj/HAL/src/crt0.o: No such file or directory
wslpath: hal_bsp: No such file or directory
Info: Building /mnt/d/work/TechSupport/HAN/Demonstration/FPGA/Basic_Demo/software/Test_Prj_bsp/
make --no-print-directory -C /mnt/d/work/TechSupport/HAN/Demonstration/FPGA/Basic_Demo/software/Test_Prj_bsp/
Compiling alt_alarm_start.c...
nios2-elf-gcc.exe -xc -MP -MMD -c -I./HAL/inc -I. -I./drivers/inc -pipe -D__hal__ -DALT_NO_INSTRUCTION_EMULATION -DALT_SINGLE_THREADED -O0 -g -Wall -mno-hw-div -mno-hw-mul -mno-hw-mulx -mgpopt=global -o obj/HAL/src/alt_alarm_start.o HAL/src/alt_alarm_start.c
Compiling alt_busy_sleep.c...
nios2-elf-gcc.exe -xc -MP -MMD -c -I./HAL/inc -I. -I./drivers/inc -pipe -D__hal__ -DALT_NO_INSTRUCTION_EMULATION -DALT_SINGLE_THREADED -O0 -g -Wall -mno-hw-div -mno-hw-mul -mno-hw-mulx -mgpopt=global -o obj/HAL/src/alt_busy_sleep.o HAL/src/alt_busy_sleep.c
Compiling alt_close.c...
nios2-elf-gcc.exe -xc -MP -MMD -c -I./HAL/inc -I. -I./drivers/inc -pipe -D__hal__ -DALT_NO_INSTRUCTION_EMULATION -DALT_SINGLE_THREADED -O0 -g -Wall -mno-hw-div -mno-hw-mul -mno-hw-mulx -mgpopt=global -o obj/HAL/src/alt_close.o HAL/src/alt_close.c
Compiling alt_dcache_flush.c...


At the end of compilation I get the following errors.


Description Resource Path Location Type
make: *** [Test_Prj.elf] Error 1 Test_Prj C/C++ Problem
recipe for target 'Test_Prj.elf' failed Makefile /Test_Prj line 1010 C/C++ Problem


Any advice would be greatly appreciated as at this moment I am unable to find a workaround.

Many thanks


7 Replies

Hi @SHard2,

Good day and hope you are doing well, thank you for your patients.

Can you please try the below steps:

  • Dividing workspace project and source software directories. It must be different directories inside common project directory.
  • Use "New'"--> "NIOS II Application and BSP from template" for generation of new BSP project structure. ("New" --> "NIOS II Board support package", will cause some error as below)


Example error:

Executing: wsl;nios2-bsp hal . ../../qsys_system.sopcinfo
--cpu-name nios2_gen2_0
/bin/bash: -c: line 0: syntax error near unexpected token `;'
/bin/bash: -c: line 0: `;nios2-bsp hal .
../../qsys_system.sopcinfo --cpu-name nios2_gen2_0'


Just curious, what are the window version that you are using?

Is there any updates on the WSL recently?


Warm regards.


Good morning

I am using Windows 10 Pro 2004 (Build 19041.450)

I had previously tried using 'New->Nios II Application and BSP from template', this also fails.

On further research this appears to have been caused by a windows update changing wsl1 in some way. I have tried wsl2 but unfortunately, due to another problem with the Intel/Altera 'create-this-app script', this also fails as the script is looking for 'uname' to return 'Microsoft' when it actually returns 'microsoft'.

I cannot update to Q20.1 as Intel have dropped support for DSP Builder for the 'Standard' license release.

I have reverted to Q18.1 Build 646, unfortunately this also fails due to another problem with the Intel/Altera 'create-this-app' script. This time the script fails by breaking the permissions of its destination folder, giving the following error 'Eclipse - Error Creating Project (Access is Denied)'. There does not seem to be a satisfactory solution to this.

I have ended up reverting to Q18.1 Build 625 to find a release where the NIOS II Build Tools actually appear to function correctly.

I am forced to use the Quartus Prime Standard product as Stratix IV is not supported by the 'PRO' product. The Standard product is not free and has a not inconsiderable price attached to it, along with additional charges for the other packages we use. It would appear that all effort seems to be in the 'PRO' product which only seems to cover the very latest devices.

In which case I am struggling to justify the license cost to cover the legacy devices we must continue to support. If this is the Intel policy now I feel that for any new boards I should consider changing over to Xilinx.




Hi @SHard2,

Noted with thanks on the details explanation, yes current we do see that there are some isues with updates on WSL.
For NIOS II Build Tools 19.1, here is another recommended workroaund which perhaps you can try and see hope it help:

As for access denied error on NIOS II build tool 18.1 build 646, there seems to be another known similar error which the workaround is to used the older version of 18.1 build 625. (

On the final part mentioning the support of Stratix IV in Quartus Prime Pro, is that the DSP builder that you are referring to? I did mananged to check on the Handbook for DBP Builder, it seems to be supporting Stratix IV. Hence just curious, can you please help me to understand by further eloborating on what are the non supported feature mention?

Warm Regards.



I have asked in a previous support request to Intel about support for DSP Builder in 20.1 STD, I was informed that from 20.1 onwards it was no longer supported. This prevents me upgrading beyond Q19.1, as I must support Stratix IV which therefore limits me to the STD product.

Secondly, the work around you mentioned for Q19.1 does not work. Certainly not when I tried it.

The NIOS tools worked correctly in Q19.1, using WSL1, until what I understand was a windows update. After this point the NIOS II toolchain no longer worked, as described in a number of support requests. The workaround you mentioned just clarifies that 19.1 does not work with WSL2.




Hi @SHard2,


Apologies for the late reply, for the support on DSP Builder in 20.1 standard, we did sync internally and it seem that is the case and I believe that the other personnel has explain accordingly. Please do let me know if you need further clarification on that and I would be more than happy to connect us to the previous support to help answer on that.


As for the WSL support for NIOS command line, currently the WSL 2 is not support and the development team are looking on that, as for the Q19, please do try the workaround steps below to see if it works:

Open a NIOS2 command shell
try and make an NIOS2 application
You get the following error: nios2-elf-gcc.exe: error: CreateProcess: No such file or directory 
To resolve this you need run the following command prior to calling make, "export WSLENV=PATH/l:${WSLENV}"

With the above fix you can compile all the files but the link fails: 
   nios2-elf-g++.exe: error: missing argument to '-msys-lib='
To resolve this you need to modify the application Makefile and change the following line:
   APP_LDFLAGS += -msys-lib=$(call adjust-path-mixed,$(SYS_LIB)) to APP_LDFLAGS += -msys-lib=$(SYS_LIB)
In adjust-path-mixed should not be used in this case as SYS_LIB is a name of a library not a PATH to the library

The final problem is that from eclipse debugging fails with the following error:
wslpath: /mnt/f/main_clean/Software/omni_ip/projects/wfm_ss/example/wfm/wfm_app/wfm.elf.srec: No such file or directory
wslpath: /mnt/f/main_clean/Software/omni_ip/projects/wfm_ss/example/wfm/wfm_app/wfm.elf.srec: No such file or directory
Using cable "USB-BlasterII [USB-1]", device 1, instance 0x01
Pausing target processor: OK
Restarting target processor
rm: cannot remove '/mnt/f/main_clean/Software/omni_ip/projects/wfm_ss/example/wfm/wfm_app/wfm.elf.srec': No such file or directory
To resolve this problem the Application Makefile must be modified again with the following change:

Please do let us know if you have any question base on the workaround above?
There is a plan to fix this permanently, we are sorry for the issues that you are facing now.


Warm Regards


Hi @SHard2,

Hope this message find you well and good day, as we do not receive any response from you to the previous clarification that we have provided. Please post a response in the next 15 days to allow me to continue to support you. After 15 days, this thread will be transitioned to community support. The community users will be able to help you with your follow-up questions. 


Warm Regards



Thank you for the update...

"Please do let us know if you have any question base on the workaround above?
There is a plan to fix this permanently, we are sorry for the issues that you are facing now."

It is good to hear that there are plans to fix this issue after such a long timespan. However as I am unable to upgrade, due to support for DSP Builder being dropped in Quartus standard, it does not help a great deal.