0

mcu8051ide on Linux mint 19 not working or opening, all dependencies are installed but when I check libraries, itcl is not present is the error.

I am confused what to do?

Link

Donal Fellows
  • 133,037
  • 18
  • 149
  • 215
  • It appears to be missing a library. The versions of libraries it wants are rather old (well, outright _ancient_ would be fairer) to the point where you _must_ contact people committed to support of mcu8051ide for assistance. – Donal Fellows Sep 22 '18 at 14:57

2 Answers2

0

I installed Linux mint 19 in a virtual machine to check out what's going on.

The Itcl 3.4 pkgIndex.tcl file has the following contents:

# Tcl package index file, version 1.0

if {![package vsatisfies [package provide Tcl] 8.6]} {return}
package ifneeded Itcl 3.4 [list load [file join /usr lib x86_64-linux-gnu "libitcl3.4.so.1"] Itcl]

This means that Itcl will only be available with Tcl 8.6. However, mcu8051ide specifically starts tclsh8.5. That's the reason it can't find Itcl.

The mcu8051ide command is a very short shell script that only starts tclsh8.5 and passes /usr/share/mcu8051ide/lib/main.tcl as the script to run. If instead you run that script with tclsh (which is a symbolic link that points to tclsh8.6), it seems to work at first glance.

So, you can either modify the original startup script, or put a modified copy in your own bin directory.

Schelte Bron
  • 4,113
  • 1
  • 7
  • 13
  • I understood the very problem, but your last line is confusing which script to modify and what to do add in it and where? Sorry linux noob still. – Akashdeep Nandi Sep 23 '18 at 15:07
  • /usr/bin/mcu8051ide is a script that runs the command `exec tclsh8.5 /usr/share/mcu8051ide/lib/main.tcl yada yada`. Change `tclsh8.5` to `tclsh`. – Schelte Bron Sep 23 '18 at 22:25
0

go to /usr/local/share/mcu8051ide/lib (or to /usr/share/mcu8051ide/lib depending on config during cmake)

and then edit the main.tcl file using sudo nano main.tcl

On the 51st line, change the value for MIN_TCL_VER from 8.5 to 8.6.

iminiki
  • 2,549
  • 12
  • 35
  • 45