2 Replies Latest reply on Aug 31, 2020 2:12 PM by NoTa_4591161

    Community Translation - Linking External C Files to a PSoC Designer Project with Imagecraft Compiler

    NoTa_4591161

      Hi,               

       

      I would like to translate KBA into Japanese.

      https://community.cypress.com/docs/DOC-11534

      Please confirm to my work.

       

      Thanks,

      Kenshow

        • 1. Re: Community Translation - Linking External C Files to a PSoC Designer Project with Imagecraft Compiler
          JuyoungJ_06

          Hi, Kenshow-san

          Confirm to work this KBA.

           

          Please note that -

          Autumn program will start at Sep 1th.

           

          If you want to submit as Autumn program, please submit it from Sep 1th.

          If you want to submit as Summer program, please submit it by Aug 31th.

           

          Thanks,

          Jenna

          • 2. Re: Community Translation - Linking External C Files to a PSoC Designer Project with Imagecraft Compiler
            NoTa_4591161

            Hi Jenna-san,

                                            

            Japanese translation was over.
            Please check below.

             

            Original KBA:

            Linking External C Files to a PSoC Designer Project with Imagecraft Compiler

             

            Thanks.

            Kenshow

            ==============================

             

            タイトル: Imagecraft Compilerを使用して外部CファイルをPSoC Designerプロジェクトにリンクする

             

            バージョン:**

             

            質問:

            Imagecraftコンパイラを使用して外部CファイルをPSoC Designerプロジェクトにリンクする方法は?

             

            回答:

            プロジェクトディレクトリの外部にある外部ファイルをPSoC Designerプロジェクトにリンクするには、Local.mkファイルを編集する必要があります。これについては、「IDEユーザーガイド」のドキュメント(Help -> Documentation -> Designer Specific Documents)のセクションB.5.3で説明されています。

            Imagecraftコンパイラを使用してPD5.1で正しくコンパイルされたサンプルプロジェクトがここに添付されています。local.mkファイルに次の行を追加することにより、外部のcファイルがリンクされました。local.mkファイルを開くには、Project -> "Open Local.mk for this Project" をクリックします。次の行を追加します。

             

            # CSRCS is used by makedepends to get the external headers/dependencies

            CSRCS:=$(CSRCS) C:/ExtFile/ExtFunctions.c

            OBJECT_SOURCES:=$(OBJECT_SOURCES) ExtFunctions.c

            # new rule to tell MAKE to get C files from C:/ExtFile

            # DON'T have files in COMMON with the same name as this project's Source

            # Files because we won't know which file MAKE will build last.

            obj/%.o : C:/ExtFile/%.c

            ifeq ($(ECHO_COMMANDS),novice)

                  echo $(call correct_path,$<)

            endif

                  $(CCMD) $(CFLAGS) $(CDEFINES) $(INCLUDEFLAGS) $(DEFAULTCFLAGS) -o $@ $(call correct_path,$<)

             

              注意すべき重要な点がいくつかあります。

              -"echo ...." "$CCMD..."の行頭にタブ(スペースではない)があります。 これらの行をコピーしてlocal.mkファイルに貼り付ける場合、これは重要です。

              -メインコードの上部にある外部Cファイルで定義されている関数を宣言する必要があります。それ以外の場合、コンパイラは警告を出します。

              -メインコードに「include」ステートメントを追加する必要はありません。また、.hまたはインクルードファイルを外部ディレクトリに配置している場合は、ビルダーがファイルを見つけられないため、このプロセスを変更する必要があります。

            -local.mkファイルに追加されたこれらの行は、Imagecraftコンパイラでのみ機能し、Hi-Techコンパイラでは機能しません。

              

              このサンプルプロジェクトでは、C/Extfileにある外部ファイル "ExtFunctions.c"がリンクされています。プロジェクトをテストするには、

            1. 添付されているzipファイルを開き、内容を抽出します。
            2. ExtFile」フォルダをC:ドライブにコピーします。
            3. Add_External_C_File」プロジェクトを開きます。
            4. プロジェクトを生成してビルドします。
            5. CY3210キットを使用して、コードをCY8C29466-PXIデバイスにダウンロードします。
            6. P0 [0]に接続されたLEDが点滅するかどうかを確認します。

             

            ==============================

            1-Sept-2020

              Kenshow