Fedora linux forum

Форум русской поддержки ОС Fedora linux

 

#1 2010-11-14 22:53:14

Vladik71
Member
Зарегистрирован: 2010-11-08
Сообщений: 10

Странный запуск прог. TopCat в Федора 13

Всем привет!

Проинсталлировал програму TopCat, вот эту http://www.star.bris.ac.uk/~mbt/topcat/ нужно работать с графиками и таблицами. Но, как-то странно она запускается... Для запуска нужно зайти в директоррию где она проинсталлирована, и после клика правой клавишей мышки выбрать в меню "ПОКАЗАТЬ".

На попытку "Запустить в терминале" или "Выполнить" — реакции никакой. Попытался сделать значёк на рабочем столе, что-бы не ходить каждый раз по "пути", где она установлена. Но запустить со значка не удается. Откликается только на опцию "показать"...

На попытку вызвать в "терминале" программа тоже не реагирует...

Как быть?

Неактивен

 

#2 2010-11-15 13:48:28

Mak_s
Member
Откуда: Чернигов
Зарегистрирован: 2009-12-06
Сообщений: 346

Re: Странный запуск прог. TopCat в Федора 13

Пробовали метод, указанный на приведенной Вами странице?

On Unix-like operating systems, download one or other of these jar files and the startup script topcat into the same directory, then "chmod +x topcat", and you can just run the command:
    topcat


Круче самовара только титан

Неактивен

 

#3 2010-11-15 20:39:50

Vladik71
Member
Зарегистрирован: 2010-11-08
Сообщений: 10

Re: Странный запуск прог. TopCat в Федора 13

Mak_s написал:

Пробовали метод, указанный на приведенной Вами странице?

Пробовал. Без результата. Как я понял, в скрипте нужно прописать пути, т.к., например, у меня TopCat был установлен в моей "домашней папке". Как смог прописал, но ничего не получилось. Фактически, получается, что программа установлена и работает, но, что-бы её "нормально доустановить" и нужен этот скипт. Не все понял, что данный скрипт делает... Может без него как-то можно поправить?

Отредактированно Vladik71 (2010-11-15 20:40:48)

Неактивен

 

#4 2010-11-15 23:56:42

Mak_s
Member
Откуда: Чернигов
Зарегистрирован: 2009-12-06
Сообщений: 346

Re: Странный запуск прог. TopCat в Федора 13

Без этого конкретного скрипта может и можно обойтись. Но для этого скорее всего нужно написать собственный. Зачем изобретать велосипед?
Запустите скрипт из командной строки и покажите вывод.
А пути вряд ли нужно было менять, так как они относительные. И инструкцией конкретно указано, что скрипт нужно положить в ту же папку, где лежат .jar-ы.


Круче самовара только титан

Неактивен

 

#5 2010-11-17 02:22:34

Vladik71
Member
Зарегистрирован: 2010-11-08
Сообщений: 10

Re: Странный запуск прог. TopCat в Федора 13

Mak_s написал:

Запустите скрипт из командной строки и покажите вывод.

После того как запустил скрипт в дирректории обнаружился файл-иконка, вынес её на рабочий стол, и с неё Topcat начал запускаться. Получается, что скрипт "создает запускающую иконку"?

Т.е. после запуска "chmod +x topcat", как обещал автор скрипта (and you can just run the command:   topcat) в терминале в своей директории старта Topcat всё равно не происходит. В принципе, уже и не нужно, только ж по написанному не получается...

А возможно ли так настроть, что-бы Topcat, или любая другая программа запускалась в терминале с любого пути? 

Вот что получилось в результате запуска скрипта:

