Skip to content

Instantly share code, notes, and snippets.

@rikka0w0
Last active February 12, 2020 16:37
Show Gist options
  • Save rikka0w0/8d7218a3465bcdde85caec27c58deee1 to your computer and use it in GitHub Desktop.
Save rikka0w0/8d7218a3465bcdde85caec27c58deee1 to your computer and use it in GitHub Desktop.
Add "Stack Analyzer" and "Build Analyzer" from STM32CubeMxIDE to Eclipse AC6
-startup
plugins/org.eclipse.equinox.launcher_1.5.0.v20180512-1130.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.700.v20180518-1200
-product
com.ti.ccstudio.branding.product
-showsplash
com.ti.ccstudio.branding
--launcher.defaultAction
openFile
--launcher.appendVmargs
-vmargs
[email protected]/workspace_v9
-Djxbrowser.ipc.external=true
-Dorg.eclipse.equinox.http.jetty.customizer.class=com.ti.ccstudio.gui.composer.http.jetty.MaqettaJettyCustomizer
-Dccs.minXDCVersion=3.25.5.1
-Dorg.eclipse.ecf.provider.filetransfer.retrieve.readTimeout=30000
-Dorg.eclipse.ecf.provider.filetransfer.retrieve.closeTimeout=10000
-Dsun.net.client.defaultReadTimeout=30000
-Dsun.net.client.defaultConnectTimeout=10000
-Dcustom_toolchain_loc=plugins\fr.ac6.mcu.externaltools.arm-none.win32_1.17.0.201812190825\tools\compiler
-Xms128m
-Xmx768m
-XX:ErrorFile=C:\Users\A0792124\AppData\Local\TEXASI~1\CCS\86B0A~1.2-B\0\dmp\\hs_err_%p.log
-startup
plugins/org.eclipse.equinox.launcher_1.5.0.v20180512-1130.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.700.v20180518-1200
--launcher.defaultAction
openFile
--launcher.appendVmargs
-vmargs
-Dosgi.requiredJavaVersion=1.8
-Dosgi.dataAreaRequiresExplicitInit=true
-Dcustom_toolchain_loc=plugins\fr.ac6.mcu.externaltools.arm-none.win32_1.17.0.201812190825\tools\compiler
-Xms40m
-Xmx512m
--add-modules=ALL-SYSTEM
package com.st.stm32cube.ide.mcu.toolchain;
import java.util.Map;
import java.util.function.Supplier;
import com.st.stm32cube.common.ecosystemintegration.core.CompilerEnum;
import com.st.stm32cube.ide.mcu.toolchain.IToolChainInfo;
public class Fr6ToolChainInfo implements IToolChainInfo{
@Override
public int compareTo(IToolChainInfo o) {
// TODO Auto-generated method stub
return 0;
}
@Override
public String getId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBaseId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getVersion() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getFullQualifiedId() {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean isDefault() {
// TODO Auto-generated method stub
return false;
}
@Override
public String getName() {
return null;
}
@Override
public CompilerEnum getCompiler() {
return CompilerEnum.GCC;
}
@Override
public String getDynamicVariableName() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildExecutableExtension() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildStaticLibExtension() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildExecutableId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildStaticLibId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getMcuToolchainBaseId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getMcuToolchainExeId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getMcuConfigExeDebugId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getMcuConfigExeReleaseId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getMcuConfigLibDebugId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getMcuConfigLibReleaseId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getMcuToolchainExeProjectId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getMcuToolchainLibProjectId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionInstructionSetId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionInstructionSetValueThumb2() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionFloatabiId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionFloatabiValueSoft() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionFloatabiValueSoftfp() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionFloatabiValueHard() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionPathId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionPrefixId() {
return "fr.ac6.managedbuild.option.gnu.cross.prefix";
}
@Override
public String getBuildOptionDefaultsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionMcuId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionBoardId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionCpuId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionCoreId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionRuntimeLibraryCId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionRuntimeLibraryCppId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionRuntimeLibraryValueStandardC() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionRuntimeLibraryValueNanoC() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionRuntimeLibraryValueStandardCStandardCpp() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionRuntimeLibraryValueStandardCNanoCpp() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionRuntimeLibraryValueNanoCStandardCpp() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionRuntimeLibraryValueNanoCNanoCpp() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionPrintfFloatNanoId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionScanfFloatNanoId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionFpuId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionFpuValueNone() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionFpuValueFpv4SpD16() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionFpuValueFpv5D16() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionFpuValueFpv5SpD16() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionFpuValueNeonVfpv3() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionFpuValueNeonVfpv4() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionFpuValueVfpv3D16() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionFpuValueVfpv3D32() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionFpuValueVfpv4D16() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionFpuValueVfpv4D32() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionShowsizeId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionListfileId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionConverthexId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionConvertbinaryId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionConvertsrecId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionConvertsymbolsrecId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getBuildOptionConvertverilogId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerDebuglevelId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerDebuglevelValueG0() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerDebuglevelValueG1() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerDebuglevelValueG() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerDebuglevelValueG3() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerOtherflagsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerUndefsymbolsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerNostdincId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerPreprocessonlyId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerSymbolsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerIncludepathId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerIncludefilesId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolAssemblerId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolAssemblerOtherflagsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolAssemblerIncludepathId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolAssemblerDebuglevelId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolAssemblerDebuglevelValueG0() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolAssemblerDebuglevelValueG1() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolAssemblerDebuglevelValueG() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolAssemblerDebuglevelValueG3() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolAssemblerUndefsymbolsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolAssemblerSymbolsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolAssemblerSuppressWarningsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolAssemblerAlwaysPreprocessId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerFfunctionSectionsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerFdataSectionsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerSlowdataId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerFpicId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerStackUsageId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerWarningAllId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerWarningExtraId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerWarningTreataserrorId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerWarningFatalId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerWarningPedanticId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerWarningPedanticerrorsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerWarningMissingincludedirsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerWarningSwitchdefaultId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerWarningSwitchenumId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerWarningConversionId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerLanguagestandardId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerLanguagestandardValueDefault() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerLanguagestandardValueIsoc90() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerLanguagestandardValueIso9899199409() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerLanguagestandardValueIsoc99() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerLanguagestandardValueIsoc11() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerLanguagestandardValueGnu90() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerLanguagestandardValueGnu99() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerLanguagestandardValueGnu11() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerOptimizationlevelId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerOptimizationlevelValueO0() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerOptimizationlevelValueO1() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerOptimizationlevelValueO2() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerOptimizationlevelValueO3() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerOptimizationlevelValueOg() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerOptimizationlevelValueOs() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerOptimizationlevelValueOfast() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerSecureId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCCompilerSecureLibraryId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerDebuglevelId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerDebuglevelValueG0() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerDebuglevelValueG1() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerDebuglevelValueG() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerDebuglevelValueG3() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerOtherflagsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerUndefsymbolsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerNostdincId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerPreprocessonlyId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerSymbolsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerIncludepathId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerIncludefilesId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerFfunctionSectionsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerFdataSectionsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerSlowdataId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerFpicId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerNolinkId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerNoexceptionsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerNorttiId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerStackUsageId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerNoThreadsafeStaticsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerWarningAllId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerWarningExtraId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerWarningTreataserrorId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerWarningFatalId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerWarningPedanticId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerWarningPedanticerrorsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerWarningMissingincludedirsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerWarningSwitchdefaultId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerWarningSwitchenumId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerWarningConversionId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerLanguagestandardId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerLanguagestandardValueDefault() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerLanguagestandardValueIsocpp98() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerLanguagestandardValueIsocpp11() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerLanguagestandardValueIsocpp14() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerLanguagestandardValueGnupp98() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerLanguagestandardValueGnupp11() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerLanguagestandardValueGnupp14() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerOptimizationlevelId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerOptimizationlevelValueO0() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerOptimizationlevelValueO1() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerOptimizationlevelValueO2() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerOptimizationlevelValueO3() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerOptimizationlevelValueOg() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerOptimizationlevelValueOs() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerOptimizationlevelValueOfast() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerSecureId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppCompilerSecureLibraryId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCLinkerScriptId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCLinkerSystemcallsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCLinkerSystemcallsValueNone() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCLinkerSystemcallsValueMinimal() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCLinkerMapId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCLinkerCrefId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCLinkerGcsectionsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCLinkerVerboseId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCLinkerNostartId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCLinkerNodefaultlibsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCLinkerNostdlibId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCLinkerLibrariesId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCLinkerLibrarysearchId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCLinkerOtherflagsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCLinkerAdditionalobjectsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCLinkerSecureLibraryGeneratorId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCLinkerId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCLinkerLibmathId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppLinkerScriptId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppLinkerSystemcallsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppLinkerSystemcallsValueNone() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppLinkerSystemcallsValueMinimal() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppLinkerMapId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppLinkerCrefId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppLinkerGcsectionsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppLinkerVerboseId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppLinkerNostartId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppLinkerNodefaultlibsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppLinkerNostdlibId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppLinkerLibrariesId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppLinkerLibrarysearchId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppLinkerOtherflagsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppLinkerAdditionalobjectsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppLinkerSecureLibraryGeneratorId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppLinkerId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolCppLinkerLibmathId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolArchiverId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolArchiverReplaceId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolArchiverOtherflagsId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolObjcopyBinaryId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolObjcopyHexId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolObjcopyVerilogId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolObjcopySrecId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolObjcopySymbolsrecId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getToolObjdumpListfileId() {
// TODO Auto-generated method stub
return null;
}
@Override
public String getCCppSibling(Supplier<String> p0, boolean p1) {
// TODO Auto-generated method stub
return null;
}
@Override
public Map<Supplier<String>, Supplier<String>> getCCppSiblings() {
// TODO Auto-generated method stub
return null;
}
}

Add Stack Analyzer and Build Analyzer from STM32CubeMxIDE to Eclipse AC6

Ready-to-use package attached, ver2.rar is better. Unzip to plugins folder and don't forge step 4.

