예제 #1
0
        /// <summary>初始化</summary>
        /// <param name="addlib"></param>
        /// <returns></returns>
        public override Boolean Init(Boolean addlib)
        {
            var basePath = ToolPath.CombinePath("arm\\bin").GetFullPath();

            Complier = basePath.CombinePath("iccarm.exe").GetFullPath();
            Asm      = basePath.CombinePath("iasmarm.exe");
            Link     = basePath.CombinePath("ilinkarm.exe");
            Ar       = basePath.CombinePath("iarchive.exe");
            ObjCopy  = basePath.CombinePath("ielftool.exe");

            IncPath = basePath.CombinePath(@"arm\include").GetFullPath();
            LibPath = basePath.CombinePath(@"arm\lib").GetFullPath();

            return(base.Init(addlib));
        }
예제 #2
0
파일: GCCArm.cs 프로젝트: weinre/XScript
        /// <summary>初始化</summary>
        /// <param name="addlib"></param>
        /// <returns></returns>
        public override Boolean Init(Boolean addlib)
        {
            if (ToolPath != location.ToolPath)
            {
                Version = location.GetVer(ToolPath);
            }

            var basePath = ToolPath.CombinePath("bin").GetFullPath();

            Complier = basePath.CombinePath("arm-none-eabi-gcc.exe").GetFullPath();
            //Asm = basePath.CombinePath(@"..\arm-none-eabi\bin\as.exe");
            Asm = basePath.CombinePath("arm-none-eabi-as.exe");
            //Link = basePath.CombinePath("arm-none-eabi-ld.exe");
            Link    = basePath.CombinePath("arm-none-eabi-gcc.exe");
            Ar      = basePath.CombinePath("arm-none-eabi-ar.exe");
            ObjCopy = basePath.CombinePath("arm-none-eabi-objcopy.exe");

            IncPath = basePath.CombinePath(@"..\arm-none-eabi\include").GetFullPath();
            LibPath = basePath.CombinePath(@"..\arm-none-eabi\lib").GetFullPath();

            return(base.Init(addlib));
        }
예제 #3
0
        /// <summary>初始化</summary>
        /// <param name="addlib"></param>
        /// <returns></returns>
        public override Boolean Init(Boolean addlib)
        {
            var basePath = ToolPath;

            if (CLang)
            {
                if (!location.Version2.IsNullOrEmpty())
                {
                    Version = location.Version2;
                }

                basePath = ToolPath.CombinePath("ARMCLANG\\bin").GetFullPath();
                if (!Directory.Exists(basePath))
                {
                    basePath = ToolPath.CombinePath("ARMCC\\bin").GetFullPath();
                }
            }
            else
            {
                // CLang编译器用来检查语法非常棒,但是对代码要求很高,我们有很多代码需要改进,暂时不用
                basePath = ToolPath.CombinePath("ARMCC\\bin").GetFullPath();
            }

            Complier = basePath.CombinePath("armcc.exe");
            if (!File.Exists(Complier))
            {
                Complier = basePath.CombinePath("armclang.exe");
            }
            Asm     = basePath.CombinePath("armasm.exe");
            Link    = basePath.CombinePath("armlink.exe");
            Ar      = basePath.CombinePath("armar.exe");
            ObjCopy = basePath.CombinePath("fromelf.exe");

            IncPath = basePath.CombinePath("..\\include").GetFullPath();
            LibPath = basePath.CombinePath("..\\lib").GetFullPath();

            return(base.Init(addlib));
        }