Ghidra-Cpp-Class-Analyzer icon indicating copy to clipboard operation
Ghidra-Cpp-Class-Analyzer copied to clipboard

Extension doesn't appear in the Experimental Plugin List

Open jtint24 opened this issue 3 years ago • 12 comments

I'm using Ghidra 10.1.3 and I successfully installed the most recent version of Ghidra-Cpp-Class-Analyzer.

I have done the following:

  • I checked that it shows up in "Install Extensions..."
  • I checked that it's in the Extensions folder and has the name "Ghidra-Cpp-Class-Analyzer" (which should avoid something like #44)
  • The directory that it lists for the extension in "Install Extensions..." is correct
  • I tried uninstalling and reinstalling
  • I have quit and reopened Ghidra a number of times
  • I have made sure to open the plugin configure window from the code editor.

One thing to note is that I did have to add a gradle.properties to fix a problem I was having with Java, and I did have to edit extension.properties to set the version number to 10.1.3 manually, but I don't see how that could cause a problem here.

jtint24 avatar May 26 '22 23:05 jtint24

May you attach the application log file please? You can find it the same way as mentioned in the other linked issue. Just replace the Ghidra version in the path as necessary. It's probably something silly like in the other issue or a duplicate installation of the plugin.

I'm sorry you're having such a hard time with this. It's supposed to be a very simple process. Unfortunately when something minor goes wrong it throws a wrench in things and is difficult to diagnose. The entire extension build and installation process is dictated by Ghidra and I have minimal control over it.

astrelsky avatar May 27 '22 11:05 astrelsky

application.log Okay here's the application log file. I don't see anything super suspicious but then again I'm not entirely sure what I'm looking for.

jtint24 avatar May 27 '22 16:05 jtint24

Sorry for the delay. I did notice the following:

2022-05-25 12:43:01 ERROR (ExtensionTableProvider$1) Installation Error: Selected file: [ghidra_10.1.2_PUBLIC_20220311_Ghidra-Cpp-Class-Analyzer] is not a valid Ghidra Extension  
2022-05-25 12:43:24 ERROR (ExtensionTableProvider$1) Installation Error: Extension version for [Ghidra-Cpp-Class-Analyzer] is incompatible with Ghidra.  
2022-05-25 12:43:36 ERROR (ExtensionTableProvider$1) Installation Error: Extension version for [Ghidra-Cpp-Class-Analyzer] is incompatible with Ghidra.  
2022-05-25 13:18:55 ERROR (ExtensionTableProvider$1) Installation Error: Extension version for [Ghidra-Cpp-Class-Analyzer-master] is incompatible with Ghidra.  
2022-05-25 13:19:39 ERROR (ExtensionTableProvider$1) Installation Error: Selected file: [Ghidra-Cpp-Class-Analyzer-master] is not a valid Ghidra Extension  
2022-05-25 13:21:04 ERROR (ExtensionTableProvider$1) Installation Error: Extension version for [Ghidra-Cpp-Class-Analyzer-master] is incompatible with Ghidra.  
2022-05-25 13:36:57 ERROR (ExtensionTableProvider$1) Installation Error: Extension version for [Ghidra-Cpp-Class-Analyzer-master] is incompatible with Ghidra.  

Check and see if there is a duplicate installation. A collision of this sort would normally be logged but other than that I don't have any ideas.

Extensions are automatically loaded from the two following paths: C:\Users\jtint\.ghidra\.ghidra_10.1.3_PUBLIC\Extensions C:\Users\jtint\Downloads\ghidra_10.1.3_PUBLIC_20220421\ghidra_10.1.3_PUBLIC\Ghidra\Extensions

There should only be one of the following: C:\Users\jtint\.ghidra\.ghidra_10.1.3_PUBLIC\Extensions\Ghidra-Cpp-Class-Analyzer\extension.properties C:\Users\jtint\Downloads\ghidra_10.1.3_PUBLIC_20220421\ghidra_10.1.3_PUBLIC\Ghidra\Extensions\Ghidra-Cpp-Class-Analyzer\extension.properties

astrelsky avatar May 27 '22 22:05 astrelsky

I'm also having this issue on 10.1.4.

I installed everything (to my knowledge and according to application.log) correctly, but the plugin itself doesn't show up at all in the Experimental Plugin List.