  1. Extract (Using 7-zip) the following file from st-stm32cubeide_1.2.0_5034_20200108_0926_x86_64.exe and put them into the plugins folder.
com.st.stm32cube.common.ecosystemintegration.stinsider_1.2.0.201912201802
com.st.stm32cube.common.ecosystemintegration.ui_1.1.0.201910081157
com.st.stm32cube.common.ecosystemintegration_1.2.0.201912201802
com.st.stm32cube.common.logger.ui_1.0.0.201904021149
com.st.stm32cube.common.logger_1.0.0.201904101131
com.st.stm32cube.common.mx.oss_5.5.0.201912201511
com.st.stm32cube.common.mx.stinsider_5.5.0.201912201511
com.st.stm32cube.common.mx_5.5.0.201912201511
com.st.stm32cube.common.preferences_1.0.0.201904021149
com.st.stm32cube.common.projectcreation_1.1.0.201910081157
com.st.stm32cube.common.utils_1.1.0.201910081157
com.st.stm32cube.ide.common.services.adapted_1.2.0.201912201802
com.st.stm32cube.ide.common.services.mx_1.2.0.201912201802
com.st.stm32cube.ide.common.services_1.1.0.201910081756
com.st.stm32cube.ide.mcu.debug.openocd_1.2.0.201912201802
com.st.stm32cube.ide.mcu.debug_1.2.0.201912201802
com.st.stm32cube.ide.mcu.ide_1.2.0.201912201802
com.st.stm32cube.ide.mcu.linker_1.2.0.201912201802
com.st.stm32cube.ide.mcu.productdb.debug_1.2.0.201912201802
com.st.stm32cube.ide.mcu.productdb_1.2.0.202001031458
com.st.stm32cube.ide.mcu.projectnatures_1.1.0.201910081550
com.st.stm32cube.ide.mcu.projecttree_1.1.0.201910081157
com.st.stm32cube.ide.mcu.resources.common_1.1.0.201910081157
com.st.stm32cube.ide.mcu.resources.extended_1.1.0.201910081157
com.st.stm32cube.ide.mcu.resources_1.1.0.201910081157
com.st.stm32cube.ide.mcu.startup_1.1.0.201910081157
com.st.stm32cube.ide.mcu.targetadapter_1.1.0.201910081157
com.st.stm32cube.common.projectcreation.ui_1.2.0.201912201802.jar
com.st.stm32cube.ide.common.ui.oss_1.0.0.201904021149.jar
com.st.stm32cube.ide.common.ui_1.2.0.201912201802.jar
com.st.stm32cube.ide.common.utils_1.1.0.201910081157.jar
com.st.stm32cube.ide.mcu.build.ui_1.1.0.201910081157.jar
com.st.stm32cube.ide.mcu.build_1.2.0.201912201802.jar
com.st.stm32cube.ide.mcu.buildanalyzer_1.2.0.201912201802.jar
com.st.stm32cube.ide.mcu.converters_1.2.0.201912201802.jar
com.st.stm32cube.ide.mcu.debug.dsf.oss_1.1.0.201910081157.jar
com.st.stm32cube.ide.mcu.debug.dsf_1.1.0.201910081157.jar
com.st.stm32cube.ide.mcu.debug.jlink_1.2.0.201912201802.jar
com.st.stm32cube.ide.mcu.debug.launch.oss_1.2.0.201912201802.jar
com.st.stm32cube.ide.mcu.debug.launch_1.2.0.201912201802.jar
com.st.stm32cube.ide.mcu.debug.stlink_1.2.0.201912201802.jar
com.st.stm32cube.ide.mcu.externaltools.cubeprogrammer_1.0.0.201904021149.jar
com.st.stm32cube.ide.mcu.externaltools.gnu-arm-embedded.7-2018-q2-update_1.0.0.201904021149.jar
com.st.stm32cube.ide.mcu.externaltools.gnu-arm-embedded_1.1.0.201910081157.jar
com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update_1.0.0.201904181610.jar
com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32_1.1.0.201910081157.jar
com.st.stm32cube.ide.mcu.externaltools.jlink_1.1.0.201910081157.jar
com.st.stm32cube.ide.mcu.externaltools.make_1.0.0.201904051004.jar
com.st.stm32cube.ide.mcu.externaltools.openocd_1.1.0.201910081157.jar
com.st.stm32cube.ide.mcu.externaltools.oss_1.0.0.201904021149.jar
com.st.stm32cube.ide.mcu.externaltools.stlink-gdb-server_1.0.0.201904021149.jar
com.st.stm32cube.ide.mcu.externaltools.stlinkserver.win32_1.0.0.201904231432.jar
com.st.stm32cube.ide.mcu.externaltools.ui_1.0.0.201904021149.jar
com.st.stm32cube.ide.mcu.externaltools_1.1.0.201910081157.jar
com.st.stm32cube.ide.mcu.ide.oss_1.1.0.201910081157.jar
com.st.stm32cube.ide.mcu.linker.ui_1.0.0.201904021149.jar
com.st.stm32cube.ide.mcu.stackanalyzer_1.1.0.201910081157.jar
com.st.stm32cube.ide.mcu.toolchain.arm-none.oss_1.2.0.201912201802.jar
com.st.stm32cube.ide.mcu.toolchain.arm-none_1.2.0.201912201802.jar
com.st.stm32cube.ide.mcu.toolchain.ui_1.1.0.201910081157.jar
com.st.stm32cube.ide.mcu.toolchain.utils_1.0.0.201904021149.jar
com.st.stm32cube.ide.mcu.toolchain_1.1.0.201910081157.jar

You don't need to copy the features folder.

