嵌入式开发者社区

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

作者: 8225621    时间: 2014-11-25 22:26
标题: 关于新旧AD7606程序,
创龙的新的AD7606在用以前的文档进行DSP独立仿真时,一直无法编译通过,显示ccs gmake: *** No rule to make target,问题。而老的AD7606可以用CCS编译通过。那这2个程序在当时开发设计的时候有什么不同?1 B# A& D2 u1 h- ]

5 a- [1 L8 q  u' B5 u3 V/ k8 }1 l, w/ z) k

作者: tenny    时间: 2014-11-26 08:32
你现在使用的应该还不是最新的,最新的是可以修改相关库和工具链路径后直接导入 ccs,用 ccs 编译的
; N  B3 k1 S  R3 S* H% B* D; J$ X现在双核 ad7606例程有更新,同时创龙也发布了新的双核视频教程演示例程的调试# b7 V7 C4 C: e0 ^- z3 f( [3 c
, J. Y5 Y% M/ Z8 A# _; t3 L* H

作者: 8225621    时间: 2014-11-26 09:55
tenny 发表于 2014-11-26 08:325 H1 Q0 S$ ^' ^7 M' N  A/ p
你现在使用的应该还不是最新的,最新的是可以修改相关库和工具链路径后直接导入 ccs,用 ccs 编译的
6 F: ^# r, [3 C% o  R% ?4 i3 a现在双 ...
: M) C0 U4 ]: l
具体怎么修改相关库和工具链,导入CCS,老的为什么可以直接导入编译成功。- V5 F5 \5 B1 J0 j+ h; O) K

作者: tenny    时间: 2014-11-27 09:21
方便的话,把你手上的两个版本的 顶层的和 dsp 子工程的两个 makefile 文件内容贴出来看看
- {1 S; Y3 Z/ N8 A
作者: 8225621    时间: 2014-11-27 19:47
tenny 发表于 2014-11-27 09:211 j+ g# g* L5 [# F/ S. K
方便的话,把你手上的两个版本的 顶层的和 dsp 子工程的两个 makefile 文件内容贴出来看看$ x7 L/ b# e! O$ y0 {- M7 r4 d
...

1 `$ K8 e' A) X' N- h" v4 [; l这个是老的AD7606  dsp/makefile1 p" J: V: R6 n' g9 p7 b
srcs = main_dsp.c Server.c DSPF_sp_ifftSPxSP_cn.c fft_calculator.c: \5 d3 m  a# H5 _* O, X8 C/ [9 m7 V
objs = $(addprefix bin/$(PROFILE)/obj/,$(patsubst %.c,%.oe674,$(srcs)))
7 H- |# x5 u2 y3 X0 W! N! dlibs = configuro/linker.cmd
3 E% F- ~' M1 x# _* w6 t
* n/ w! D; Q/ m7 u% Ball: configuro/linker.cmd
- T6 N$ O$ }% G) C( n7 M; D* l        make PROFILE=debug server_dsp.x7 L& O; W$ N7 u( h/ h$ l. a/ `( T
        make PROFILE=release server_dsp.x, D5 x4 Z% R5 j& W) p

3 D3 P, J; i  K7 }" h2 O* Z/ lserver_dsp.x: bin/$(PROFILE)/server_dsp.xe674  `; L" ~! ~& e* `
bin/$(PROFILE)/server_dsp.xe674: $(objs) $(libs)8 _2 [' N* S8 y
        @echo "#"
& R1 ^4 }" O! n3 V) e0 {        @echo "# Making $@ ..."
3 z# \* a; C4 [% D; D+ h        $(LD) $(LDFLAGS) -o $@ $^ $(LDLIBS)
. z0 f0 s. Z2 u; ]& E6 W
( p8 P' P6 f5 Q/ Y' d( Sbin/$(PROFILE)/obj/%.oe674: %.h
+ [2 x( i4 j9 T. a- B; h( i9 \" lbin/$(PROFILE)/obj/%.oe674: %.c8 L& {* g7 D1 |; \8 i
        @echo "#"7 j& H: O( w! W
        @echo "# Making $@ ..."+ y& }4 V( Q- [- K1 Z
        $(CC) $(CPPFLAGS) $(CFLAGS) --output_file=$@ -fc $<
) W" K: t* e  c9 g+ G! x- T8 K  G4 R- b8 _2 r) I* s
configuro/linker.cmd: Dsp.cfg ../shared/config.bld
0 S* N6 A6 u% x        @echo "#"
+ U  t( f2 v" r; e* ]        @echo "# Making $@ ..."
( V2 a1 B0 `0 t* K        $(XDC_INSTALL_DIR)/xs --xdcpath="$(subst +,;,$(PKGPATH))" \$ H7 @# b# n& J( W) ]5 H' C
            xdc.tools.configuro -o configuro \
