SD32 Migration Issues

cancel
Showing results for 
Search instead for 
Did you mean: 

SD32 Migration Issues

291 Views
Contributor V

Hi,

I am having trouble trying to migrate SD32 from S32 Design Studio for Power Architecture® 2017.R1 to SD32 Design Studio for Power Architecture v2.1. (Power Architecture)

My issue is that a project I had that used to compile, no longer wants to compile.

I eventually went back to S32 Design Studio for Power Architecture® 2017.R1 and I noticed the path to the VLE toolchain directory was different

When I reinstalled SD32 Design Studio for Power Architecture v2.1,

I noticed the VLE_TOOLCHAIN_DIR is ${eclipse_home}../Cross_Tools/powerpc-eabivle-4_9 which is not correct. 

It should be ${eclipse_home}../S32DS/build_tools/powerpc-eabivle-4_9 (if I am not mistaken. Please verify this)

I added the path in C/C++ Build Environment, then it seem to compile correctly, until it got to the  very end and complained about finding -lc. After reading another post(c++ - usr/bin/ld: cannot find -l - Stack Overflow )

I tried adding 'a' library path to C/C++ Build/Settings/Standard S32DS C Linker/libraries, but that causes more errors.

I say 'a' library path, because there are many to choose from. I tried them all.

libc.a libary path: C:\NXP\S32DS_Power_v2.1\S32DS\build_tools\e200_ewl2\lib

I downloaded what seems to be a cummulative patch for S32 [S32 Design Studio for Power Architecture v2.1 Update 7(REV UP7)], but there is no update.exe file, just .xml and .jar files. I'm not sure how to apply the patch/update.

Thanks for reading.

10:19:44 **** Incremental Build of configuration Debug for project prj_mpc5746c ****
make -j4 all
Building target: prj_mpc5746c.elf
Invoking: Standard S32DS C Linker
powerpc-eabivle-gcc -o "prj_mpc5746c.elf" "@prj_mpc5746c.args"
./src/LIB.o: In function `LIB_print_memory':
C:\workspace\prj_mpc5746c\Debug/../src/LIB.c:112: undefined reference to `__ctype_ptr__'
C:\workspace\prj_mpc5746c\Debug/../src/LIB.c:112: undefined reference to `__ctype_ptr__'
C:/NXP/S32DS_Power_v2.1/S32DS/build_tools/e200_ewl2/lib\libc.a(vsnprintf.o): In function `vsnprintf':
e200_ewl2/EWL_C/src/stdio/vsnprintf.c:43: undefined reference to `__pformatter'
./Project_Settings/Startup_Code/startup.o: In function `_start':
C:\workspace\prj_mpc5746c\Debug/../Project_Settings/Startup_Code/startup.S:117: undefined reference to `__SRAM_SIZE'
C:\workspace\prj_mpc5746c\Debug/../Project_Settings/Startup_Code/startup.S:118: undefined reference to `__SRAM_SIZE'
C:\workspace\prj_mpc5746c\Debug/../Project_Settings/Startup_Code/startup.S:123: undefined reference to `__SRAM_BASE_ADDR'
C:\workspace\prj_mpc5746c\Debug/../Project_Settings/Startup_Code/startup.S:124: undefined reference to `__SRAM_BASE_ADDR'
./Project_Settings/Startup_Code/startup.o: In function `DATACOPY':
C:\workspace\prj_mpc5746c\Debug/../Project_Settings/Startup_Code/startup.S:136: undefined reference to `__DATA_SIZE'
C:\workspace\prj_mpc5746c\Debug/../Project_Settings/Startup_Code/startup.S:137: undefined reference to `__DATA_SIZE'
C:\workspace\prj_mpc5746c\Debug/../Project_Settings/Startup_Code/startup.S:143: undefined reference to `__DATA_ROM_ADDR'
C:\workspace\prj_mpc5746c\Debug/../Project_Settings/Startup_Code/startup.S:144: undefined reference to `__DATA_ROM_ADDR'
C:\workspace\prj_mpc5746c\Debug/../Project_Settings/Startup_Code/startup.S:147: undefined reference to `__DATA_SRAM_ADDR'
C:\workspace\prj_mpc5746c\Debug/../Project_Settings/Startup_Code/startup.S:148: undefined reference to `__DATA_SRAM_ADDR'
./Project_Settings/Startup_Code/startup.o: In function `SDATACOPY':
C:\workspace\prj_mpc5746c\Debug/../Project_Settings/Startup_Code/startup.S:160: undefined reference to `__SDATA_SIZE'
C:\workspace\prj_mpc5746c\Debug/../Project_Settings/Startup_Code/startup.S:161: undefined reference to `__SDATA_SIZE'
C:\workspace\prj_mpc5746c\Debug/../Project_Settings/Startup_Code/startup.S:167: undefined reference to `__SDATA_ROM_ADDR'
C:\workspace\prj_mpc5746c\Debug/../Project_Settings/Startup_Code/startup.S:168: undefined reference to `__SDATA_ROM_ADDR'
C:\workspace\prj_mpc5746c\Debug/../Project_Settings/Startup_Code/startup.S:171: undefined reference to `__SDATA_SRAM_ADDR'
C:\workspace\prj_mpc5746c\Debug/../Project_Settings/Startup_Code/startup.S:172: undefined reference to `__SDATA_SRAM_ADDR'
./Project_Settings/Startup_Code/startup.o: In function `bss_Init':
C:\workspace\prj_mpc5746c\Debug/../Project_Settings/Startup_Code/startup.S:266: undefined reference to `__BSS_SIZE'
C:\workspace\prj_mpc5746c\Debug/../Project_Settings/Startup_Code/startup.S:267: undefined reference to `__BSS_SIZE'
C:\workspace\prj_mpc5746c\Debug/../Project_Settings/Startup_Code/startup.S:273: undefined reference to `__BSS_START'
C:\workspace\prj_mpc5746c\Debug/../Project_Settings/Startup_Code/startup.S:274: undefined reference to `__BSS_START'
./Project_Settings/Startup_Code/startup.o: In function `bss_Init_end':
C:\workspace\prj_mpc5746c\Debug/../Project_Settings/Startup_Code/startup.S:286: undefined reference to `__SP_INIT'
C:\workspace\prj_mpc5746c\Debug/../Project_Settings/Startup_Code/startup.S:287: undefined reference to `__SP_INIT'
collect2.exe: error: ld returned 1 exit status
make: *** [prj_mpc5746c.elf] Error 1

