Code Monkey home page Code Monkey logo

Comments (10)

kilograham avatar kilograham commented on August 15, 2024 3

i re-based rp2040 onto v0.11.0 from upstream to make rp2040-v0.11.0-test.

Merging upstream is largely under the control of openocd itself- the core SWD and cortex M SMP bits have had PRs open for several years. It will happen at some point, but pushing it along hasn't been highest on our use of time priority list

from openocd.

thierer avatar thierer commented on August 15, 2024 2

Try running configure --disable-werror. If that doesn't help, try an autoreconf --no-recursive before configure.

from openocd.

thierer avatar thierer commented on August 15, 2024

What features do you need? Only today I modified the official PKGBUILD to patch the RP2040 support from the rp2040 branch into the 0.11.0 openocd release version. I could make that available on github, but I haven't included the support for 1. gpio bitbanging and 2. the picoprobe adapter, because I use neither.

from openocd.

zsigmondszilveszter avatar zsigmondszilveszter commented on August 15, 2024

I need the Picoprobe branch from this repo, which is not merged into the upstream repo if I am right, but neither the upstream repository is merged into the Picoprobe branch. I am not an expert in OpenOCD, I don't know what packages could I skip without breaking the functionalities I need. I checked and can assure, that the code where the compilation errors come is fixed in the upstream repo. The GPIO bitbanging part is not affected right now, because it works only on Raspberry Pies and there is no GCC 11 yet (at least with Raspberry Pi OS). I managed to compile the Picoprobe branch with an older Arch release with GCC 10 and copied over the source directory containing the compiled binaries. I can use it from the place but cannot make install because it detects the toolchain version differences and start over the build part.

from openocd.

zsigmondszilveszter avatar zsigmondszilveszter commented on August 15, 2024

Yes the --disable-werror helps and it compiles well with it. But OpenOCD is not usable from outside of its source directory anyway, interface/picoprobe.cfg cannot be found from outside.

from openocd.

thierer avatar thierer commented on August 15, 2024

It should be, if you installed it via make install. Did you do that? (I thought that was your plan). If so, did you specify a --prefix for configure? If not, it got probably installed to /usr/local/. What does type -p openocd say?

from openocd.

zsigmondszilveszter avatar zsigmondszilveszter commented on August 15, 2024

Yes I installed with make install. I didn't specified a prefix and you are right it was installed under /usr/local/bin/.

szilveszter@szilvArchDesktop ~> which openocd
/usr/local/bin/openocd
szilveszter@szilvArchDesktop ~>

The type -p openocd gives the following response:

szilveszter@szilvArchDesktop ~> type -p openocd
-
szilveszter@szilvArchDesktop ~>

I built the picoprobe branch from this repository with the following commands:

szilveszter@szilvArchDesktop ~> git clone https://github.com/raspberrypi/openocd.git --branch picoprobe --depth=1 --no-single-branch
szilveszter@szilvArchDesktop ~> cd openocd
szilveszter@szilvArchDesktop ~> ./bootstrap
szilveszter@szilvArchDesktop ~> ./configure --enable-picoprobe --disable-presto --disable-openjtag --disable-werror
szilveszter@szilvArchDesktop ~> make -j4
szilveszter@szilvArchDesktop ~> sudo make install
szilveszter@szilvArchDesktop ~> openocd -f interface/picoprobe.cfg -f target/rp2040.cfg -s tcl
Open On-Chip Debugger 0.10.0+dev-geb22ace (2021-05-27-12:43)
Licensed under GNU GPL v2
For bug reports, read
        http://openocd.org/doc/doxygen/bugs.html
embedded:startup.tcl:26: Error: Can't find interface/picoprobe.cfg
in procedure 'script' 
at file "embedded:startup.tcl", line 26
szilveszter@szilvArchDesktop ~> [1]

Meanwhile I found out that this is happening only with Fish, but not with Bash. I am wondering what could be wrong with my Fish environment?
Thanks for your help anyway.

from openocd.

thierer avatar thierer commented on August 15, 2024

Meanwhile I found out that this is happening only with Fish, but not with Bash. I am wondering what could be wrong with my Fish environment?

You mean it's working with bash? I have never used fish, I can't comment on that.

Does /usr/local/share/openocd/scripts/interface/picoprobe.cfg exist?
If it does, what does openocd -d say? It should list the directories where openocd is searching for its scripts. (The add_script_search_dir() lines). In your case, it should probably include /usr/local/bin/../share/openocd/scripts.

Btw. you don't need the -s tcl option when openocd is installed. It's only used to add the tcl subdirectory of the repository to the search path for scripts when running the command from there (although I don't think it would hurt; I think it only adds to the search path and doesn't replace it).

from openocd.

zsigmondszilveszter avatar zsigmondszilveszter commented on August 15, 2024

You mean it's working with bash? I have never used fish, I can't comment on that.

Yes it is working with Bash and now with Fish also. It was my bad. I created an alias to my previously compiled elsewhere binary and didn't realize that I am still using that version under Fish.
Now everything works as supposed. To anybody who runs into this problem, the key to my problem was that --disable-werror compile flag. It is not a final solution, but rather a temporary fix, tell the compiler not to handle warnings as errors, until the code is fixed.
@thierer thank you for your help and sorry for wasting your time. I appreciate a lot.

from openocd.

P33M avatar P33M commented on August 15, 2024

There is now very little downstream code remaining.

from openocd.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.