" [; ]3 P: |. [            -t ti.targets.elf.C674 -c $(CGT_C674_ELF_INSTALL_DIR) \* ?" g6 g1 Y( C0 L  p
            -p ti.platforms.evmOMAPL138:dsp -b ../shared/config.bld \) J8 u* }7 ~: b* v  j& b' A
            -r release Dsp.cfg7 E0 Q7 V7 M6 Z  f
- }( ], a" t2 D2 d/ t3 D1 X& h: r
clean::' U1 Z6 o8 U. \$ n2 P( I$ c) G
        rm -rf configuro bin
3 f7 T# E' ?! U7 Y0 ^) t4 P  a# S
' J( U$ @% p1 R# ~, s- y8 YPKGPATH := $(SYSLINK_INSTALL_DIR)/packages- q. F2 {: @/ S) g3 T
PKGPATH := $(PKGPATH)+$(BIOS_INSTALL_DIR)/packages: y% p% P8 d$ Z# ?6 `# S
PKGPATH := $(PKGPATH)+$(IPC_INSTALL_DIR)/packages
4 ~' w( m7 k6 U4 bPKGPATH := $(PKGPATH)+$(XDC_INSTALL_DIR)/packages; ^# P  v! i# n! k

' ~, y# T% K" a3 J, O#  ======== toolchain macros ========
0 x' C, ~  ?, T$ p7 }' RCGTOOLS = $(CGT_C674_ELF_INSTALL_DIR)' R' a. o, F  I9 |5 R  m4 C
- ?+ y+ t+ e- p( V* r
CC = $(CGTOOLS)/bin/cl6x -c( p9 {6 F6 H( s
AR = $(CGTOOLS)/bin/ar6x rq
: b9 @! k" G' ^6 i! e) N9 sLD = $(CGTOOLS)/bin/lnk6x --abi=eabi
3 Y! W2 A4 R5 v! ~ST = $(CGTOOLS)/bin/strip6x
( I% Y* O1 P, N6 n
- j1 x) P$ M* @CPPFLAGS =. {; O) c3 v; G
CFLAGS = -qq $(CCPROFILE_$(PROFILE)) -I. $(COMPILER_OPTS)
6 E# q0 ]9 L! q! q0 ]4 K* z
+ _2 K! j/ W) U7 C# H" y) y" S& U# NLDFLAGS = -w -q -c -m $(@D)/obj/$(@F).map$ x: l) M% A, T! X. B
LDLIBS = -l $(CGTOOLS)/lib/rts6740_elf.lib3 W! n& c, k* b1 g, E) k; d

2 A% r, f+ [" e6 ~5 bCCPROFILE_debug = -D_DEBUG_=1 --symdebug:dwarf
- ]1 z) ^) r; C3 n5 r  x( R2 f, QCCPROFILE_release = -O2
7 p0 Y$ T! Q" }9 ^" h9 Z  G# g  ?8 HCOMPILER_OPTS = $(shell cat configuro/compiler.opt)& |6 W- [( C5 [  ?' _' o
2 Y# [: f9 ~( D3 I
#  ======== create output directories ========0 F4 @3 @4 Z+ m& a* I; |
ifneq (clean,$(MAKECMDGOALS))
4 G  \. w" S  m6 `! j( ~ifneq (,$(PROFILE))8 g7 x' |& s& n. s
ifeq (,$(wildcard bin/$(PROFILE)/obj))8 E6 n- d# R. B) j# N, B
    $(shell mkdir -p bin/$(PROFILE)/obj)$ }; n. y/ X7 F0 w& P. C) V
