嵌入式开发者社区

标题: 关于新旧AD7606程序, [打印本页]

作者: 8225621    时间: 2014-11-25 22:26
标题: 关于新旧AD7606程序,
创龙的新的AD7606在用以前的文档进行DSP独立仿真时,一直无法编译通过,显示ccs gmake: *** No rule to make target,问题。而老的AD7606可以用CCS编译通过。那这2个程序在当时开发设计的时候有什么不同?
$ N; W6 m0 F8 f3 c2 T+ M' s2 S' U' O. E. `/ q

0 C4 a- s$ c4 |! [9 a; e
作者: tenny    时间: 2014-11-26 08:32
你现在使用的应该还不是最新的,最新的是可以修改相关库和工具链路径后直接导入 ccs,用 ccs 编译的
: e6 ?* T8 h* l& R8 H& v  W现在双核 ad7606例程有更新,同时创龙也发布了新的双核视频教程演示例程的调试0 e. R% E6 Z4 B& d
3 N- I0 I  j2 F( c

作者: 8225621    时间: 2014-11-26 09:55
tenny 发表于 2014-11-26 08:32
* m( H. A# h) b: f你现在使用的应该还不是最新的,最新的是可以修改相关库和工具链路径后直接导入 ccs,用 ccs 编译的4 |0 ^7 D; I% M- r8 r! Z
现在双 ...
6 W* `! ]8 w! N: p8 E: T- \  R( [
具体怎么修改相关库和工具链,导入CCS,老的为什么可以直接导入编译成功。! \6 l! P0 O! c4 q  h# p$ T

作者: tenny    时间: 2014-11-27 09:21
方便的话,把你手上的两个版本的 顶层的和 dsp 子工程的两个 makefile 文件内容贴出来看看
5 J- q* }8 g  z+ ]5 d0 e3 n
作者: 8225621    时间: 2014-11-27 19:47
tenny 发表于 2014-11-27 09:21
" H/ Z7 i) z5 b4 A  ~; I) I8 p: _方便的话,把你手上的两个版本的 顶层的和 dsp 子工程的两个 makefile 文件内容贴出来看看
$ `! o+ O1 Y) e5 b, E) e ...
( W* D  j5 ^# ]5 }' H: L4 k( N
这个是老的AD7606  dsp/makefile$ o+ l8 D, `/ O2 P
srcs = main_dsp.c Server.c DSPF_sp_ifftSPxSP_cn.c fft_calculator.c
, c1 v( R% X3 F' ^* A3 mobjs = $(addprefix bin/$(PROFILE)/obj/,$(patsubst %.c,%.oe674,$(srcs)))+ _2 D3 O! l+ C+ t, Q
libs = configuro/linker.cmd
4 d/ d/ P0 [  g
( o( i9 ?2 P/ D% m; C, ]+ sall: configuro/linker.cmd
8 G) z( |. g, M7 ]; k- c* x; R        make PROFILE=debug server_dsp.x
1 _9 {' j9 K& _8 o! j        make PROFILE=release server_dsp.x: r, H) }) J+ A
2 y& b0 ?8 S2 {+ X8 O' w
server_dsp.x: bin/$(PROFILE)/server_dsp.xe6740 |# Y& `" @0 E
bin/$(PROFILE)/server_dsp.xe674: $(objs) $(libs)
5 m( \! Q  t% ]5 m        @echo "#", n$ c4 X; J  G$ U
        @echo "# Making $@ ..."4 e+ B; w, k& m' ~' q% i/ V1 f- ?
        $(LD) $(LDFLAGS) -o $@ $^ $(LDLIBS)
: T2 {: R+ W: Y. I" \8 e. R: E7 t3 p& O
bin/$(PROFILE)/obj/%.oe674: %.h, I9 K  u1 o! R4 ]2 Z/ v
bin/$(PROFILE)/obj/%.oe674: %.c. a. I; y# j% M
        @echo "#"% ^) ]0 h( x% \7 r
        @echo "# Making $@ ..."
/ a  P. R; a( w7 {        $(CC) $(CPPFLAGS) $(CFLAGS) --output_file=$@ -fc $<  o6 s9 j& h- o- J/ i

% H+ B3 @6 }( ^! x  S+ i5 nconfiguro/linker.cmd: Dsp.cfg ../shared/config.bld8 l7 @  b. j6 U  R
        @echo "#"3 o4 A8 t, L% n3 `, n+ r
        @echo "# Making $@ ..."
! O& J( J/ V# N' g        $(XDC_INSTALL_DIR)/xs --xdcpath="$(subst +,;,$(PKGPATH))" \
9 Z  d' S9 f4 H, W+ h7 `5 [            xdc.tools.configuro -o configuro \. x# p8 j! u6 p( e  ~' |
            -t ti.targets.elf.C674 -c $(CGT_C674_ELF_INSTALL_DIR) \, ?1 [! F* ^: a5 |, Y+ H, R
            -p ti.platforms.evmOMAPL138:dsp -b ../shared/config.bld \$ ^; M3 a: D& U% Q
            -r release Dsp.cfg& z3 M' y* v- s  v

0 g$ B; N! q8 t: G; P& Uclean::
- i8 l) q. c& {4 U$ _( f* |        rm -rf configuro bin
6 h7 F7 G* I0 T% J) f4 k1 G. N
$ ~4 F# i$ k8 z- u2 K+ ?: ^PKGPATH := $(SYSLINK_INSTALL_DIR)/packages
( N! R: D/ C5 EPKGPATH := $(PKGPATH)+$(BIOS_INSTALL_DIR)/packages
0 f2 a+ X6 G, H% O; W" PPKGPATH := $(PKGPATH)+$(IPC_INSTALL_DIR)/packages& Y7 t  G- K: e; e. b
PKGPATH := $(PKGPATH)+$(XDC_INSTALL_DIR)/packages
/ f5 x/ d0 |) N& V# S" v% `
) o/ s1 c6 j7 c* A4 p! _#  ======== toolchain macros ========
/ ~: p1 f, V6 k3 SCGTOOLS = $(CGT_C674_ELF_INSTALL_DIR)
) J: f2 O; w' i" g' \! S' T- B4 a* v+ |
CC = $(CGTOOLS)/bin/cl6x -c
# w6 F! ]; E( t, k( xAR = $(CGTOOLS)/bin/ar6x rq
( @0 V) W. K( j* `9 T+ ^LD = $(CGTOOLS)/bin/lnk6x --abi=eabi1 v1 K; b0 F4 A
ST = $(CGTOOLS)/bin/strip6x
; b# S# G3 E" M$ }5 b9 `8 U# l4 C' u1 A) ?' m- c
CPPFLAGS =
( e( X; V0 ?: s6 Y2 G, ]; h3 KCFLAGS = -qq $(CCPROFILE_$(PROFILE)) -I. $(COMPILER_OPTS)- H2 u9 I3 O. d, _

% b2 u: ~, o5 U8 z3 J' OLDFLAGS = -w -q -c -m $(@D)/obj/$(@F).map
& L' {' w" }; Q, Q; `LDLIBS = -l $(CGTOOLS)/lib/rts6740_elf.lib( z6 Q/ {; k4 f

! d! h$ W! \+ K0 `. u" BCCPROFILE_debug = -D_DEBUG_=1 --symdebug:dwarf- `4 X4 K4 ~! j* ], l
CCPROFILE_release = -O2. x: O5 U# I+ p, s  g( d
COMPILER_OPTS = $(shell cat configuro/compiler.opt)
# L; o- V% m' n1 m+ X" w7 [2 l  l: i* e! `& \/ x3 a  w. }1 s" Z9 g! B
#  ======== create output directories ========
9 d! _/ w+ G. c5 B9 u  L4 Iifneq (clean,$(MAKECMDGOALS))5 {7 j- `% b" ]: B" q+ o
ifneq (,$(PROFILE))
; `" o% D! N/ P* V* D: Uifeq (,$(wildcard bin/$(PROFILE)/obj))
+ o! j$ S: |3 b+ s" |) ~& S    $(shell mkdir -p bin/$(PROFILE)/obj)! w7 h7 y! A+ X& ^
endif
# X1 Z$ y1 E; d5 j$ S! m2 ?endif3 G! D$ P1 U  f9 k7 ~/ h
endif- X* Y& u- M. B

8 O+ E5 h  N6 E3 ]& M/ w
& g4 q% v! V; g6 G+ l6 a9 L. ~- z
作者: 8225621    时间: 2014-11-27 19:49
tenny 发表于 2014-11-27 09:21
+ L0 g; _- F# I0 ~( r5 S方便的话,把你手上的两个版本的 顶层的和 dsp 子工程的两个 makefile 文件内容贴出来看看) \; ^1 m: s: u1 [$ v
...

! X6 v: d* Z! `* v这个是最新版的AD7606 makefile * \" _+ x6 o/ M  W
VPATH = app ipc codec driver
1 d0 `+ g: M9 r8 ]% `  d$ h6 h7 s- _srcs = main_dsp.c ad7606.c message_heap.c message_loop.c ad_workshop.c fft.c ring_buffer.c queue.c ipc_ring_buffer.c fake_ring_buffer.c: d3 M' G' J% G  V6 M8 Z
objs = $(addprefix bin/$(PROFILE)/obj/,$(patsubst %.c,%.oe674,$(srcs)))1 l* X2 ]& @. I& r' E
libs = configuro/linker.cmd
( U5 B% S! m8 N# c) n/ R: i; f/ x) ?0 r7 m- q
all: configuro/linker.cmd; k1 b8 T+ |' N* Y$ J: e! s- `
        make PROFILE=debug server_dsp.x( T9 e) y& m0 L/ c9 Z
        #make PROFILE=release server_dsp.x- m! X4 s: I+ Y+ H
6 x  o1 s2 {& V4 D1 U( ~) R
server_dsp.x: bin/$(PROFILE)/server_dsp.xe674
' s% v" B* f& Z/ ybin/$(PROFILE)/server_dsp.xe674: $(objs) $(libs)2 q, o- v7 K2 C! `5 H$ {: D# y
        @echo "#"/ s7 ?, O1 n5 ^$ _6 w
        @echo "# Making $@ ..."  U* i' z/ [0 u9 l9 I
        $(LD) $(LDFLAGS) -o $@ $^ $(LDLIBS)3 |- R- P! R& |4 b4 F2 I
" g- F/ G7 |! j- o& J  b, ?/ x
bin/$(PROFILE)/obj/%.oe674: %.h
6 C& |9 b7 B, K  D2 Lbin/$(PROFILE)/obj/%.oe674: %.c
. _/ k) g9 I7 m  {7 u        @echo "#"
+ m# W) B" W; V. _/ @        @echo "# Making $@ ..."5 n. w; m& R3 [" Q% e  d: A  @
        $(CC) $(CPPFLAGS) $(CFLAGS) --output_file=$@ -fc $<
) r- j5 v% z% x3 ~  Z! X0 P! ]" i2 }: R) V9 R( o
configuro/linker.cmd: dsp.cfg ../shared/config.bld% }$ ~2 E9 X, P" i
        @echo "#") H. s- g' T( ~
        @echo "# Making $@ ..."
