snack does not work on tcl-tk 8.5 required by wavesurfer
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
wavesurfer (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
When running wavesurfer in Ubuntu 16.04 I get:
Error in startup script: can't find package snack 2.2
while executing
"package require snack 2.2"
(file "/usr/share/
invoked from within
"_source /usr/share/
("uplevel" body line 1)
invoked from within
"uplevel _source $args"
(procedure "source" line 5)
invoked from within
"source /usr/share/
("package ifneeded wsurf 1.8" script)
invoked from within
"package require -exact wsurf $version"
(file "/usr/share/
The problem:
The package wavesurfer depends on version 8.5 of tcl-tk and on snack. On Ubuntu 16.04 the default version of tcl-tk (and wish) is 8.6. Version 8.5 can be installed manually with
sudo apt-get install tcl8.5
Unfortunately, libsnack will only work in tcl-tk (and wish) version 8.6.
Example:
> wish
% puts $tcl_version
8.6
% packa req snack
2.2
> wish8.5
% puts $tcl_version
8.5
% packa req snack
can't find package snack
Same is also valid for tclsh and tclsh8.5.
Easy fix for wavesurfer:
Add the following line to the start-up script (/usr/bin/
-------------
#!/bin/sh
export TCLLIBPATH=
exec /usr/share/
-------------
Better solution:
Modify the snack package so that snack works regardless what version of tcl-tk is used.
Another better solution:
make the wavesurfer package depend on tcl-tk 8.6 instead of 8.5 (this avoids installing two versions of tcl-tk)
Affected packages:
- wavesurfer
- tcl-snack
- tcl8.5
> lsb_release -rd
Description: Ubuntu 16.04.1 LTS
Release: 16.04
> apt-cache policy wavesurfer
wavesurfer:
Installed: 1.8.8p4-3ubuntu1
Candidate: 1.8.8p4-3ubuntu1
Version table:
*** 1.8.8p4-3ubuntu1 500
500 http://
500 http://
100 /var/lib/
> apt-cache policy tcl-snack
tcl-snack:
Installed: 2.2.10.
Candidate: 2.2.10.
Version table:
*** 2.2.10.
500 http://
100 /var/lib/
> apt-cache policy tcl8.5
tcl8.5:
Installed: 8.5.19-1
Candidate: 8.5.19-1
Version table:
*** 8.5.19-1 500
500 http://
100 /var/lib/
Hi, /sourceforge. net/projects/ wavesurfer/.
I wanted to mention that yesterday we released a new version of WaveSurfer that does not require a specific version of tcl any longer. The source code is at https:/
Updating the package to this version will probably solve a lot of problems and will no longer force users to install two versions of tcl on their computers.
Best Giampiero (also on behalf of Jonas Beskow)