endif; A) c# s9 `5 Z! D0 Q9 W
endif
$ k- P- K( B5 E# \( l* iendif
6 o' U4 E- b8 |6 e4 t' H# V* \1 X1 \5 p5 m. D9 F

5 a! F* i# }" w  A- {/ j/ B) W
作者: 8225621    时间: 2014-11-27 19:49
tenny 发表于 2014-11-27 09:21
( ]  T+ o# K1 ~3 {: z方便的话,把你手上的两个版本的 顶层的和 dsp 子工程的两个 makefile 文件内容贴出来看看/ z/ |. `7 u& w/ R# r
...

8 s1 q# s; ]- r' x这个是最新版的AD7606 makefile
! N$ _+ H# `* ~VPATH = app ipc codec driver
: ]' B/ l8 D+ dsrcs = 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
; r, v. a/ c7 E6 q0 c% yobjs = $(addprefix bin/$(PROFILE)/obj/,$(patsubst %.c,%.oe674,$(srcs)))
- r0 Y0 C6 L; L* z% \- W. blibs = configuro/linker.cmd
& O, ~* i- e6 L5 A8 Z+ m
0 D3 \8 Y4 Z/ p  }7 i8 v" qall: configuro/linker.cmd
) c1 p1 n2 \% S1 e  [  Y4 E( y        make PROFILE=debug server_dsp.x
; J7 G4 r; y' V  e% B2 |/ D        #make PROFILE=release server_dsp.x
6 z- s  y1 M! W& `. V; P
  _& O6 Y, B8 jserver_dsp.x: bin/$(PROFILE)/server_dsp.xe674
$ {4 \, X! L/ I. H$ L3 ]bin/$(PROFILE)/server_dsp.xe674: $(objs) $(libs)9 X" I5 d% ]- y
        @echo "#"9 X9 A& g3 O1 N4 F" s# M. n4 q) f
        @echo "# Making $@ ..."
7 J  L) b" u# p1 L0 S        $(LD) $(LDFLAGS) -o $@ $^ $(LDLIBS)8 Y  t- [% N! H1 @0 U' h

( |) C2 `  k. d6 w! l, L) ubin/$(PROFILE)/obj/%.oe674: %.h" p# l/ q( F+ ~: ?7 o; j# T0 \
bin/$(PROFILE)/obj/%.oe674: %.c
( S* Z" I/ y: F/ z/ u2 p        @echo "#"
: B% e! k2 Y, ?; @) i        @echo "# Making $@ ..."
6 g) i" @+ T* j" k        $(CC) $(CPPFLAGS) $(CFLAGS) --output_file=$@ -fc $</ U% I) x4 E4 h9 L
, C; @+ t3 A% d+ K3 j
configuro/linker.cmd: dsp.cfg ../shared/config.bld
) W3 W4 K) }+ H* C6 Z        @echo "#"8 m- _8 T+ C2 Z5 I! L
        @echo "# Making $@ ...", Z3 M! W- T6 l2 y" i
        $(XDC_INSTALL_DIR)/xs --xdcpath="$(subst +,;,$(PKGPATH))"       \+ W( ~% Q) D  r' h; e; Y
            xdc.tools.configuro -o configuro                        \
& i4 @: T" u& F; B  R) u1 E            -t ti.targets.elf.C674 -c $(CGT_C674_ELF_INSTALL_DIR)   \$ @& p: f7 j9 ~
            -p ti.platforms.evmOMAPL138:dsp -b ../shared/config.bld \6 `' o" M! x" y- [  [$ Z
            -r release dsp.cfg) r& Y9 e% `6 V0 a

