<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Visual Studio Code development with gcc and openocd</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/53118/visual-studio-code-development-with-gcc-and-openocd</link><description>Hello, 
 I&amp;#39;m migrating all my projects from Eclipse to VSCode. On Eclipse I used to debug using JLink tools, however I would like to have a more generic tool (not all the devkits I use are equipped with a jlink debugger). I found openocd together with</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Wed, 01 Jan 2020 22:18:28 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/53118/visual-studio-code-development-with-gcc-and-openocd" /><item><title>RE: Visual Studio Code development with gcc and openocd</title><link>https://devzone.nordicsemi.com/thread/227164?ContentTypeID=1</link><pubDate>Wed, 01 Jan 2020 22:18:28 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1a12168d-102f-40da-aa15-236a7bd4ba58</guid><dc:creator>Koenigs</dc:creator><description>&lt;p&gt;Wow thanks a lot Davide for this complete explanation.&lt;/p&gt;
&lt;p&gt;I understand well how VsCode works now, the difficulty for me is mostly to understand all the embedded tools.&lt;/p&gt;
&lt;p&gt;As I said, for the moment I&amp;#39;m working on another non-embedded project but I&amp;#39;ll for sure come read again your comment when I&amp;#39;ll be back on embedded stuffs in the future.&lt;/p&gt;
&lt;p&gt;Thanks again&lt;/p&gt;
&lt;p&gt;EDIT: I was at the same time trying to use Zephyr RTOS instead of the Nordic SDK but it&amp;#39;s adding even more complexity to the task&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Visual Studio Code development with gcc and openocd</title><link>https://devzone.nordicsemi.com/thread/225970?ContentTypeID=1</link><pubDate>Tue, 17 Dec 2019 17:48:18 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4be9eee5-7289-4973-aad9-d33ad925b45e</guid><dc:creator>Davide</dc:creator><description>&lt;p&gt;Dear Koenigs,&lt;/p&gt;
&lt;p&gt;I don&amp;#39;t have time to write a complete tutorial but I&amp;#39;ll try to write here a brief description on how I managed to do it (I found 99% of the resources by searching with google, the remaining 1% is probably experience). This refers to a linux machine (I tested the same on macOs and it works, but I never tested this on windows).&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;First of all you need all the gcc toolchain set up. In other words you need arm-none-eabi-gcc working on your machine, make&amp;nbsp;and all the components to build the .elf file (can be .out in some cases).&lt;/p&gt;
&lt;p&gt;If you have&amp;nbsp;&lt;span&gt;arm-none-eabi-gcc probably you also have&amp;nbsp;arm-none-eabi-gdb, but in order to debug you need also a version of openOCD that works for your target MCU (Nordic DKs are well supported in all the recent versions).&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Then you need vscode&amp;nbsp;and its cortex-debug extension.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;With this in your hand, from&amp;nbsp;vscode open the folder that contains the makefile or the folder you prefer as the &amp;quot;root&amp;quot; of the project and now you can &lt;a href="https://code.visualstudio.com/docs/editor/debugging"&gt;create a debug configuration from vscode&lt;/a&gt;, it will create a launch.json. You must modify that file to make it similar to the one I posted above (of course you must fix the&amp;nbsp;&amp;quot;executable&amp;quot; path, and maybe also the configFiles). Moreover, in order to compile the code automatically when you press the debug button you also need the task.json posted above (&amp;quot;command&amp;quot; is simply &amp;quot;make&amp;quot; on regular projects).&amp;nbsp;If you also provide the SVD file for your MCU (I think it is somewhere in the sdk) vscode also have an handy view of the peripheral registers&amp;nbsp;during debug.&lt;/p&gt;
&lt;p&gt;Now, by pressing the debug button it should compile and then bring you to the debug interface where you can do step by step debugging.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Notes:&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Keep in mind that making this work requires many components developed by a number of independent communities, and when something doesn&amp;#39;t work it is not always easy to understand where the problem is and where to look for the solution. I suggest you to test one component at the time from the command line, for instance to test openocd on a nordic dk you should call:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="bat"&gt;openocd -f&amp;#160;board/nordic_nrf52_dk.cfg&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;and look for some positive response, if you get some error you know that it is related to openocd and you won&amp;#39;t bother vscode community for that.&lt;/p&gt;
&lt;p&gt;In a similar way you can test&amp;nbsp;&lt;span&gt;arm-none-eabi-gdb. Please search in google a guide to run gdb from command line, in few words you must have the openocd instance running (without errors) and in another terminal you just execute&amp;nbsp;arm-none-eabi-gdb. Once&amp;nbsp;arm-none-eabi-gdb is launched, openocd should print some message informing that a client has connected.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Once you have all this working, it should work also in vscode, and if it doesn&amp;#39;t you have to spend you engineering skills to debug it (this is actually what I do when I start a new project).&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;If you look online there are some tutorials, but I understand that they are not always clear in particular if you have never used vscode. However give it a try, the learning curve is not&amp;nbsp;steep, it took a couple of days for me and I started from zero experience with vscode (but quite a lot of experience in embedded and linux command line).&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Visual Studio Code development with gcc and openocd</title><link>https://devzone.nordicsemi.com/thread/225439?ContentTypeID=1</link><pubDate>Fri, 13 Dec 2019 15:37:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c7be3dbf-4837-4825-962c-9facd5632e6b</guid><dc:creator>Koenigs</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;I&amp;#39;m a beginner in embedded programming and I wanted to use the same setup as yours. &lt;br /&gt;Sadly several months ago I didn&amp;#39;t find enough resources and I was stuck trying to integrate GDB and OpenOCD altogether in my VS Code project.&lt;br /&gt;I temporary gave up and switched to another non-embedded project.&lt;/p&gt;
&lt;p&gt;Would you mind to share a sample project on Github to simply demonstrate how these tools integrate together?&lt;br /&gt;That would be an interesting resource for the community in my opinion.&lt;/p&gt;
&lt;p&gt;Thanks a lot&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Visual Studio Code development with gcc and openocd</title><link>https://devzone.nordicsemi.com/thread/214849?ContentTypeID=1</link><pubDate>Mon, 14 Oct 2019 13:06:10 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0ad603cc-605a-44bc-beb9-b4ec98ccb905</guid><dc:creator>Davide</dc:creator><description>&lt;p&gt;So, now it works.&lt;/p&gt;
&lt;p&gt;I don&amp;#39;t know where the problem was because that launch.json was&amp;nbsp;derived from a working one (it was working with third party ARM device). However, I fixed it by using the Cortex-Debug extension of vscode.&lt;/p&gt;
&lt;p&gt;That extension was actually already installed, however it was not properly used. In fact, in order to use it, the configuration inside the launch.json is required to be &amp;quot;type&amp;quot;:&amp;quot;cortex-debug&amp;quot;.&lt;/p&gt;
&lt;p&gt;Now the working launch.json is like this:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="json"&gt;{
    &amp;quot;version&amp;quot;: &amp;quot;0.2.0&amp;quot;,
    &amp;quot;configurations&amp;quot;: [
        {
            &amp;quot;name&amp;quot;: &amp;quot;Debug Nordic&amp;quot;,
            &amp;quot;type&amp;quot;: &amp;quot;cortex-debug&amp;quot;,
            &amp;quot;request&amp;quot;: &amp;quot;launch&amp;quot;,
            &amp;quot;servertype&amp;quot;: &amp;quot;openocd&amp;quot;,
            &amp;quot;executable&amp;quot;: &amp;quot;${workspaceRoot}/pca10040/s132/armgcc/_build/nrf52832_xxaa.out&amp;quot;,
            &amp;quot;cwd&amp;quot;: &amp;quot;${workspaceRoot}&amp;quot;,
            &amp;quot;preLaunchTask&amp;quot;: &amp;quot;build&amp;quot;,
            &amp;quot;runToMain&amp;quot;: true, //does not look to work for now
            &amp;quot;debuggerArgs&amp;quot;: [
                &amp;quot;--directory=/home/giova/workspaces/GIT/time_of_flight_ble/nRF5_SDK_14.0.0_3bcc1f7&amp;quot; //not sure it is required
            ],
            &amp;quot;searchDir&amp;quot;: [&amp;quot;/usr/local/share/openocd/scripts&amp;quot;],
            &amp;quot;device&amp;quot;:&amp;quot;nRF52832_xxAA&amp;quot;, //required if &amp;quot;servertype&amp;quot;:&amp;quot;jlink&amp;quot;,
            //   &amp;quot;svdFile&amp;quot;: //used for peripheral view
            //   &amp;quot;swoConfig&amp;quot;:{ //see https://marcelball.ca/projects/cortex-debug/cortex-debug-swo-decoding-and-graphing/
            //       &amp;quot;enabled&amp;quot;: false,
            //       &amp;quot;swoFrequency&amp;quot;: 0,
            //       &amp;quot;cpuFrequency&amp;quot;: 0,
            //       &amp;quot;ports&amp;quot;:{ //to populate see https://marcelball.ca/projects/cortex-debug/cortex-debug-swo-decoding-and-graphing/
            //       }
            //   },

            &amp;quot;graphConfig&amp;quot;: [],
            &amp;quot;showDevDebugOutput&amp;quot;: true,
            &amp;quot;configFiles&amp;quot;: [
                &amp;quot;board/nordic_nrf52_dk.cfg&amp;quot;
            ],
            &amp;quot;linux&amp;quot;: {},
        },
    ]
  }&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;This file also requires task.json which defines how to build the project:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;{
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    &amp;quot;version&amp;quot;: &amp;quot;2.0.0&amp;quot;,
    &amp;quot;tasks&amp;quot;: [
        {
            &amp;quot;label&amp;quot;: &amp;quot;build&amp;quot;,
            &amp;quot;type&amp;quot;: &amp;quot;shell&amp;quot;,

            &amp;quot;args&amp;quot;: [],
            &amp;quot;linux&amp;quot;: {
                &amp;quot;command&amp;quot;: &amp;quot;${workspaceRoot}/pca10040/s132/armgcc/build_script.sh&amp;quot; //substitute with &amp;quot;make&amp;quot; for regular builds
            },
        },

    ]
}&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;These configuration is just the first one working. Probably there are better ways to configure it (for instance by using only relative paths), nevertheless they can be used as reference.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Visual Studio Code development with gcc and openocd</title><link>https://devzone.nordicsemi.com/thread/214635?ContentTypeID=1</link><pubDate>Fri, 11 Oct 2019 14:21:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c23ae2e1-bd81-4a54-bddc-bf04ba59771f</guid><dc:creator>Nguyen Hoan Hoang</dc:creator><description>&lt;p&gt;Of course young one (&amp;quot;Yoda style&amp;quot;), everyone has their own preferences. &amp;nbsp;Some prefer tab some prefer spaces. Some like it blue some like it black.&amp;nbsp;heheh!!&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Visual Studio Code development with gcc and openocd</title><link>https://devzone.nordicsemi.com/thread/214634?ContentTypeID=1</link><pubDate>Fri, 11 Oct 2019 14:20:00 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6b34f756-5146-4e10-b45d-1d7ad53fbaa7</guid><dc:creator>Davide</dc:creator><description>&lt;p&gt;Ok, thanks.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Visual Studio Code development with gcc and openocd</title><link>https://devzone.nordicsemi.com/thread/214633?ContentTypeID=1</link><pubDate>Fri, 11 Oct 2019 14:15:42 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1b9d0e63-14fe-42a6-bbfa-ec55185b3818</guid><dc:creator>Nguyen Hoan Hoang</dc:creator><description>&lt;p&gt;CMSIS-DAP is ARM standard debug port access protocol. &amp;nbsp;So it is supported by all IDE and OpenOCD as well. &amp;nbsp;The &lt;a href="https://embeddedsoftdev.blogspot.com/p/idap-link.html"&gt;IDAP-Link &lt;/a&gt;is a CMSIS-DAP based jtag probe. GDB is still required for debugging.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Visual Studio Code development with gcc and openocd</title><link>https://devzone.nordicsemi.com/thread/214625?ContentTypeID=1</link><pubDate>Fri, 11 Oct 2019 13:31:28 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:dbf11c44-b259-4d04-8eea-1b5b87ec8baf</guid><dc:creator>Davide</dc:creator><description>&lt;p&gt;Sorry, a quick related question. Is&amp;nbsp;&lt;span&gt;CMSIS-DAP and alternative to gdb? Or are they different stuff?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;I still don&amp;#39;t have a clear picture of the roles of all the components.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Visual Studio Code development with gcc and openocd</title><link>https://devzone.nordicsemi.com/thread/214624?ContentTypeID=1</link><pubDate>Fri, 11 Oct 2019 13:27:58 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:28efff8f-5ca8-4769-8609-c9aa9d30ab99</guid><dc:creator>Davide</dc:creator><description>&lt;p&gt;Ah ok, so you stopped using makefiles when I was just born..eheh. Jokes apart, these are personal choices, they can be shared or not.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Visual Studio Code development with gcc and openocd</title><link>https://devzone.nordicsemi.com/thread/214618?ContentTypeID=1</link><pubDate>Fri, 11 Oct 2019 13:12:37 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:91d7df75-a2ea-4f3c-8a3a-cd690d8962c4</guid><dc:creator>Nguyen Hoan Hoang</dc:creator><description>&lt;p&gt;Actually not, I only use relative path in native project. That is non issue for me. &amp;nbsp;It also support all macro just like makefile. &amp;nbsp;I stopped using makefile file 30 years ago and never come back to that. &amp;nbsp;A colleague of mine even setup an auto build machine using native eclipse project directly. &amp;nbsp; &amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Visual Studio Code development with gcc and openocd</title><link>https://devzone.nordicsemi.com/thread/214617?ContentTypeID=1</link><pubDate>Fri, 11 Oct 2019 13:05:49 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:57db7191-6563-40d4-9802-ff4fbe8c0b2e</guid><dc:creator>Davide</dc:creator><description>&lt;p&gt;Yes probably with native project the symbols are much easier to get recognized, but then it is really hard to synchronize the project on git. You can just push all the .project files, but then absolute path might brake at every pull, and diff operation would work badly. With makefiles the synchronization of project is much cleaner and again,&amp;nbsp;once you understood the makefile configuration for an ARM MCU model, it is almost the same on the others.&lt;/p&gt;
&lt;p&gt;I have been really a fan of Eclipse in the past years, but for me it is time to&amp;nbsp;try something else.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Visual Studio Code development with gcc and openocd</title><link>https://devzone.nordicsemi.com/thread/214608?ContentTypeID=1</link><pubDate>Fri, 11 Oct 2019 12:41:46 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3e033ea8-a91b-4d03-aa9c-8ef3baa41e53</guid><dc:creator>Nguyen Hoan Hoang</dc:creator><description>&lt;p&gt;I think the problem was that used makefile project. &amp;nbsp;Eclipse native project works better. &amp;nbsp;Probably due to the fact that it does not have the include path. &amp;nbsp;While native&amp;nbsp;project have all the paths to resolve the missing definition. &amp;nbsp;I use only native Eclipse project. &amp;nbsp;It works fine for me. &amp;nbsp;Nonetheless, I am still interested to find a way to add support of VS code to this multiplatform multiarchitecture library &lt;a href="https://github.com/IOsonata/IOsonata&amp;nbsp;"&gt;github.com/.../IOsonata&amp;#160;&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Visual Studio Code development with gcc and openocd</title><link>https://devzone.nordicsemi.com/thread/214573?ContentTypeID=1</link><pubDate>Fri, 11 Oct 2019 11:21:39 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4f360b64-172d-4d44-8195-71c31417b566</guid><dc:creator>Davide</dc:creator><description>&lt;p&gt;oh yes, I also tried index rebuild.&amp;nbsp;When I read the &lt;a href="https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/development-with-gcc-and-eclipse"&gt;tutorial&lt;/a&gt;&amp;nbsp;I managed to make it work the first time, however after a while it stopped. I repeated all the steps several times but without luck.&lt;/p&gt;
&lt;p&gt;For VSCode there is a jlink extension that should do the job for what concerns Nordic DKs (there are some related questions in this forum about it), however it can be applied only to jlink based boards. I would like a generic tool that can be configured also on other mcu, at least arm ones.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Visual Studio Code development with gcc and openocd</title><link>https://devzone.nordicsemi.com/thread/214448?ContentTypeID=1</link><pubDate>Thu, 10 Oct 2019 15:20:46 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:930aceec-023a-4e3d-8377-0d4d7378bf08</guid><dc:creator>Nguyen Hoan Hoang</dc:creator><description>&lt;p&gt;Thanks for the insight. &amp;nbsp;Yeah, I know the red thing is quite annoying. &amp;nbsp;One way I found to reduce it is to go to project/C/C++ index/Rebuild.&lt;/p&gt;
&lt;p&gt;I&amp;#39;ll try VSCode when I get some free time. &amp;nbsp;It would be great if there is some kind of plugins similar to the GNU ARM eclipse. &amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Visual Studio Code development with gcc and openocd</title><link>https://devzone.nordicsemi.com/thread/214433?ContentTypeID=1</link><pubDate>Thu, 10 Oct 2019 14:32:16 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ec31e8df-82dc-4f0b-aaab-44eb09b6355d</guid><dc:creator>Davide</dc:creator><description>&lt;p&gt;Three reasons:&lt;/p&gt;
&lt;p&gt;1) eclipse is heavy to run, I don&amp;#39;t have any data but VScode seems lighter. This is important because everything runs on a virtual machine, host is windows and guest is ubuntu.&lt;/p&gt;
&lt;p&gt;2)&amp;nbsp;I&amp;#39;ve put a lot of efforts to make eclipse recognizing all the symbols/include/declaration used in the code, but my projects are still full of red signs/warning/errors, even if gcc compiles perfectly. It&amp;nbsp;is really annoying that the editor doesn&amp;#39;t follow the compiler (yes I took a look at the tutorial here on the nordic, and yes I edited the p&lt;span&gt;roviders string&lt;/span&gt;).&lt;/p&gt;
&lt;p&gt;3) VScode projects and configurations are much more portable and clean, in particular when the code is on git like repository.&lt;/p&gt;
&lt;p&gt;These reasons made me think about trying something else, and VScode was used by most of developers here.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Visual Studio Code development with gcc and openocd</title><link>https://devzone.nordicsemi.com/thread/214403?ContentTypeID=1</link><pubDate>Thu, 10 Oct 2019 13:47:44 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a29a9031-2d6a-402f-bc51-48d1474bc7ce</guid><dc:creator>Nguyen Hoan Hoang</dc:creator><description>&lt;p&gt;May I ask any particular reason why you switch to VS code instead of continuing with Eclipse? &amp;nbsp;Eclipse can work with OpenOCD and multiple MCU targets easily. &amp;nbsp;See here&amp;nbsp;&lt;a href="http://embeddedsoftdev.blogspot.com/p/idap-link.html"&gt;http://embeddedsoftdev.blogspot.com/p/idap-link.html&lt;/a&gt;&amp;nbsp;for debugging nRF5x MCU with CMSIS-DAP and OpenOCD with Eclipse.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>