Intel® System Studio
Share information with other developers using Intel® System Studio.

D2000 Build Error for helloworld - on eclipse qm_adc.o no such file

mo_bri
New Contributor I
436 Views

Hi,

I've been trying for a while now, and still can not create a simple project and build in.

I am running eclipse IDE and the official tools from the intel site. My OS is windows 10, and I suspect its a permissions error from the OS. I have tried changing all the folders in the workspace to have full permissions for all users.

I create a sample project based on hello world and click build....

02:15:37 **** Incremental Build of configuration build_debug for project dave ****

make

APP_NAME = dave

SOC = quark_d2000

APP_DIR = .

BUILD = debug

make -C ./bsp/drivers SOC=quark_d2000

BUILD = debug

make[1]: Entering directory `C:/Users/Owner/QuarkWorkSpace/dave/bsp/drivers'

i586-intel-elfiamcu-gcc -O0 -g -DDEBUG -std=c90 -Wall -Wextra -Werror -Wno-unused-parameter -fmessage-length=0 -I../include -fno-asynchronous-unwind-tables -I../drivers -I../drivers/include -march=lakemont -mtune=lakemont -miamcu -msoft-float -DSPI_IRQ_MST -I../soc/quark_d2000/include -c -o ../drivers/debug/quark_d2000/obj/qm_adc.o ../drivers/qm_adc.c

Assembler messages:

Fatal error: can't create ../drivers/debug/quark_d2000/obj/qm_adc.o: No such file or directory

make[1]: *** [../drivers/debug/quark_d2000/obj/qm_adc.o] Error 1

make[1]: Leaving directory `C:/Users/Owner/QuarkWorkSpace/dave/bsp/drivers'

make: *** [libqmsi] Error 2

 

02:15:38 Build Finished (took 651ms)

0 Kudos
5 Replies
mo_bri
New Contributor I
436 Views

Seeing as there is no-one here, I thought I'd write a reply.As I expected its a combination of things, but mainly permissions to create folder, here is what I did to get it working.

First the java version error when running the IDE. Delete all those lines from the .bat script that check the java version (make sure you do have a 64 bit version though!)

Change the .bat to this

@ECHO off
GOTO endlegalheader
# -----------------------------------------------------------------------------
# Copyright (c) 2015 Intel Corporation
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
# -----------------------------------------------------------------------------
:endlegalheader

IF EXIST issm_env.bat (
    ECHO Running my version of the starter.
    CALL issm_env.bat
) ELSE (
    ECHO ERROR: Unable to setup the environment
    ECHO Please execute the issm_env.bat located at the ISSM install directory, and restart Eclipse
    PAUSE
    GOTO end
)

REM Environment variables
SET ISSM_QMSI_ROOT_DIR=%ISSM_ROOT%\firmware\bsp\1.0
SET ISSM_QMSI_EXAMPLES_DIR=%ISSM_QMSI_ROOT_DIR%\examples
SET ISSM_OPENOCD_DIR=%ISSM_ROOT%\tools\debugger\openocd
SET ISSM_GDB_DEFAULT_BIN=%ISSM_ROOT%\tools\debugger\gdb\gdb-ia.exe
SET PATH=%PATH%;%ISSM_ROOT%\tools\compiler\bin
SET ERROR_FOUND=false

IF NOT EXIST %ISSM_QMSI_ROOT_DIR% (
    ECHO WARNING: Unable to find ISSM_QMSI_ROOT_DIR
    set ERROR_FOUND=true
)
IF NOT EXIST %ISSM_QMSI_EXAMPLES_DIR% (
    ECHO WARNING: Unable to find ISSM_QMSI_EXAMPLES_DIR
    set ERROR_FOUND=true
)
IF NOT EXIST %ISSM_OPENOCD_DIR% (
    ECHO WARNING: Unable to find ISSM_OPENOCD_DIR
    set ERROR_FOUND=true
)
IF NOT EXIST %ISSM_GDB_DEFAULT_BIN% (
    ECHO WARNING: Unable to find ISSM_GDB_DEFAULT_BIN
    set ERROR_FOUND=true
)
IF "%ERROR_FOUND%" EQU "true" (
    ECHO WARNING: Please check your configuration and restart Eclipse
    PAUSE
)

START %ISSM_ROOT%\eclipse\eclipse.exe -vm C:\Java\JREs\64Bit\bin\javaw