' _, @# y. c/ Z& M        $(XDC_INSTALL_DIR)/xs --xdcpath="$(subst +,;,$(PKGPATH))"       \( N. n/ [( k* i# h
            xdc.tools.configuro -o configuro                        \+ S3 Y8 S, d+ W* y3 x# }
            -t ti.targets.elf.C674 -c $(CGT_C674_ELF_INSTALL_DIR)   \
2 F4 W0 V+ I) `/ D            -p ti.platforms.evmOMAPL138:dsp -b ../shared/config.bld \
2 v& ^2 c8 }+ \& e$ G6 H) O            -r release dsp.cfg
/ l) G7 k5 K8 ]8 W* U
( W# O# L& u4 v1 Oclean::
1 t) ]9 \, }" p$ H: a! f6 d9 M1 k        rm -rf configuro bin
% }0 t( H. |) W; H" |0 F* a. B
PKGPATH := $(SYSLINK_INSTALL_DIR)/packages
- D: v5 s1 ^* E% |0 ~PKGPATH := $(PKGPATH)+$(BIOS_INSTALL_DIR)/packages$ D% G1 F5 X. E' T( s, F4 w/ \
PKGPATH := $(PKGPATH)+$(IPC_INSTALL_DIR)/packages
9 J) f6 W4 \3 }/ [2 UPKGPATH := $(PKGPATH)+$(XDC_INSTALL_DIR)/packages$ m; C' F% ]. y1 h' q, g# z
PKGPATH := $(PKGPATH)+$(MATHLIB_INSTALL_DIR)/packages
4 L% P. I! ^6 _! V; q' |- `* D  B5 w1 Q! X/ Z: u, t
CGTOOLS = $(CGT_C674_ELF_INSTALL_DIR)  [3 M, a9 W! m% Q

" G8 i4 W5 W; t( {% ~CC = $(CGTOOLS)/bin/cl6x -c --gcc # gcc extensions support
/ u, S% z; N, B8 @AR = $(CGTOOLS)/bin/ar6x rq/ V6 @1 O& \! W1 e' ~0 a' v
LD = $(CGTOOLS)/bin/lnk6x --abi=eabi
3 Q& T( o1 K4 xST = $(CGTOOLS)/bin/strip6x
4 G2 \  _6 ]7 ?' f3 c
! Z5 R. o7 l1 v1 ]7 VCPPFLAGS =* ?) k. a% ?7 I& Z
CFLAGS = -qq $(CCPROFILE_$(PROFILE)) $(COMPILER_OPTS)     \6 I: w; N& |& r2 [: R. S+ V
                 -I ./app -I ./ipc -I ./codec -I ./driver         \
% U+ V! w& |0 P/ z! d                 -I$(STARTWARE_INSTALL_DIR)/include               \6 T& y) T+ f- a2 P' [' V, ~! f/ J9 `
                 -I$(STARTWARE_INSTALL_DIR)/include/hw            \. Q2 ?# \# J0 z9 M: q$ ^3 Z9 T
                 -I$(MATHLIB_INSTALL_DIR)/packages                \
  O8 v' E0 R/ M' v                 -I$(MATHLIB_INSTALL_DIR)/inc                     \
# b, ^$ t- q" h% u0 x; Z6 ^                 -I$(DSPLIB_INSTALL_DIR)/packages                 \! e) _! z) y0 [# d- m0 G4 `
                 -I$(DSPLIB_INSTALL_DIR)/inc% J1 ?+ _1 {; U5 ]3 s