10:19:51 Build Finished (took 6s.977ms)

9 Replies

26 Views
NXP Employee
NXP Employee

hello,

regarding the procedure of installing update - this is Eclipse type of update, not regular installer.

there is HowTo topic which describe how to install it- https://community.nxp.com/docs/DOC-342274 

and if your pc is connected to Internet - you should see those updates directly from update site, you as well need to go to the S32DS Extensions and Updates dialog and you should see them there (just skip steps with defining link to the archive)

hope this helps, 

Irina

26 Views
Contributor III

With the various S32DS installations, the software sites are filled in for you, but some of the important ones are not turned on by default. You might want to check into that.

0 Kudos

26 Views
Contributor V

Thank you.

0 Kudos

26 Views
NXP Employee
NXP Employee

Hello,

Andrei gave very correct advice - it is recommended to start from fresh workspace when you install new version and import your project there, in that case the environments/Eclipse variables will be adjusted correctly without manual steps.

0 Kudos

26 Views
Contributor III

I had other, but very similar problems when I went from 17 to 2.1 and when I gave up and reverted from 2.1 back to 17.

The trick is that you have to create a new eclipse workspace and pull your projects back in. That worked really well.

As for the updates being xml and jar, to use these <help><install new software...><add><local...> and point it at the updater directory.

It works, it's not documented, but it works.

Andrei from The Great White North (currently -30C)

0 Kudos

26 Views
Contributor V

Thank you very much.  36F

0 Kudos

26 Views
NXP Employee
NXP Employee

Hello,

what problems did you have that caused you to revert? maybe we could help with this

Best regards

Irina

0 Kudos

26 Views
Contributor III

Oh I doubt it. I was using 2.1 and I was working with someone else who was using 2017, and when he would pull the project from git, he would run into a new option in the GDB P&E Debugger, Advanced Options panel dealing with initialization scripts, and he couldn't push code into our device.

It was easier for me to regress to 2017 than it was for him to update to 2.1 as I was just writing the code, but he was testing it attached to a 750HP truck, and blowing an engine would be "A Bad Thing®"

(although the C compiler did not get updated between versions :-( , so there probably wouldn't have been any appreciable downside, but the timing of the update was hugely inconvenient)

But not being able to continue using my workspace was unexpected. I've been using Eclipse for a few years now, and I've written a whole pile of articles on embedded.fm/blog helping others get started in embedded systems, and in all of those years I've never run into an issue where the workspace wasn't converted so that I could just continue using it.

A

0 Kudos

26 Views
Contributor V

I noticed the VLE_TOOLCHAIN_DIR is ${eclipse_home}../Cross_Tools/powerpc-eabivle-4_9 which is not correct. 

It should be ${eclipse_home}../S32DS/build_tools/powerpc-eabivle-4_9

They changed the directory in 2.1, but failed to change it in the system variables.

0 Kudos