:end

I have just deleted the java checking (which doesnt work), and forced eclipse to run with my 64 bit version. Problem 1 solved !

Then run the eclipse IDE (from the script), and create your project.

Now go to the project folder in your workspace, and create a .bat file and shove this in

 

mkdir bsp\build\release\quark_d2000\libqmsi\lib
mkdir bsp\drivers\release\quark_d2000\obj
mkdir bsp\sys\release\quark_d2000\obj
mkdir release\quark_d2000\obj
mkdir release\quark_d2000\bin

mkdir bsp\build\debug\quark_d2000\libqmsi\lib
mkdir bsp\drivers\debug\quark_d2000\obj
mkdir bsp\sys\debug\quark_d2000\obj
mkdir debug\quark_d2000\obj
mkdir debug\quark_d2000\bin

REM then add this line "CFLAGS += -I$(BASE_DIR)/drivers/include" to the base.mk file inside
REM the bsp folder

This will create the folders you need when you run it. So run it ! - PROBLEM 2 solved

Follow the instructions in the remark statements at the end, so

edit the base.mk file in the top level bsp folder (INSIDE your workspace project folder), and add this line with the CPFLAGS, basically there is a missing include folder in the make file, and this puts it in (-I means include folder/path) - PROBLEM 3 solved

0 Kudos
Richard_A_Intel
Employee
436 Views

Marcus,

Thank you for reporting these issues and I'm glad you were able to find a workaround for them.  We are working on a fix to the problems you noted and hope to resolve soon.  Other users have found they were able to overcome the issues but removing third party make utils from the path while running ISSM also worked.

Thank you,
Richard

 

0 Kudos
guillermo_a_1
Beginner
436 Views

Hello,

I'm still having problems with this. I've done all of the steps, but I'm not sure about which name should I took for the .bat that marcus recommend to create with the following code: 

mkdir bsp\build\release\quark_d2000\libqmsi\lib
mkdir bsp\drivers\release\quark_d2000\obj
mkdir bsp\sys\release\quark_d2000\obj
mkdir release\quark_d2000\obj
mkdir release\quark_d2000\bin

mkdir bsp\build\debug\quark_d2000\libqmsi\lib
mkdir bsp\drivers\debug\quark_d2000\obj
mkdir bsp\sys\debug\quark_d2000\obj
mkdir debug\quark_d2000\obj
mkdir debug\quark_d2000\bin

I'd be glad if anyone could explain this part better. 

Thanks!

Guillermo

 

0 Kudos
guillermo_a_1
Beginner
436 Views

11:37:32 **** Incremental Build of configuration build_debug for project Blink_LED ****
make 
APP_NAME = Blink_LED
SOC = quark_d2000
APP_DIR = .
BUILD = debug
make -C ./bsp/drivers SOC=quark_d2000
BUILD = debug
make[1]: Entering directory `C:/IntelSWTools/ISSM_2016.0.027/workspace/Blink_LED/bsp/drivers'
make[1]: Leaving directory `C:/IntelSWTools/ISSM_2016.0.027/workspace/Blink_LED/bsp/drivers'
i586-intel-elfiamcu-gcc -DPRINTF_ENABLE -DPUTS_ENABLE -O0 -g -DDEBUG -std=c90 -Wall -Wextra -Werror -Wno-unused-parameter -fmessage-length=0 -I./bsp/include -fno-asynchronous-unwind-tables -I./bsp/build/debug/quark_d2000/libqmsi/include -march=lakemont -mtune=lakemont -miamcu -msoft-float -DSPI_IRQ_MST -I./bsp/soc/quark_d2000/include -I./bsp/board/drivers -c -o debug/quark_d2000/obj/main.o main.c
In file included from ./bsp/soc/quark_d2000/include/qm_soc_regs.h:33:0,
                 from main.c:1:
./bsp/include/qm_common.h:40:19: fatal error: qm_rc.h: No such file or directory
compilation terminated.
make: *** [debug/quark_d2000/obj/main.o] Error 1

 

0 Kudos
guillermo_a_1
Beginner
436 Views

Ok,

It seems I manage to solve the problem, I was adding "CFLAGS += -I$(BASE_DIR)/drivers/include" in base.mk but under ##Variables instead of ##FLAGS.

0 Kudos
Reply