This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TM4C1294NCPDT: 關於include使用問題

Part Number: TM4C1294NCPDT

hello.zip

測試使用TivaWare_C_Series-2.2.0.295 SDK內的範例hello

1.把Tivaware SDK相關的驅動底層複製到hello專案內

2.移除Tivaware SDK,專案可成功單獨運行不需依靠Tivaware SDK,如附檔所示

Q:

在hello.c文件裡,舉例列出三項include路徑會找不到

#include "inc/hw_memmap.h"  //這語法是如何找到Tivaware檔案呢?
#include "inc/hw_types.h"
#include "driverlib/gpio.h"  

須作如下修改指定到明確路徑

#include "TivaWare_C_Series-2.2.0.295/inc/hw_memmap.h"
#include "TivaWare_C_Series-2.2.0.295/inc/hw_types.h"
#include "TivaWare_C_Series-2.2.0.295/driverlib/gpio.h"

有辦法在CCS裡面做什麼環境參數設定,不做路徑修改依然可找到include路徑嗎?

謝謝

  • Hi,

    在hello.c文件裡,舉例列出三項include路徑會找不到

    因为文件的相对路径发生了改变。原先inc文件夹hello.c文件在同一文件夹下,现在移动到了TivaWare_C_Series-2.2.0.295文件夹下。移植工程的时候至少要保证相对路径的一致。

  • 原先inc文件夹路徑在TivaWare_C_Series-2.2.0.295安裝路徑下

    hello.c文件在工作目錄路徑下

    原本應該就不是同一路徑下才對吧???????

  • 因为原先SDK是被整个添加到IDE中的。

    您试一下 inc 文件夹直接和 hello.c 放在同一个目录下是否可行,或者将 inc/ 去掉,因为使用双引号include时,会先在工程所在的目录寻找被包含的头文件。

  • inc 文件夹直接和 hello.c 放在同一个目录下,這解法我就不會上來問了,這應該最直接的解法

    我一開始的問題就是有辦法在CCS裡面做什麼環境參數設定,不做路徑修改依然可找到include路徑嗎?

    因為原始不修改範例程式裡面

    #include "inc/hw_memmap.h"  //inc文件夹和hello.c文件在不同一文件夹下,這語法是如何找到hw_memmap.h檔案呢?

  • 我一開始的問題就是有辦法在CCS裡面做什麼環境參數設定,不做路徑修改依然可找到include路徑嗎?

    不可以

    因為原始不修改範例程式裡面

    #include "inc/hw_memmap.h"  //inc文件夹和hello.c文件在不同一文件夹下,這語法是如何找到hw_memmap.h檔案呢?

    因为原先SDK是被整个添加到IDE中的。

    使用双引号include时(#include "xxx"),会先在工程所在的目录去寻找被包含的头文件;如果没有找到的话,就去系统库中寻找。

    --

    Thanks