unreference avatar Jun 01 '22 00:06 unreference

I'm also having this issue on 10.1.4.

I installed everything (to my knowledge and according to application.log) correctly, but the plugin itself doesn't show up at all in the Experimental Plugin List.

What version of Java are you using? I'm wondering if there is an underlying issue from a newer jdk that I'm not seeing on jdk 11.

I also just noticed that I didn't make a release for 10.1.4, which is ironic because I made a comment about exactly this earlier. I will hold off on doing so until I figure out what is going on here anyway.

astrelsky avatar Jun 01 '22 00:06 astrelsky

I'm also having this issue on 10.1.4. I installed everything (to my knowledge and according to application.log) correctly, but the plugin itself doesn't show up at all in the Experimental Plugin List.

What version of Java are you using? I'm wondering if there is an underlying issue from a newer jdk that I'm not seeing on jdk 11.

I also just noticed that I didn't make a release for 10.1.4, which is ironic because I made a comment about exactly this earlier. I will hold off on doing so until I figure out what is going on here anyway.

Unfortunately, I'm also using JDK 11.

As for the 10.1.4 release, no worries! It was easy enough to bump the version myself.

unreference avatar Jun 01 '22 01:06 unreference

What version of Java are you using? I'm wondering if there is an underlying issue from a newer jdk that I'm not seeing on jdk 11. I also just noticed that I didn't make a release for 10.1.4, which is ironic because I made a comment about exactly this earlier. I will hold off on doing so until I figure out what is going on here anyway.

Unfortunately, I'm also using JDK 11.

As for the 10.1.4 release, no worries! It was easy enough to bump the version myself.

Hmmm. I wasn't able to reproduce it when I built it and installed it with a fresh Ghidra 10.1.4. May you try this and attach the log please? I probably won't get back to this until tomorrow night.

https://github.com/astrelsky/Ghidra-Cpp-Class-Analyzer/issues/44#issuecomment-919581841

astrelsky avatar Jun 01 '22 01:06 astrelsky

Unfortunately, I'm also using JDK 11.

As for the 10.1.4 release, no worries! It was easy enough to bump the version myself.

Hmmm. I wasn't able to reproduce it when I built it and installed it with a fresh Ghidra 10.1.4. May you try this and attach the log please? I probably won't get back to this until tomorrow night.

#44 (comment)

Upon using a fresh Ghidra, rebuilding and installing the extension again, I was unfortunately met with the same result.

The contents of application.log seem unremarkable to me, but, hopefully, there's just something I'm missing.

unreference avatar Jun 01 '22 02:06 unreference

Unfortunately, I'm also using JDK 11.

As for the 10.1.4 release, no worries! It was easy enough to bump the version myself.

Hmmm. I wasn't able to reproduce it when I built it and installed it with a fresh Ghidra 10.1.4. May you try this and attach the log please? I probably won't get back to this until tomorrow night.

#44 (comment)

Upon using a fresh Ghidra, rebuilding and installing the extension again, I was unfortunately met with the same result.

The contents of application.log seem unremarkable to me, but, hopefully, there's just something I'm missing.

With a quick look through on my phone I did see it load some of the classes. With the log settings the same may you create or open a project and then the code browser? I don't recall seeing any project name but may have missed it on my phone. If the classes were found and loaded then one of two things are happening. Either an error is occurring when a tool is opened and the plugin package is loaded, or an error is occurring elsewhere and it is caught but not logged. I really hope it is the former or I'm at a loss for what to do.

astrelsky avatar Jun 01 '22 11:06 astrelsky

May one of you please attach your build of the plugin? I'm wondering if something went wrong while building/packaging.

astrelsky avatar Jun 09 '22 11:06 astrelsky

May you check the lib folder in the zip file of the built plugin for extra jar files? I noticed the other day that some jars for other extensions were being pulled in during the build that shouldn't be. It's due to a bug in my gradle script modifications that set the runtime classpath for debugging. I'm not sure why it is affecting the build. However if there is a duplicate plugin jar then Ghidra might silently blacklist the lib folder to prevent the collision and this would prevent the classes from being loaded.

astrelsky avatar Jun 15 '22 11:06 astrelsky

I'm having the same issue, and I'm trying the build in Releases. On 10.1.3

Nukley avatar Aug 15 '22 16:08 Nukley