This patch fixes building using Apache Ant (or GNU make, for that matter, which uses Ant). The problem lies in neglecting to include the `TuxGuitar-gm-utils' project JAR file in the classpath when building source that depends on it.
The GM* classes are referenced in a lot of plugins and the compiler has no idea how to handle it during the compile. I solved it by building the `TuxGuitar-gm-utils/tuxguitar-gm-utils.jar' file FIRST in the makefile and then referencing it in the projects that depend on its classes. It's also added to the install when running `make install' so it should work to provide the needed classes at runtime.
Here is an example error output just from using Ant to build TuxGuitar-compat:
[javac] symbol : class GMChannelRouter
[javac] location: class org.herac.tuxguitar.io.tg.v12.TGOutputStream
[javac] this.channelRouter = new GMChannelRouter();
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v12/TGOutputStream.java:758: cannot find symbol
[javac] symbol : class GMChannelRouterConfigurator
[javac] location: class org.herac.tuxguitar.io.tg.v12.TGOutputStream
[javac] GMChannelRouterConfigurator gmChannelRouterConfigurator = new GMChannelRouterConfigurator(this.channelRouter);
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v12/TGOutputStream.java:758: cannot find symbol
[javac] symbol : class GMChannelRouterConfigurator
[javac] location: class org.herac.tuxguitar.io.tg.v12.TGOutputStream
[javac] GMChannelRouterConfigurator gmChannelRouterConfigurator = new GMChannelRouterConfigurator(this.channelRouter);
[javac] ^
[javac] Note: Some input files use unchecked or unsafe operations.
[javac] Note: Recompile with -Xlint:unchecked for details.
[javac] 60 errors
A full error log is also attached.
# JAVA_HOME=/usr/lib64/java
# JAVA=
# JAVAC=
# SWT_JAR=/usr/share/java/swt.jar
which javac
/usr/lib64/java/bin/javac
which java
/usr/lib64/java/bin/java
cd TuxGuitar-compat && ant -v -d -Dpath.tuxguitar="/usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar/tuxguitar.jar" -Dpath.itext="/usr/share/java/itextpdf.jar" -Dpath.swt="/usr/share/java/swt.jar" -Dlib.swt.jar="/usr/share/java/swt.jar" -Ddist.version="java" -Ddist.file="NOT_EXISTENT_FILE" -Dant.build.javac.source=1.6 -Dant.build.javac.target=1.6 -Dbuild.jni.library.dir=. -Dbuild.jni.library.extension=.so -Dbuild.jni.library.prefix=lib -lib /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar all
Apache Ant(TM) version 1.9.0alpha compiled on June 26 2012
Trying the default build file: build.xml
Buildfile: /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/build.xml
Adding reference: ant.PropertyHelper
Detected Java version: 1.6 in: /usr/lib64/java/jre
Detected OS: Linux
Adding reference: ant.ComponentHelper
Setting ro project property: build.jni.library.dir -> .
Setting ro project property: ant.build.javac.source -> 1.6
Setting ro project property: build.jni.library.extension -> .so
Setting ro project property: build.jni.library.prefix -> lib
Setting ro project property: path.itext -> /usr/share/java/itextpdf.jar
Setting ro project property: dist.file -> NOT_EXISTENT_FILE
Setting ro project property: path.tuxguitar -> /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar/tuxguitar.jar
Setting ro project property: lib.swt.jar -> /usr/share/java/swt.jar
Setting ro project property: path.swt -> /usr/share/java/swt.jar
Setting ro project property: dist.version -> java
Setting ro project property: ant.build.javac.target -> 1.6
Setting ro project property: ant.file -> /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/build.xml
Setting ro project property: ant.file.type -> file
Adding reference: ant.projectHelper
Adding reference: ant.parsing.context
Adding reference: ant.targets
parsing buildfile /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/build.xml with URI = file:/usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/build.xml
Setting ro project property: ant.project.name -> TuxGuitar-compat
Adding reference: TuxGuitar-compat
Setting ro project property: ant.project.default-target -> all
Setting ro project property: ant.file.TuxGuitar-compat -> /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/build.xml
Setting ro project property: ant.file.type.TuxGuitar-compat -> file
Project base dir set to: /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat
+Target:
+Target: init
+Target: build
+Target: clean
+Target: all
Adding reference: ant.LocalProperties
parsing buildfile jar:file:/usr/share/ant/lib/ant.jar!/org/apache/tools/ant/antlib.xml with URI = jar:file:/usr/share/ant/lib/ant.jar!/org/apache/tools/ant/antlib.xml from a zip file
[property] Loading /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/build.properties
Override ignored for property "ant.build.javac.source"
Override ignored for property "path.tuxguitar"
Override ignored for property "ant.build.javac.target"
Setting project property: build.src.path -> src
Setting project property: build.share.path -> share
Setting project property: build.path -> build
Setting project property: build.jar -> tuxguitar-compat.jar
Adding reference: class.path
Setting ro project property: ant.project.invoked-targets -> all
Attempting to create object of type org.apache.tools.ant.helper.DefaultExecutor
Adding reference: ant.executor
Build sequence for target(s) `all' is [clean, init, build, all]
Complete build sequence is [clean, init, build, all, ]
clean:
[delete] Deleting directory /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/build
[delete] Deleting directory /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/build
[delete] Could not find file /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/tuxguitar-compat.jar to delete.
init:
[mkdir] Created dir: /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/build
build:
[echo] +-------------------------------------------------+
[echo] | B U I L D I N G P L U G I N |
[echo] +-------------------------------------------------+
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/build.xml:28: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds
fileset: Setup scanner in dir /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src with patternSet{ includes: [**/*.java] excludes: [] }
[javac] org/herac/tuxguitar/io/tg/TGPluginListImpl.java added as org/herac/tuxguitar/io/tg/TGPluginListImpl.class doesn't exist.
[javac] org/herac/tuxguitar/io/tg/v07/TGInputStream.java added as org/herac/tuxguitar/io/tg/v07/TGInputStream.class doesn't exist.
[javac] org/herac/tuxguitar/io/tg/v08/TGInputStream.java added as org/herac/tuxguitar/io/tg/v08/TGInputStream.class doesn't exist.
[javac] org/herac/tuxguitar/io/tg/v08/TGStream.java added as org/herac/tuxguitar/io/tg/v08/TGStream.class doesn't exist.
[javac] org/herac/tuxguitar/io/tg/v09/TGInputStream.java added as org/herac/tuxguitar/io/tg/v09/TGInputStream.class doesn't exist.
[javac] org/herac/tuxguitar/io/tg/v09/TGStream.java added as org/herac/tuxguitar/io/tg/v09/TGStream.class doesn't exist.
[javac] org/herac/tuxguitar/io/tg/v10/TGInputStream.java added as org/herac/tuxguitar/io/tg/v10/TGInputStream.class doesn't exist.
[javac] org/herac/tuxguitar/io/tg/v10/TGOutputStream.java added as org/herac/tuxguitar/io/tg/v10/TGOutputStream.class doesn't exist.
[javac] org/herac/tuxguitar/io/tg/v10/TGStream.java added as org/herac/tuxguitar/io/tg/v10/TGStream.class doesn't exist.
[javac] org/herac/tuxguitar/io/tg/v11/TGInputStream.java added as org/herac/tuxguitar/io/tg/v11/TGInputStream.class doesn't exist.
[javac] org/herac/tuxguitar/io/tg/v11/TGOutputStream.java added as org/herac/tuxguitar/io/tg/v11/TGOutputStream.class doesn't exist.
[javac] org/herac/tuxguitar/io/tg/v11/TGStream.java added as org/herac/tuxguitar/io/tg/v11/TGStream.class doesn't exist.
[javac] org/herac/tuxguitar/io/tg/v12/TGInputStream.java added as org/herac/tuxguitar/io/tg/v12/TGInputStream.class doesn't exist.
[javac] org/herac/tuxguitar/io/tg/v12/TGOutputStream.java added as org/herac/tuxguitar/io/tg/v12/TGOutputStream.class doesn't exist.
[javac] org/herac/tuxguitar/io/tg/v12/TGStream.java added as org/herac/tuxguitar/io/tg/v12/TGStream.class doesn't exist.
[javac] Compiling 15 source files to /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/build
[javac] Using modern compiler
[javac] Compilation arguments:
[javac] '-d'
[javac] '/usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/build'
[javac] '-classpath'
[javac] '/usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/build:/usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar/tuxguitar.jar:/usr/share/java/swt.jar:/usr/share/ant/lib/ant-launcher.jar:/usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar:/usr/share/ant/lib/ant-jai.jar:/usr/share/ant/lib/ant-antlr.jar:/usr/share/ant/lib/ant-jdepend.jar:/usr/share/ant/lib/ant-apache-oro.jar:/usr/share/ant/lib/ant-apache-regexp.jar:/usr/share/ant/lib/ant-jmf.jar:/usr/share/ant/lib/ant-jsch.jar:/usr/share/ant/lib/ant-apache-bsf.jar:/usr/share/ant/lib/ant-netrexx.jar:/usr/share/ant/lib/ant-swing.jar:/usr/share/ant/lib/ant-bootstrap.jar:/usr/share/ant/lib/ant-apache-bcel.jar:/usr/share/ant/lib/ant-javamail.jar:/usr/share/ant/lib/ant-junit.jar:/usr/share/ant/lib/ant-commons-net.jar:/usr/share/ant/lib/ant-apache-xalan2.jar:/usr/share/ant/lib/ant-commons-logging.jar:/usr/share/ant/lib/ant-apache-log4j.jar:/usr/share/ant/lib/ant.jar:/usr/share/ant/lib/ant-testutil.jar:/usr/share/ant/lib/ant-junit4.jar:/usr/share/ant/lib/ant-apache-resolver.jar:/usr/lib64/java/lib/tools.jar'
[javac] '-sourcepath'
[javac] '/usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src'
[javac] '-target'
[javac] '1.6'
[javac] '-g:none'
[javac] '-source'
[javac] '1.6'
[javac]
[javac] The ' characters around the executable and arguments are
[javac] not part of the command.
[javac] Files to be compiled:
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/TGPluginListImpl.java
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v07/TGInputStream.java
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v08/TGInputStream.java
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v08/TGStream.java
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v09/TGInputStream.java
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v09/TGStream.java
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v10/TGInputStream.java
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v10/TGOutputStream.java
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v10/TGStream.java
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v11/TGInputStream.java
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v11/TGOutputStream.java
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v11/TGStream.java
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v12/TGInputStream.java
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v12/TGOutputStream.java
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v12/TGStream.java
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v07/TGInputStream.java:13: package org.herac.tuxguitar.gm does not exist
[javac] import org.herac.tuxguitar.gm.GMChannelRoute;
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v08/TGInputStream.java:13: package org.herac.tuxguitar.gm does not exist
[javac] import org.herac.tuxguitar.gm.GMChannelRoute;
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v09/TGInputStream.java:13: package org.herac.tuxguitar.gm does not exist
[javac] import org.herac.tuxguitar.gm.GMChannelRoute;
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v10/TGInputStream.java:13: package org.herac.tuxguitar.gm does not exist
[javac] import org.herac.tuxguitar.gm.GMChannelRoute;
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v10/TGOutputStream.java:14: package org.herac.tuxguitar.gm does not exist
[javac] import org.herac.tuxguitar.gm.GMChannelRoute;
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v10/TGOutputStream.java:15: package org.herac.tuxguitar.gm does not exist
[javac] import org.herac.tuxguitar.gm.GMChannelRouter;
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v10/TGOutputStream.java:16: package org.herac.tuxguitar.gm does not exist
[javac] import org.herac.tuxguitar.gm.GMChannelRouterConfigurator;
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v10/TGOutputStream.java:56: cannot find symbol
[javac] symbol : class GMChannelRouter
[javac] location: class org.herac.tuxguitar.io.tg.v10.TGOutputStream
[javac] private GMChannelRouter channelRouter;
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v10/TGOutputStream.java:686: cannot find symbol
[javac] symbol : class GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v10.TGOutputStream
[javac] private GMChannelRoute getChannelRoute( int channelId ){
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v11/TGInputStream.java:13: package org.herac.tuxguitar.gm does not exist
[javac] import org.herac.tuxguitar.gm.GMChannelRoute;
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v11/TGOutputStream.java:14: package org.herac.tuxguitar.gm does not exist
[javac] import org.herac.tuxguitar.gm.GMChannelRoute;
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v11/TGOutputStream.java:15: package org.herac.tuxguitar.gm does not exist
[javac] import org.herac.tuxguitar.gm.GMChannelRouter;
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v11/TGOutputStream.java:16: package org.herac.tuxguitar.gm does not exist
[javac] import org.herac.tuxguitar.gm.GMChannelRouterConfigurator;
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v11/TGOutputStream.java:57: cannot find symbol
[javac] symbol : class GMChannelRouter
[javac] location: class org.herac.tuxguitar.io.tg.v11.TGOutputStream
[javac] private GMChannelRouter channelRouter;
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v11/TGOutputStream.java:728: cannot find symbol
[javac] symbol : class GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v11.TGOutputStream
[javac] private GMChannelRoute getChannelRoute( int channelId ){
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v12/TGInputStream.java:13: package org.herac.tuxguitar.gm does not exist
[javac] import org.herac.tuxguitar.gm.GMChannelRoute;
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v12/TGOutputStream.java:14: package org.herac.tuxguitar.gm does not exist
[javac] import org.herac.tuxguitar.gm.GMChannelRoute;
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v12/TGOutputStream.java:15: package org.herac.tuxguitar.gm does not exist
[javac] import org.herac.tuxguitar.gm.GMChannelRouter;
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v12/TGOutputStream.java:16: package org.herac.tuxguitar.gm does not exist
[javac] import org.herac.tuxguitar.gm.GMChannelRouterConfigurator;
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v12/TGOutputStream.java:57: cannot find symbol
[javac] symbol : class GMChannelRouter
[javac] location: class org.herac.tuxguitar.io.tg.v12.TGOutputStream
[javac] private GMChannelRouter channelRouter;
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v12/TGOutputStream.java:744: cannot find symbol
[javac] symbol : class GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v12.TGOutputStream
[javac] private GMChannelRoute getChannelRoute( int channelId ){
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v07/TGInputStream.java:265: cannot find symbol
[javac] symbol : variable GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v07.TGInputStream
[javac] gmChannel1Param.setKey(GMChannelRoute.PARAMETER_GM_CHANNEL_1);
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v07/TGInputStream.java:270: cannot find symbol
[javac] symbol : variable GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v07.TGInputStream
[javac] gmChannel2Param.setKey(GMChannelRoute.PARAMETER_GM_CHANNEL_2);
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v07/TGInputStream.java:302: cannot find symbol
[javac] symbol : variable GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v07.TGInputStream
[javac] if( channelParameter.getKey().equals(GMChannelRoute.PARAMETER_GM_CHANNEL_1) ){
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v08/TGInputStream.java:250: cannot find symbol
[javac] symbol : variable GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v08.TGInputStream
[javac] gmChannel1Param.setKey(GMChannelRoute.PARAMETER_GM_CHANNEL_1);
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v08/TGInputStream.java:255: cannot find symbol
[javac] symbol : variable GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v08.TGInputStream
[javac] gmChannel2Param.setKey(GMChannelRoute.PARAMETER_GM_CHANNEL_2);
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v08/TGInputStream.java:293: cannot find symbol
[javac] symbol : variable GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v08.TGInputStream
[javac] if( channelParameter.getKey().equals(GMChannelRoute.PARAMETER_GM_CHANNEL_1) ){
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v09/TGInputStream.java:271: cannot find symbol
[javac] symbol : variable GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v09.TGInputStream
[javac] gmChannel1Param.setKey(GMChannelRoute.PARAMETER_GM_CHANNEL_1);
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v09/TGInputStream.java:276: cannot find symbol
[javac] symbol : variable GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v09.TGInputStream
[javac] gmChannel2Param.setKey(GMChannelRoute.PARAMETER_GM_CHANNEL_2);
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v09/TGInputStream.java:314: cannot find symbol
[javac] symbol : variable GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v09.TGInputStream
[javac] if( channelParameter.getKey().equals(GMChannelRoute.PARAMETER_GM_CHANNEL_1) ){
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v10/TGInputStream.java:269: cannot find symbol
[javac] symbol : variable GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v10.TGInputStream
[javac] gmChannel1Param.setKey(GMChannelRoute.PARAMETER_GM_CHANNEL_1);
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v10/TGInputStream.java:274: cannot find symbol
[javac] symbol : variable GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v10.TGInputStream
[javac] gmChannel2Param.setKey(GMChannelRoute.PARAMETER_GM_CHANNEL_2);
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v10/TGInputStream.java:312: cannot find symbol
[javac] symbol : variable GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v10.TGInputStream
[javac] if( channelParameter.getKey().equals(GMChannelRoute.PARAMETER_GM_CHANNEL_1) ){
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v10/TGOutputStream.java:283: cannot find symbol
[javac] symbol : class GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v10.TGOutputStream
[javac] GMChannelRoute gmChannelRoute = getChannelRoute(channel.getChannelId());
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v10/TGOutputStream.java:687: cannot find symbol
[javac] symbol : class GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v10.TGOutputStream
[javac] GMChannelRoute gmChannelRoute = this.channelRouter.getRoute(channelId);
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v10/TGOutputStream.java:689: cannot find symbol
[javac] symbol : class GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v10.TGOutputStream
[javac] gmChannelRoute = new GMChannelRoute(GMChannelRoute.NULL_VALUE);
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v10/TGOutputStream.java:689: cannot find symbol
[javac] symbol : variable GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v10.TGOutputStream
[javac] gmChannelRoute = new GMChannelRoute(GMChannelRoute.NULL_VALUE);
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v10/TGOutputStream.java:698: cannot find symbol
[javac] symbol : class GMChannelRouter
[javac] location: class org.herac.tuxguitar.io.tg.v10.TGOutputStream
[javac] this.channelRouter = new GMChannelRouter();
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v10/TGOutputStream.java:700: cannot find symbol
[javac] symbol : class GMChannelRouterConfigurator
[javac] location: class org.herac.tuxguitar.io.tg.v10.TGOutputStream
[javac] GMChannelRouterConfigurator gmChannelRouterConfigurator = new GMChannelRouterConfigurator(this.channelRouter);
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v10/TGOutputStream.java:700: cannot find symbol
[javac] symbol : class GMChannelRouterConfigurator
[javac] location: class org.herac.tuxguitar.io.tg.v10.TGOutputStream
[javac] GMChannelRouterConfigurator gmChannelRouterConfigurator = new GMChannelRouterConfigurator(this.channelRouter);
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v11/TGInputStream.java:274: cannot find symbol
[javac] symbol : variable GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v11.TGInputStream
[javac] gmChannel1Param.setKey(GMChannelRoute.PARAMETER_GM_CHANNEL_1);
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v11/TGInputStream.java:279: cannot find symbol
[javac] symbol : variable GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v11.TGInputStream
[javac] gmChannel2Param.setKey(GMChannelRoute.PARAMETER_GM_CHANNEL_2);
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v11/TGInputStream.java:311: cannot find symbol
[javac] symbol : variable GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v11.TGInputStream
[javac] if( channelParameter.getKey().equals(GMChannelRoute.PARAMETER_GM_CHANNEL_1) ){
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v11/TGOutputStream.java:281: cannot find symbol
[javac] symbol : class GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v11.TGOutputStream
[javac] GMChannelRoute gmChannelRoute = getChannelRoute(channel.getChannelId());
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v11/TGOutputStream.java:729: cannot find symbol
[javac] symbol : class GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v11.TGOutputStream
[javac] GMChannelRoute gmChannelRoute = this.channelRouter.getRoute(channelId);
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v11/TGOutputStream.java:731: cannot find symbol
[javac] symbol : class GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v11.TGOutputStream
[javac] gmChannelRoute = new GMChannelRoute(GMChannelRoute.NULL_VALUE);
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v11/TGOutputStream.java:731: cannot find symbol
[javac] symbol : variable GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v11.TGOutputStream
[javac] gmChannelRoute = new GMChannelRoute(GMChannelRoute.NULL_VALUE);
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v11/TGOutputStream.java:740: cannot find symbol
[javac] symbol : class GMChannelRouter
[javac] location: class org.herac.tuxguitar.io.tg.v11.TGOutputStream
[javac] this.channelRouter = new GMChannelRouter();
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v11/TGOutputStream.java:742: cannot find symbol
[javac] symbol : class GMChannelRouterConfigurator
[javac] location: class org.herac.tuxguitar.io.tg.v11.TGOutputStream
[javac] GMChannelRouterConfigurator gmChannelRouterConfigurator = new GMChannelRouterConfigurator(this.channelRouter);
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v11/TGOutputStream.java:742: cannot find symbol
[javac] symbol : class GMChannelRouterConfigurator
[javac] location: class org.herac.tuxguitar.io.tg.v11.TGOutputStream
[javac] GMChannelRouterConfigurator gmChannelRouterConfigurator = new GMChannelRouterConfigurator(this.channelRouter);
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v12/TGInputStream.java:289: cannot find symbol
[javac] symbol : variable GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v12.TGInputStream
[javac] gmChannel1Param.setKey(GMChannelRoute.PARAMETER_GM_CHANNEL_1);
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v12/TGInputStream.java:294: cannot find symbol
[javac] symbol : variable GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v12.TGInputStream
[javac] gmChannel2Param.setKey(GMChannelRoute.PARAMETER_GM_CHANNEL_2);
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v12/TGInputStream.java:326: cannot find symbol
[javac] symbol : variable GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v12.TGInputStream
[javac] if( channelParameter.getKey().equals(GMChannelRoute.PARAMETER_GM_CHANNEL_1) ){
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v12/TGOutputStream.java:296: cannot find symbol
[javac] symbol : class GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v12.TGOutputStream
[javac] GMChannelRoute gmChannelRoute = getChannelRoute(channel.getChannelId());
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v12/TGOutputStream.java:745: cannot find symbol
[javac] symbol : class GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v12.TGOutputStream
[javac] GMChannelRoute gmChannelRoute = this.channelRouter.getRoute(channelId);
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v12/TGOutputStream.java:747: cannot find symbol
[javac] symbol : class GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v12.TGOutputStream
[javac] gmChannelRoute = new GMChannelRoute(GMChannelRoute.NULL_VALUE);
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v12/TGOutputStream.java:747: cannot find symbol
[javac] symbol : variable GMChannelRoute
[javac] location: class org.herac.tuxguitar.io.tg.v12.TGOutputStream
[javac] gmChannelRoute = new GMChannelRoute(GMChannelRoute.NULL_VALUE);
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v12/TGOutputStream.java:756: cannot find symbol
[javac] symbol : class GMChannelRouter
[javac] location: class org.herac.tuxguitar.io.tg.v12.TGOutputStream
[javac] this.channelRouter = new GMChannelRouter();
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v12/TGOutputStream.java:758: cannot find symbol
[javac] symbol : class GMChannelRouterConfigurator
[javac] location: class org.herac.tuxguitar.io.tg.v12.TGOutputStream
[javac] GMChannelRouterConfigurator gmChannelRouterConfigurator = new GMChannelRouterConfigurator(this.channelRouter);
[javac] ^
[javac] /usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/src/org/herac/tuxguitar/io/tg/v12/TGOutputStream.java:758: cannot find symbol
[javac] symbol : class GMChannelRouterConfigurator
[javac] location: class org.herac.tuxguitar.io.tg.v12.TGOutputStream
[javac] GMChannelRouterConfigurator gmChannelRouterConfigurator = new GMChannelRouterConfigurator(this.channelRouter);
[javac] ^
[javac] Note: Some input files use unchecked or unsafe operations.
[javac] Note: Recompile with -Xlint:unchecked for details.
[javac] 60 errors
BUILD FAILED
/usr/share/media/tmp/svn/lmsfm/trunk/externals/tuxguitar/TuxGuitar-compat/build.xml:28: Compile failed; see the compiler error output for details.
at org.apache.tools.ant.taskdefs.Javac.compile(Javac.java:1174)
at org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:930)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:392)
at org.apache.tools.ant.Target.performTasks(Target.java:413)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399)
at org.apache.tools.ant.Project.executeTarget(Project.java:1368)
at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
at org.apache.tools.ant.Project.executeTargets(Project.java:1251)
at org.apache.tools.ant.Main.runBuild(Main.java:799)
at org.apache.tools.ant.Main.startAnt(Main.java:228)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)
Total time: 1 second
make: *** [TuxGuitar-compat/tuxguitar-compat.jar] Error 1
tuxguitar-svn_simple_xml_error+gm-utils_fix.patch
Addendum: I figured out a better way of accomplishing this was to add the classes from gm-utils into the main `tuxguitar.jar'. This makes it so it won't show up as a glitchy plugin.