3 e6 c  a1 }& |  u
LDFLAGS = -w -q -c -m $(@D)/obj/$(@F).map, r6 k) P1 {( d' y# i, [* G0 Z4 R
LDLIBS  = -l $(MATHLIB_INSTALL_DIR)/lib/mathlib.ae674                                                                            \8 U& @/ f) p: h9 q& A
          -l $(CGTOOLS)/lib/rts6740_elf.lib                                                                                                    \
8 V6 C! H9 L3 C/ M9 y                  -l $(STARTWARE_INSTALL_DIR)/binary/c674x/cgt/utils/Release/utils.lib              \
& s& ?7 p( ^0 H' _. E                  -l Platform.lib                                                                   \$ V! b+ R  m5 [$ C; d2 @9 _* V7 p. J0 F
          -l $(STARTWARE_INSTALL_DIR)/binary/c674x/cgt/omapl138/drivers/Release/drivers.lib \
4 P6 [" F# [, _( _; `  Y8 o                  -l $(DSPLIB_INSTALL_DIR)/lib/dsplib.ae674  
! n* p8 S; N! Y  q
. e" y4 v/ n8 _# J6 {& tCCPROFILE_debug = -D_DEBUG_=1 --symdebug:dwarf
7 C* r. j' M: R% t' ICCPROFILE_release = -O2
. A* P. d2 C2 R/ k" x; d( cCOMPILER_OPTS = $(shell cat configuro/compiler.opt)9 \+ @/ T+ g* M) q7 \2 p* j5 F

' a& z  U1 D0 c; \& V3 g  a2 difneq (clean,$(MAKECMDGOALS))
( k, j2 \2 I9 I- r+ k% xifneq (,$(PROFILE))6 h; v: Q4 w7 {9 S3 g# M0 `
ifeq (,$(wildcard bin/$(PROFILE)/obj))" y. ?9 [4 K: z4 g0 A
    $(shell mkdir -p bin/$(PROFILE)/obj)! M" {8 l; }( h$ h4 M3 o
endif/ n( M- t* ?  M' ]8 y
endif( M) a2 R) B' @8 _2 G8 ~* }- E
endif7 K, u) b  o% N9 D( h' c

+ P. S5 U. B. H1 L




欢迎光临 嵌入式开发者社区 (https://www.51ele.net/) Powered by Discuz! X3.4