[root@Vladik-UP Topcat]# #!/bin/sh
[root@Vladik-UP Topcat]#
[root@Vladik-UP Topcat]# #+
[root@Vladik-UP Topcat]# #  Name:
[root@Vladik-UP Topcat]# #     topcat
[root@Vladik-UP Topcat]#
[root@Vladik-UP Topcat]# #  Purpose:
[root@Vladik-UP Topcat]# #     Invokes the TOPCAT application on unix
[root@Vladik-UP Topcat]#
[root@Vladik-UP Topcat]# #  Description:
[root@Vladik-UP Topcat]# #     This shell script invokes the TOPCAT application.
[root@Vladik-UP Topcat]# #     It's not very complicated, but performs some argument manipulation
[root@Vladik-UP Topcat]# #     prior to invoking java with the right classpath and classname.
[root@Vladik-UP Topcat]# #
[root@Vladik-UP Topcat]# #     1. if a class path is specified using either the CLASSPATH
[root@Vladik-UP Topcat]# #        environment variable or the -classpath flag to this script,
[root@Vladik-UP Topcat]# #        it will be added to the application classpath
[root@Vladik-UP Topcat]# #
[root@Vladik-UP Topcat]# #     2. any command-line arguments which look like they are destined
[root@Vladik-UP Topcat]# #        for java itself (starting with -D or -X, or prefixed with -J) will
[root@Vladik-UP Topcat]# #        be sent to java, and the others will be sent to the application
[root@Vladik-UP Topcat]#
[root@Vladik-UP Topcat]# #  Requisites:
[root@Vladik-UP Topcat]# #     - java should be on the path.
[root@Vladik-UP Topcat]# #
[root@Vladik-UP Topcat]# #     - relative to the directory in which this script is installed,
[root@Vladik-UP Topcat]# #       one of the following jar files should exist and contain the
[root@Vladik-UP Topcat]# #       TOPCAT classes:
[root@Vladik-UP Topcat]# #          ./topcat-full.jar
[root@Vladik-UP Topcat]# #          ./topcat-lite.jar
[root@Vladik-UP Topcat]# #          ../../lib/topcat/topcat.jar
[root@Vladik-UP Topcat]#
[root@Vladik-UP Topcat]# #  Authors:
[root@Vladik-UP Topcat]# #     MBT: Mark Taylor (Starlink)
[root@Vladik-UP Topcat]# #-
[root@Vladik-UP Topcat]#
[root@Vladik-UP Topcat]# # Set locations of acceptable jar files (relative to this script).
[root@Vladik-UP Topcat]# topcat_jars="\
>  ../lib/topcat/topcat.jar\
>  topcat-full.jar\
>  topcat-lite.jar\
> "
[root@Vladik-UP Topcat]#
[root@Vladik-UP Topcat]# #  Find where this script is located.
[root@Vladik-UP Topcat]# bindir="`dirname $0`"
[root@Vladik-UP Topcat]#
[root@Vladik-UP Topcat]# # Mac-specific items.
[root@Vladik-UP Topcat]# javaArgs0=""
[root@Vladik-UP Topcat]# if test -x /usr/bin/sw_vers && /usr/bin/sw_vers | grep -q 'OS.X'; then
>
>    # Look for the jar in the resource bundle, since we may have been
>    # installed that way.
>    topcat_jars="$topcat_jars ../Contents/Resources/Java/topcat-full.jar ../TOPCAT.app/Contents/Resources/Java/topcat-full.jar"
>
>    # Look for an icon file and prepare to start java in such a way that
>    # it gets used for the dock icon (rather than the generic java one).
>    icns_files="../TOPCAT.app/Contents/Resources/Topcat.icns ../lib/topcat/MacOS/Topcat.icns"
>    icns_file=""
>    for f in $icns_files; do
>       if test -r "$bindir/$f"; then
>          icns_file="$bindir/$f"
>       fi
>    done
>    if test -r "$icns_file" && java -X | grep -q -- -Xdock:icon; then
>       javaArgs0="$javaArgs0 "\'-Xdock:icon=$icns_file\'
>    fi
>
>    # Set Mac application name.
>    javaArgs0="$javaArgs0 -Dcom.apple.mrj.application.apple.menu.about.name=TOPCAT"
> fi
[root@Vladik-UP Topcat]#
[root@Vladik-UP Topcat]# #  Locate the application jar file.
[root@Vladik-UP Topcat]# for j in $topcat_jars; do
>    if test -z "$appjar" -a -f "$bindir/$j"; then
>       appjar="$bindir/$j"
>    fi
> done
[root@Vladik-UP Topcat]# if test ! -f "$appjar"
> then
>    echo 1>&2 "Can't find topcat classes in ${bindir} — looked for:$topcat_jars"
>    exit 1
> fi
[root@Vladik-UP Topcat]#
[root@Vladik-UP Topcat]# #  Divide the arguments into two parts: those destined as flags for
[root@Vladik-UP Topcat]# #  the java binary, and the rest.
[root@Vladik-UP Topcat]# javaArgs=""
[root@Vladik-UP Topcat]# appArgs=""
[root@Vladik-UP Topcat]# while test "$1"
> do
>    if echo $1 | grep -- '^-[XD]' >/dev/null; then
>       javaArgs="$javaArgs "\'$1\'
>    elif echo $1 | grep -- '^-J' >/dev/null; then
>       javaArgs="$javaArgs "\'`echo $1 | sed s/^-J//`\'
>    elif [ "$1" = "-classpath" -a -n "$2" ]; then
>       shift
>       export CLASSPATH="$1"
>    else
>       appArgs="$appArgs "\'$1\'
>    fi
>    shift
> done
[root@Vladik-UP Topcat]#
[root@Vladik-UP Topcat]# #  Check for Cygwin and transform paths.
[root@Vladik-UP Topcat]# case "`uname`" in
>   CYGWIN*)
>     if test -n "$CLASSPATH"; then
>        CLASSPATH=`cygpath --path --windows "${appjar}:$CLASSPATH"`
>     else
>        CLASSPATH=`cygpath --windows "${appjar}"`
>     fi
>   ;;
>   *)
>     CLASSPATH="${appjar}:${CLASSPATH}"
>   ;;
> esac
[root@Vladik-UP Topcat]#
[root@Vladik-UP Topcat]# #  Run topcat.
[root@Vladik-UP Topcat]# cmd="java \
>         $javaArgs0 \
>         $javaArgs \
>         -Duk.ac.starlink.topcat.cmdname=topcat \
>         -classpath \${CLASSPATH} uk.ac.starlink.topcat.Driver \
>         $appArgs"
[root@Vladik-UP Topcat]# eval "$cmd"

Неактивен