  1. Patch com.st.stm32cube.ide.mcu.toolchain_1.1.0.201910081157.jar with Javassist using the following java code:

import java.io.DataInput;
import java.io.DataInputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;

import javassist.bytecode.ClassFile;
import javassist.bytecode.ClassFileWriter;
import javassist.bytecode.MethodInfo;
import javassist.expr.ExprEditor;
import javassist.expr.MethodCall;
import javassist.CannotCompileException;
import javassist.ClassPool;
import javassist.CtClass;
import javassist.CtMethod;

public class Main {

	public static void main(String[] args) {
//		String filePath="D:\\STM32\\STM32CubeMXPatcher\\Disassembler.class";
//        FileInputStream fis = null;
//        try {
//            fis = new FileInputStream(filePath);
//        } catch (FileNotFoundException e) {
//            // TODO Auto-generated catch block
//            e.printStackTrace();
//        }
//        
//        DataInputStream di = new DataInputStream(fis);
        ClassFile cf = null;
        try {
        	ClassPool classPool = ClassPool.getDefault();
        	classPool.insertClassPath("D:\\Administrator\\Desktop\\STM32CubeIDE\\plugins\\org.eclipse.cdt.managedbuilder.core_8.7.200.201909091956.jar");
        	classPool.insertClassPath("D:\\Administrator\\Desktop\\STM32CubeIDE\\plugins\\com.st.stm32cube.ide.mcu.build_1.2.0.201912201802.jar");
        	classPool.insertClassPath("C:\\Program Files\\Java\\jdk1.8.0_151\\jre\\lib\\rt.jar");
        	classPool.insertClassPath("D:\\Administrator\\Desktop\\STM32CubeIDE\\plugins\\com.st.stm32cube.ide.mcu.toolchain_1.1.0.201910081157.jar");
        	//CtClass cc = classPool.makeClass(di);
        	//CtMethod method = cc.getDeclaredMethod("executeObjDump");
        	
//        	CtClass cc = classPool.get("com.st.stm32cube.ide.mcu.build.setup.BuildSetupUtilities");
//        	CtMethod method = cc.getDeclaredMethod("getPrefix");
//        	method.insertAt(673, "if(true) return java.util.Optional.of(\"arm-none-eabi-\");");
//        	cc.writeFile("d:\\BuildSetupUtilities.class");
        	
        	CtClass cc = classPool.get("com.st.stm32cube.ide.mcu.toolchain.ToolChainHelper");
        	CtClass[] params = new CtClass[] {classPool.get("org.eclipse.cdt.managedbuilder.core.IToolChain")};
        	CtMethod method = cc.getDeclaredMethod("getToolChainInfo", params);
        	method.insertAt(62, "if(true) {return new com.st.stm32cube.ide.mcu.toolchain.Fr6ToolChainInfo();}");
        	
        	cc.writeFile("d:\\patched");
        	
/*        	method.instrument(
        	    new ExprEditor() {
        	        public void edit(MethodCall m) throws CannotCompileException
        	        {
        	        	String className = m.getClassName();
        	        	String methodName = m.getMethodName();
        	        	System.out.println(className);
        	            if (className.equals("com.st.stm32cube.ide.mcu.build.setup.BuildSetupUtilities"))
        	                m.replace("{ $1 = 0; $_ = $proceed($$); }");
        	        }
        	    }
        );*/

        	System.out.println("Done!");
        } catch (Exception e) {
        	e.printStackTrace();
        }

	}

}
  1. Edit plugins.xml or Fragments.xml to remove unused menu items and property pages:
com.st.stm32cube.ide.mcu.debug_1.2.0.201912201802
com.st.stm32cube.common.projectcreation.ui_1.2.0.201912201802.jar
com.st.stm32cube.ide.mcu.ide_1.2.0.201912201802
com.st.stm32cube.ide.mcu.externaltools_1.1.0.201910081157.jar # Prevent unwanted variable creation
  1. Edit ccstudio.ini or eclipse.ini: Add -Dcustom_toolchain_loc=plugins\fr.ac6.mcu.externaltools.arm-none.win32_1.17.0.201812190825\tools\compiler just before -Xms128m

  2. Add -fstack-usage flag to GCC compiler settings (per project)

This file has been truncated, but you can view the full file.
View raw

(Sorry about that, but we can’t show files that are this big right now.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment