Страница 1 из 1

remote development host для с++

Добавлено: 2009-06-03 0:51:01
gurt
remote development host - FreeBSD 7.0
клиентская машинка - XP с NetBeans 6.5.1

собственно хост удалённый ideшка видит замечательно, даже подключается и работает маппинг путей, но отказывается видеть на нём Tools collection ( путь к компилятору указываю /usr/bin )

коннект по ssh работает нормально. сперва коннектился через sh, пробы с bash не увенчались успехом.

если использовать OpenSolaris в качестве remote development host - всё гуд. подключается, компилит.

ну очень хочется мне работать в NetBeans'е, нравится мне он, а компилить на фри. :st:

Re: remote development host для с++

Добавлено: 2009-06-03 1:53:34
paradox
ну тцп дампом вооружись

Re: remote development host для с++

Добавлено: 2009-06-03 12:22:44
gurt
забыл добавить, что пробовал NetBeans ( 6.5 , 6.5.1 , 6.7) . результат одинаковый

Re: remote development host для с++

Добавлено: 2009-06-04 17:56:22
gurt
paradox писал(а):ну тцп дампом вооружись
прошу прощения, что ест "тцп" ?

Re: remote development host для с++

Добавлено: 2009-06-04 18:17:05
zg
gurt писал(а):что ест "тцп"

Код: Выделить всё

zg# whatis tcpdump
ipfwpcap(8)              - copy diverted packets to a file in tcpdump format
tcpdump(1)               - dump traffic on a network
zg#

Re: remote development host для с++

Добавлено: 2009-06-05 17:20:35
gurt
ничего толкового не могу в дампе выудить, наверное не так смотрю. что искать нужно?

наткнулся на файлик getCompilerSets.bash

Код: Выделить всё

VERSION=0.9

# Prepend /usr/bin and /bin so we're ensured that standard Unix commands
# don't get replaced by a non-standard version
OPATH=$PATH
PATH=/usr/bin:/bin:$PATH

declare -a csets=('')
declare i=0

uname=$(type -p uname)
OS=$($uname -s)
ARCH=$($uname -m)

if [ -n "$1" ]
then
	# If parameter was provides just look there for compiler sets
	PATHSLIST=$1
else
	# Now restore the original path, but append a few directories
	# where compiler sets may be found.
	if [ "$OS" == "SunOS" ]
	then
	    PATH=$OPATH:/opt/sfw/bin:/usr/sfw/bin:/opt/SUNWspro/bin
	    if [ "$ARCH" == "i86pc" -a -x /usr/xpg4/bin/grep ] && /usr/xpg4/bin/grep -sq OpenSolaris /etc/release /dev/null
	    then
	        PATH=$PATH:/opt/SunStudioExpress/bin
	    fi
	else
	    PATH=$OPATH:/usr/bin:/bin
	fi

	# First line read should be platform information
	echo "$OS $ARCH"

	PATHSLIST=$PATH
fi

