(1 replies, posted in wolfSSL)


I've been running into a series of problems trying to compile Wolf for a CC3220 using the `tirtos` build folder.
I can compile it from Code Composer Studio, but there's something in your build system (and/or TI's) I can't seem to figure out.


  • OS: Windows 10 (Virtual Machine)

  • Target: CC3220SF

  • Wolf version: 3.9.6

  • Compiler: ti-cgt-arm_16.9.0.LTS

  • Code Composer Studio version:

  • Build customization - I'm using the same settings and options as this tutorial: https://developer.xively.com/docs/ti-cc … ary-source

I imagine the most likely place for an error is products.mak. Setting different versions and folders gets me to different build errors. This is what I'm using right now, with alternative possibilities commented out:

#  ======== products.mak ========
# Read the http://processors.wiki.ti.com/index.php/Using_wolfSSL_with_TI-RTOS
# for instructions to download the software required.

# XDC_INSTALL_DIR is the path to XDCtools directory.
#XDC_INSTALL_DIR        =C:/ti/xdctools_3_32_00_06_core
#XDC_INSTALL_DIR        =C:/ti/xdctools_3_32_01_22_core
XDC_INSTALL_DIR        =C:/ti/xdctools_3_50_01_12_core

# BIOS_INSTALL_DIR is the path to TI-RTOS Kernel (SYS/BIOS) directory. If you
# have installed TI-RTOS, it is located in the products/bios_* path.
#BIOS_INSTALL_DIR       =C:/ti/simplelink_cc32xx_sdk_1_30_01_03/kernel/tirtos/packages/ti/sysbios
BIOS_INSTALL_DIR       =C:/ti/tirtos_cc32xx_2_16_01_14/products/bios_6_45_02_31

# NDK_INSTALL_DIR is the path to TI-RTOS NDK directory. If you have
# installed TI-RTOS, it is located in the products/ndk_* path.
NDK_INSTALL_DIR        =C:/ti/simplelink_cc32xx_sdk_1_30_01_03/kernel/tirtos/packages/ti/uia/scripts/ndk

# TIVAWARE_INSTALL_DIR is the path to Tivaware driverlib directory. If you have
# installed TI-RTOS, it is located in the products/TivaWare_* path.

# Define the code generation tools path for TI, IAR and GCC ARM compilers.
# If you have installed Code Composer Studio, the TI and GCC compiler are
# located in the ccsv*/tools/compiler/* path.
# Leave assignment empty to disable any toolchain.
ti.targets.arm.elf.M4F =C:/ti/ccsv7/tools/compiler/ti-cgt-arm_16.9.0.LTS
iar.targets.arm.M4F    =
gnu.targets.arm.M4F    =

#export XDCTOOLS_JAVA_HOME = C:/Program\ Files/Java/jre1.8.0_131
export XDCTOOLS_JAVA_HOME = C:/ti/xdctools_3_50_01_12_core/jre

Unfortunately, when I run

gmake -f wolfssl.bld all

I get this error:

js: "C:/ti/tirtos_cc32xx_2_16_01_14/products/bios_6_45_02_31/packages/ti/targets/arm/elf/IArm.xs", line 77: Error: The compiler in C:/ti/ccsv7/tools/compiler/ti-cgt-arm_16.9.0.LTS gnu.targets.arm.M4F is not compatible with this version of TI-RTOS or SYS/BIOS. Please use Arm compiler 5.2.2 or newer.

(full logs: https://gist.github.com/Palantir555/093 … 9ca0301edc )

As you can see, I'm using version 16.9.0 of TI's arm compiler, so I'm not sure what that error is about.

The NDK_INSTALL_DIR path doesn't look right, but I have no `ndk_[...]` folder in C:/ti/, and not setting it results in this other error:

======== .interfaces [./packages/ti/net/wolfssl] ========
making package.mak (because of package.bld) ...
Warning: no config.bld file was found along the package path.
         The config.bld file specifies the location of the
         compiler tool-chains required to compile runtime content.
         Without this file, the XDC tools assume no targets are to be
generating interfaces for package ti.net.wolfssl (because package/package.xdc.inc is older than package.xdc) ...

I've tried using many combinations of the products.mak variables you see there, modified 'IArm.xs:77' to bypass the "toolchain version" error, reverted the library customizations explained in the link above, linked to the GNU compiler instead of TI's, etc. but it always results in one error or another.
I'm happy to elaborate on some of those if you think it would be useful.

  • Does that products.mak look OK to you? Would you recommend using any of the alternative variables? Install different versions of anything?

  • Do you think building with your build system is worth the effort it would take to get this working?

  • Would you recommend using other compilers/IDE version/Wolf version/?  ??