! r9 p8 [- {. T6 t9 iclean::8 P/ l$ C" L3 f8 e: ^
        rm -rf configuro bin
* t7 |! t, U, O4 h$ ^) j7 `/ e
: t$ W/ s3 O' M+ vPKGPATH := $(SYSLINK_INSTALL_DIR)/packages
3 g9 \0 ?& L; |; f) m: OPKGPATH := $(PKGPATH)+$(BIOS_INSTALL_DIR)/packages+ Y- `3 [' K! \& }2 ~9 L
PKGPATH := $(PKGPATH)+$(IPC_INSTALL_DIR)/packages
* a. ^( n8 s( Y5 d2 L5 VPKGPATH := $(PKGPATH)+$(XDC_INSTALL_DIR)/packages
0 U: Z) a' N* `, M- Z4 o. h2 Q# KPKGPATH := $(PKGPATH)+$(MATHLIB_INSTALL_DIR)/packages
* e2 w1 g; g) F: B2 S
7 I' o; O: F0 m( C- O4 _" s3 wCGTOOLS = $(CGT_C674_ELF_INSTALL_DIR)
0 c/ h% l( G8 ]5 m
6 ^, J! w  M7 ^, e2 A% |CC = $(CGTOOLS)/bin/cl6x -c --gcc # gcc extensions support- D. S5 h& y2 |: ?2 w" s
AR = $(CGTOOLS)/bin/ar6x rq
6 F: E9 @; `8 ]% W) I9 K2 ^LD = $(CGTOOLS)/bin/lnk6x --abi=eabi
0 _5 ~; @! f7 tST = $(CGTOOLS)/bin/strip6x
4 i5 I6 Y  q2 t& _, B  J% [4 ]. }3 r6 A4 m; }( q
CPPFLAGS =; X% [6 x! z, C' F' {" X& E
CFLAGS = -qq $(CCPROFILE_$(PROFILE)) $(COMPILER_OPTS)     \3 f7 ]% N2 m7 q* B' x+ x  u& g  u
                 -I ./app -I ./ipc -I ./codec -I ./driver         \7 r7 Q& `8 C& g
                 -I$(STARTWARE_INSTALL_DIR)/include               \6 F; m9 R8 s$ \* d; X
                 -I$(STARTWARE_INSTALL_DIR)/include/hw            \7 `7 s  P# o) y, q2 I* ?* G
                 -I$(MATHLIB_INSTALL_DIR)/packages                \) @5 [3 R: {. O
                 -I$(MATHLIB_INSTALL_DIR)/inc                     \
/ Q3 x, G; x4 n7 Z  d% `                 -I$(DSPLIB_INSTALL_DIR)/packages                 \$ X' _, _6 ^' x/ \( W' v
                 -I$(DSPLIB_INSTALL_DIR)/inc2 ^" [! ^2 e7 T( v% m
$ k3 r  ^5 h1 p1 D, |
LDFLAGS = -w -q -c -m $(@D)/obj/$(@F).map  t0 f% ]( ^% ^
LDLIBS  = -l $(MATHLIB_INSTALL_DIR)/lib/mathlib.ae674                                                                            \* {+ E+ f7 U3 w
          -l $(CGTOOLS)/lib/rts6740_elf.lib                                                                                                    \
" s  X* h; @/ e                  -l $(STARTWARE_INSTALL_DIR)/binary/c674x/cgt/utils/Release/utils.lib              \! T, D. b: Q: l; |# F' @: b
                  -l Platform.lib                                                                   \4 o+ d9 a7 y# K8 `
          -l $(STARTWARE_INSTALL_DIR)/binary/c674x/cgt/omapl138/drivers/Release/drivers.lib \
- d  j) G8 `1 t                  -l $(DSPLIB_INSTALL_DIR)/lib/dsplib.ae674  3 z, u: }- P; [% @

  Z# H  U! t# L3 a1 F" O- k4 r( J( nCCPROFILE_debug = -D_DEBUG_=1 --symdebug:dwarf
' j9 A, n5 z- n6 w/ {: ]4 ^CCPROFILE_release = -O2
( a& M  S! B& C$ n( FCOMPILER_OPTS = $(shell cat configuro/compiler.opt)
7 z, o2 b, o7 M% u% u2 ?  _  |7 Z
% `- C0 |, h2 y! `# lifneq (clean,$(MAKECMDGOALS))- T8 U& R% \3 c1 T) s) C
ifneq (,$(PROFILE))
: Q. C1 v: P$ p" e& T- d2 M* z; _* lifeq (,$(wildcard bin/$(PROFILE)/obj))% [7 P+ n0 b0 ]# i1 n2 ]
    $(shell mkdir -p bin/$(PROFILE)/obj)/ Z) T- |* k: ?3 j" L# `  V7 t4 E
endif
! W2 I: o- V; D, z% Pendif
% M. y- \4 E+ x( cendif
8 e9 t: w* S) K) V* a* j7 j
6 }5 I0 Y) X* }! A; e. G6 t




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