各位好,
我使用的是C6748,下载了相应的math库。
我已经将mathlib.lib所在的路径和mathlib.h所在的路径都include了,并且已经#include这两个,但是依然在程序中无法使用其中的函数。而且编译无法通过,显示的是:"C:/ti/mathlib_c674x_3_1_2_1/packages/ti/mathlib/mathlib.h", line 36: fatal error #5: could not open source file "ti/mathlib/src/common/common.h"
请问这是什么情况? DSP的其他库文件也是如此调用吗?
谢谢
Shine:
你先看一下C:/ti/mathlib_c674x_3_1_2_1/packages/ti/mathlib路径下有没有这个mathlib.h文件?
Shine:
回复 Shine:
到CCS->Show Build Settings->C6000 Compiler->Including Options里有没有设置正确的头文件路径?
到C6000 Linker->File Search Path里有没有正确添加lib?
Yao Heinz:
回复 Shine:
您好,
感谢您的回复。
我在CCS->Show Build Settings->C6000 Compiler->Including Options里面添加了mathlib.h的路径。同时mathlib.h这个头文件是存在的。
在C6000 Linker->File Search Path里面添加了"C:\ti\mathlib_c674x_3_1_2_1\packages\ti\mathlib\lib\mathlib.lib"
依然是上一个错误:"C:/ti/mathlib_c674x_3_1_2_1/packages/ti/mathlib/mathlib.h", line 36: fatal error #5: could not open source file "ti/mathlib/src/common/common.h"
Shine:
回复 Yao Heinz:
你在代码里include头文件的时候没有再加路径吧?
Yao Heinz:
回复 Shine:
工程文件里现在只加入了 #include "mathlib.h",其余的并没有再加入了。
Shine:
回复 Yao Heinz:
common.h这个头文件Include进来了么?还有这个头文件的路径设置是否正确?
Yao Heinz:
回复 Shine:
您好,
common.h就在和mathlib.h同一个路径的另一个文件夹里,那个文件夹叫src,里面包含了很多函数的头文件和源文件,请问我是都要包含进来吗?我将它加入了INCLUDE的路径里,可是依然显示无法打开,难道要精确到文件么?
Shine:
回复 Yao Heinz:
要精确到文件,要不然编译器找不到。
如果你在Including Options只配置了C:\ti\mathlib_c674x_3_0_2_0\packages\ti\mathlib,那么include这两个头文件的写法如下。#include "mathlib.h" #include "\src\common\common.h"
Yao Heinz:
回复 Shine:
您好,
如果是这样的话,我有一个疑问,如果库是要这么引用的话,那我用到库中的每一个函数,都要这么#include一下吗?那和直接用头文件和源文件有什么不同?库在这里的作用又是什么?而且那个mathlib.lib文件只有1K,这个是正常的库文件吗?
谢谢。
Shine:
回复 Yao Heinz:
这样看这些头文件是不是在一个文件夹下,如果不在的话,用到的话,就需要Include进来。
直接用源码会很大,库是archived的文件。