Issues setting up Development environment

Post Reply
TurtleBeach
Posts: 3
Joined: Sat Apr 03, 2021 2:23 pm

I have encountered a number of problems (some admittedly self-inflicted) trying to set up the development environment for a QuickFeather development kit, using the video at https://www.quicklogic.com/products/eos ... pment-kit/

I am working on Win10 Pro, and I am able to successfully connect to the QuickFeather and run the diagnostic demo.

I am now at the point where the example project from the video builds (32 warnings, vs 12 in the video, but I am using a later version of Eclipse and tools).
However, when I attempt to debug after a successful build, the second build fails immediately, with:

Code: Select all

make: Entering directory `C:/qorc-sdk/qf_apps/qf_ssi_ai_app/GCC_Project'
A subdirectory or file output\depend already exists.
make: [_makedirs_] Error 1 (ignored)
A subdirectory or file output already exists.
make: [_makedirs_] Error 1 (ignored)
make -f makefiles/Makefile_Startup
make[1]: Entering directory `C:/qorc-sdk/qf_apps/qf_ssi_ai_app/GCC_Project'
make[1]: *** No rule to make target `c\:\qorc-sdk\hal\startup\startup_eoss3b_gcc.c', needed by `output/startup_EOSS3B_GCC.o'.  Stop.
make[1]: Leaving directory `C:/qorc-sdk/qf_apps/qf_ssi_ai_app/GCC_Project'
make: *** [Startup] Error 2
make: Leaving directory `C:/qorc-sdk/qf_apps/qf_ssi_ai_app/GCC_Project'
"make -C C:\qorc-sdk\qf_apps\qf_ssi_ai_app\GCC_Project\Eclipse_Make_Project/../ all" terminated with exit code 2. Build might be incomplete. 
A pop-up message appears, with a choice to proceed or cancel. If I choose to proceed, J-Link fails to connect.
The first problem (build failure) I have no clue how to resolve. I see the source file in the folder, and a Makefile_Startup, but the hierarchy of dependencies to build the example are a rat's nest, to put it mildly.

EDIT-1: After reviewing some other related posts, there is a discrepancy between posts here and instructions in the video when dragging and dropping the example project files.

In the video, the instructions are very specific - when dragging/dropping, select Link to files and folders.
In other posts here, the instruction is to Link to files and recreate folder structure with virtual folders.

While the arcane structure of makefiles is a mystery, it seems to me that both options cannot magically be correct. So which is correct?

EDIT-2: On the face of it, the \ between c and : in the make Target, which appears in the xxxx.d files produced during the first build, is causing the problem. But I have been unable to find where the \ is coming from. It appears something in the ARM tool chain generates the *.d files and must be inserting the extraneous \. I would appreciate a makefile guru chiming in here.

Regarding the debugger, a major, IMHO, problem with the video is that it does not mention HOW to install the SEGGER debugger – it only references confirming that wherever it is installed correctly appears in the Eclipse settings. I have worked with other boards that use it (e.g. STMicro, Maxim) and have never had to install any J-Link debugger software separately, so that was an aggravating side jaunt. Development for those boards also relies on the (byzantine) Eclipse framework, and examples work 'out-of-the-box' without needing to separately install SEGGER.

My questions:
1 Any suggestions on resolving the build issue? Why does the first build succeed but the following build (ostensibly the same) fail?
2 Is it necessary to insert jumpers on one or both of J1 and J7? If so, which? This was also not addressed in the video – which by its name I expected to cover all details of getting the development environment set up.
Thanks,
Jack Copper
phil_quik
Posts: 36
Joined: Mon May 18, 2020 12:33 am

Is this something similar with viewtopic.php?f=19&t=84


For J1 and J7, it mentioned in QuickFeather_UserGuide.pdf.

Boot-strap IO_19 & IO_20
• Install both shunts to use SWD Debugger for development
• Remove both shunts for boot-from-flash
TurtleBeach
Posts: 3
Joined: Sat Apr 03, 2021 2:23 pm

@phil_quik,
This is maddening. I have killed almost two days trying to get what is ostensibly a 'getting started' project working.
One would think that if QuickLogic is going to base its build process on Gnu Make that it could provide a working example for Win 10 that does not require learning all the idiosyncrasies of a convoluted, and by many accounts, borderline obsolete, product (GNU make, that is)..

Code: Select all

output/startup_EOSS3B_GCC.o: \
 c\:\development\qorc-sdk\hal\startup\startup_eoss3b_gcc.c
Something is generating a bogus dependency file - I do not know whether it is the case (upper and lower mixed) of file names, the location (output/startup_EOSS3B_GCC.o), which does exist after a successful build, the escaping of the colon in the path, or the phase of the moon.

Surely someone at QuickLogic has built the 'getting started' example on Win 10. Why can you not just put that in GitHub, in the right location in the hierarchy of the SDK?

Barring that, at least publish what a 'good' dependency file on Windows should look like, and precisely where in the (actual physical) directory hierarchy it should be, starting from the qork_sdk folder.

Unfortunately the references were not helpful, nor are the various readmes.

I would appreciate any other guidance.

Thank you.
phil_quik
Posts: 36
Joined: Mon May 18, 2020 12:33 am

I hit the same issue in Win10 and the root cause is I have 2 GNU ARM Toolchain installed in Win10.
The way I fixed it is to change TC_PATH/QORC_TC_PATH in config.mk like below

#Override with your own tool direcoty
#export TC_PATH=C:\Program Files (x86)\GNU Tools ARM Embedded\7 2017-q4-major\bin
export TC_PATH=c:\Program Files (x86)\GNU Arm Embedded Toolchain\9 2020-q2-update\bin


Of you can check the detail video clip for eclipse on Win
https://www.youtube.com/watch?v=tsgGCFGhn8Q&t=666s
TurtleBeach
Posts: 3
Joined: Sat Apr 03, 2021 2:23 pm

@phil_quik
Thank you for responding, but I still have been unable to resolve the build or connection issues.

I think I will try to start from scratch (for the third time), this time using the exact arm tools, I allowed Eclipse to update to the 2021 03 release (4.19), and although I am hard pressed to think that is the problem, I am running out of ideas.

Regarding JLink, is it necessary to have a JLink hardware pod in order to debug and to download binaries from Eclipse to the QuickFeather board? The User Guide example shows a hardware pod, but my reading of the QuickFeather board specs implied to me that it supports SWD, which I assume would happen over the standard USB -> mini USB connection (like STMicro chips/boards and other boards I have some familiarity with).

Independent of the software build issues, with the J1 and J7 jumpers installed I would expect to at least connect to the QuickFeather board - but I cannot. Windows Control Panel shows that SEGGER drivers are installed, but in Device Manager, with the board plugged in, no driver is associated with the USB port that the board is plugged in to.

I would appreciate an unambiguous statement that either (1) a hardware pod is required in order to load binaries from Eclipse to the board, or (2) if Eclipse software is correctly configured, that I should be able to communicate with the board, and download binaries, without having a hardware pod.

I realize this is a basic question, but at this point I want to eliminate issues that may be obvious to others but not to me.

Thanks,
phil_quik
Posts: 36
Joined: Mon May 18, 2020 12:33 am

It is not necessary to have JLINK to download the image to QF, unless bootloader in QF is broken. In this case, you will need JLINK to recover the board.
We are using UART port to flash QF, You can check the video https://www.youtube.com/watch?v=Q5GIZUsXb3I&t=263s for how to program QF board.

By default, when you press the power button and user button, it will go to download mode, in that case, USBSERIAL FPGA image will be loaded. Then you can see the device COM port in Win Device Manager.
Post Reply