I'm confused and don't know what to do next. I ran GenServer on CCSv4/WindowsXP(machineB) successfully. It created a project, that I then imported into CC4v4 to compile it. Compiling this project I get an error that reads "XDCException: xdc.PACKAGE_NOT_FOUND: C:\Program Files\Texas Instruments\dsplink_1_64\dsplink\dsp\package.xdc found along the package path, but no schema file was found. Ensure that the package 'dsplink.dsp' is completely built."
I believe I'm missing a build step for dsplink on WindowsXP, but I have no clue how to do it. Below is what I *have* done:
- Downloaded dsplink_1_64.tar.gz and unzipped to C:\Program Files\Texas Instruments, but no "build" involved in this process.
- On Ubuntu/VMware/WindowsXP(machineA) I've ?installed? the complete DVSDK, including doing "make dsplink". This produced dsplinkk.ko.
- Just for grins, copied dsplinkk.ko from Ubuntu/VMware/WindowsXP(machineA) to WindowsXP(machineB) folder C:\Program Files\Texas Instruments\dsplink_1_64
- On WindowsXP(machineB) set env var LINK_INSTALL_DIR=C:\Program Files\Texas Instruments\dsplink_1_64
So what else do I need to do, please, to get past this error? Or, what's the missing schema file and how do I get/make it on WindowsXP?
Thanks very much,
Helmut
EDIT: http://processors.wiki.ti.com/index.php/Codec_Servers_FAQ confirms I need to build dsplink. http://processors.wiki.ti.com/index.php/Building_DSPLink says I can do it under CCS, but doesn't say *HOW*. Trying to brute force it. Located $(DSPLINK)/config/bin/dsplinkcfg.pl. Had a pl icon, so it means some pl program is installed. Great. Ran it. Asked for platform. Found http://processors.wiki.ti.com/index.php/Codec_Engine_Link_Config#DM6467 . Made one-line batch file for repeat attempts:
dsplinkcfg.pl --platform=DAVINCIHD --nodsp=1 --dspcfg_0=DM6467GEMSHMEM --dspos_0=DSPBIOS5XX --gppos=DM6467LSP --comps=poslm --legacy=1
But program complains, asking for a valid platform. DAVINCI is in the list, but not DAVINCIHD. This is version 1.64. Last link above says to use DAVINCIHD for version 1.64, when using Linux, but doesn't say for WindowsXP. (And why is WinCE all over the place here?)
EDIT: Tried similar on Ubuntu per http://processors.wiki.ti.com/index.php/Codec_Engine_Link_Config#GNU_toolchain_2, which worked. But '!!DSPLINK will be configured for Build OS: LINUX!!". Both are version 1.64. On Ubuntu, it made itself a home at .../dsplink_linux_1_64/dsplink rather than ...dsplink_1_64/dsplink. Note buried text "_linux".
Compared perl scripts at same logical location, between Ubuntu and WindowsXP installs. Utbuntu version has "Global database of Platforms" numbered 0 through 10 that includes CFG_PLATFORM_DAVINCIHD as #2 with regular DAVINCI as #1. WindowsXP install, however, has "Global database of Platforms" numbering only 0..5 with no DAVINCIHD. Note regular DAVINCI is #4.
Yet, "DAVINCIHD" appears elsewhere in script. In fact, immediately above declaration of global database (%CFG_PLATFORMS), there are, count them, FOURTEEN platforms defined. This is true for BOTH os versions, linux(Ubuntu) and windows(XP). However, BOTH perl scripts only list a subset in %CFG_PLATFORMS.
This is either a script BUG, or DAVINCIHD is not supported under Windows.
Not knowing if the %CFG_PLATFORMS index numbers are meaningful, I took a guess and added #6 for DAVINCIHD. It got part way, saying "Configuration done successfully", then "Generating CURRENTCFG.MK file...". But then it crapped out with "couldn't open file ... CURRENTCFG.MK".
I think I'm onto something. Perhaps the perl script does have a bug, or is at least incomplete. I'll follow up on this couldn't open problem.
IF YOU HAVE ANY ADVICE, please send it!! Thx.
EDIT: The script later assumes a BUILD folder within .../bin. However, it doesn't exist already. I created one. Now it complains about "C:\Program". This tells me it can't currently cope with spaces in the filename (good god, linux, catch up with the times already). I'm NOT going to open this bag of worms.
Instead, I found on my Ubuntu install where I can hardcode $DSPLINK_BUILDOS = 'WINDOWS'. I'll see what happens. Perhaps I can build on Linux for the purpose of Windows, then copy all files changed. (I already searched all files changed for the build on Linux for Linux. It appears to be only five files:
.../dsplink/dsp/Global.xdc
.../dsplink/config/BUILD/CURRENTCFG.MK
.../dsplink/config/BUILD/CFG_system.c
.../dsplink/gpp/Global.xdc
.../dsplink/etc/host/scripts/Linux/multimake.sh
EDIT: My Linux bulid for Windows might have worked. Here are the new files it created, and I'll copy them to my CSSv4/WindowsXP(machineB) location.
.../dsplink\dsp\Global.xdc
.../dsplink\config\BUILD\CFG_system.c
.../dsplink\config\BUILD\CURRENTCFG.MK
.../dsplink\gpp\Global.xdc
.../dsplink\etc\host\scripts\msdos\multimake.bat
Did you notice?!?!?!? It created the same five files but with embedded backslashes in their names, all in the parent folder of dsplink itself. Ha Ha Ha. I'll unravel this when I copy them to WindowsXP. On the bright side, I won't have to take notes about what goes where! The notes are incorporated in the filename. OOPS. Comedy show. Can't drag from Unbuntu/VMWare/WindowsXP to WindowsXP because of the embedded slashes! And there's a filename conflict when I totally remove them. The cure is obvious. THis is just so funny.
EDIT: NO JOY. Same error from CCSv4 "XDCException: xdc.PACKAGE_NOT_FOUND: C:\Program Files\Texas Instruments\dsplink_1_64\dsplink\dsp\package.xdc found along the package path, but no schema file was found. Ensure that the package 'dsplink.dsp' is completely built."
This is all absurd. Please help, TI.