# Now find the compiler collections from the $PATHSLIST
IFS=:
for f in $PATHSLIST
do
    line=
    flavor=
    if [ "${f:0:1}" != "/" ]
    then
	continue	# skip relative directories
    fi

    if [ "${f:0:8}" = "/usr/ucb" ]
    then
	continue	# skip /usr/ucb (IZ #142780)
    fi

    if [ \( "$OS" == "SunOS" -a \( -x "$f/cc" -o -x "$f/CC" \) \) -o \
	 \( "$OS" == "Linux" -a -x "$f/CC" -a ! -x "$f/gcc" \) ]
    then
	inv=${f/prod//}/../inventory
	if [ "$f" == "/opt/SunStudioExpress/bin" ]
	then
	    line="SunStudioExpress;$f"
	    flavor="SunStudioExpress;"
	elif [ -d "$inv/v16n1" ]
	then
	    line="SunStudio_12;$f"
	    flavor="SunStudio_12;"
	elif [ -d "$inv/v15n1" ]
	then
	    line="SunStudio_11;$f"
	    flavor="SunStudio_11;"
	elif [ -d "$inv/v14n1" ]
	then
	    line="SunStudio_10;$f"
	    flavor="SunStudio_10;"
	elif [ -d "$inv/v13n1" ]
	then
	    line="SunStudio_9;$f"
	    flavor="SunStudio_9;"
	elif [ -d "$inv/v12n1" ]
	then
	    line="SunStudio_8;$f"
	    flavor="SunStudio_8;"
	else
	    line="SunStudio;$f"
	    flavor="SunStudio;"
	fi

	if [ -x "$f/cc" ]
	then
	    line="$line;cc"
	fi
	if [ -x "$f/CC" ]
	then
	    line="$line;CC"
	fi
	if [ -x "$f/f95" ]
	then
	    line="$line;f95"
	elif [ -x "$f/f90" ]
	then
	    line="$line;f90"
	fi
	if [ -x "$f/dmake" ]
	then
	    line="$line;dmake"
	fi
        gdb=$(type -p gdb)
        if [ -n "$gdb" ]
        then
            line="$line;gdb=$gdb"
        fi
    elif [ -x "$f/gcc" -o -x "$f/g++" ]
    then
	line="GNU;$f"
	flavor="GNU;"
	if [ -x "$f/gcc" ]
	then
	    line="$line;gcc"
	fi
	if [ -x "$f/g++" ]
	then
	    line="$line;g++"
	fi
	if [ -x "$f/gfortran" ]
	then
	    line="$line;gfortran"
	elif [ -x "$f/g77" ]
	then
	    line="$line;g77"
	fi
	if [ -x "$f/gdb" ]
	then
	    line="$line;gdb"
        else
            gdb=$(type -p gdb)
            if [ -n "$gdb" ]
            then
                line="$line;gdb=$gdb"
            fi
	fi
	if [ -x "$f/make" -a "$OS" != "SunOS" ]
	then
	    line="$line;make"
	fi
	if [ -x "$f/gmake" -a "$OS" == "SunOS" ]
	then
	    line="$line;gmake"
	fi
    fi
    if [ -n "$line" ]
    then
	found=
	len=${#flavor}
	for ((j=0; $j<$i; j=$j+1))
	do
	    # check the flavor of ${cset[$j]} and skip if its a duplicate
	    cpart="${cset[$j]}"
	    if [ "${cpart:0:$len}" == "$flavor" ]
	    then
		found=true
		break
	    fi
	done
	if [ -z "$found" ]
	then
	    cset[$i]=$line
	    ((i=$i+1))
	fi
    fi
done

# Print the set of compiler collections, one per line
if [ -n "${cset[*]}" ]
then
    for ((j=0; $j<$i; j=$j+1))
    do
	echo "${cset[$j]}"
    done
fi
думаю стоит его курить, но что-то не раскуривается у меня

Re: remote development host для с++

Добавлено: 2009-06-08 17:55:11
gurt
всё что пришло в голову перепробовал. не могу понять, почему оно не хочет цепляться.
поэтому к вам вопрос, кто в чём пишет и дебажит серверную часть?

Re: remote development host для с++

Добавлено: 2009-06-08 18:00:44
paradox
я пишу так что отлаживать практически ничего ненадо=))))

Re: remote development host для с++

Добавлено: 2009-06-08 18:08:47
zingel
С

gdb

ltrace/truss

Re: remote development host для с++

Добавлено: 2009-06-08 18:21:00
gurt
paradox писал(а):я пишу так что отлаживать практически ничего ненадо=))))
это всё замечательно, но когда много математики, то без дэбага никак. возможно как, но лично мне это представляется с трудом.
писать в ее или ви замечательно, но лично мне не хочется писать толстый проект в консольном редакторе.
возможно у меня не правильный подход, тогда просветите.
возможно надо писать на локальной машинке аккуратненько, по праздникам заливать код на сервер, компилить и читать логи, но мне это кажется неудобным.

Re: remote development host для с++

Добавлено: 2009-06-09 21:32:22
Aesthete Animus
gurt писал(а):
paradox писал(а):я пишу так что отлаживать практически ничего ненадо=))))
это всё замечательно, но когда много математики, то без дэбага никак. возможно как, но лично мне это представляется с трудом.
писать в ее или ви замечательно, но лично мне не хочется писать толстый проект в консольном редакторе.
возможно у меня не правильный подход, тогда просветите.
возможно надо писать на локальной машинке аккуратненько, по праздникам заливать код на сервер, компилить и читать логи, но мне это кажется неудобным.
Да поймите, не нужен отладчик в принципе, потомучто есть опасность на него понадеяться. Что Вы хотите отлаживать, установку соединений, потоки данных? А если соеднинений будет несколько сотен? Правильно, тогда все результаты вашей отладки для частных случаев полетят ко всем чертям и получите еще один плавающий баг.

Если проблемы с математикой и до усрачки нужен отладчик, то отладьте ОТДЕЛЬНО математику на локальной машине, заодно выполните задачу по блочному тестированию. В тоже время, математика написанная на Си почти никогда не вызывает проблем с переносом на другие платформы.

Re: remote development host для с++

Добавлено: 2009-06-13 15:04:15
gurt
наконец удалось разобраться :roll:

всего-то и надо было добавить симлинк на bash (/usr/local/bin/bash) в /bin
+ в скрипте самого бинса getCompilerSets.bash поменял Линух (мне он ни к чему) на Фри, но думаю, что работало бы и без того

с маппингом папок проблем не должно быть