WoolF @ 25-09-2007 11:39:02

Где можно достать carwhisperer в том виде, в котором он сможет запуститься на таблетке?
Например на видео-ролике (http://internet-tablet.com/main/uyazvim … video-eng/   ) Joshua как-то, но запускает эту “тулзу“ на таблетке.

Wall @ 25-09-2007 15:51:39

Берете сорцы тут: http://trifinite.org/Downloads/carwhisperer-0.2.tar.gz   
И собираете. Там собственно и собирать нечего, один .c на 9 кил.

WoolF @ 26-09-2007 00:56:17

Wall говорит:

Берете сорцы тут: http://trifinite.org/Downloads/carwhisperer-0.2.tar.gz   
И собираете. Там собственно и собирать нечего, один .c на 9 кил.

Их я как раз только и нашел. Но каким образом собрать под таблетку, если на компе Linux'а нет, а на таблетке как это сделать я не в курсе (gcc установлен, но если набираю в терминале команду gcc, выдает "not found")?

Wall @ 26-09-2007 01:22:35

попробуйте это: gcc carwhisperer.c -o carwhisperer -lbluetooth
судя по сорцам ему нужен еще как минимум libbluetooth-dev, так что поставьте, иначе не соберется.

WoolF @ 26-09-2007 01:28:09

gcc: not found, хоть он и установлен, даже переустанавливал специально, думал может поможет.

Wall @ 26-09-2007 13:27:18

В общем действия такие:
1. Заходим в рутовую консоль
2. Добавляем scirocco в список репозиториев:
echo 'deb http://repository.maemo.org    scirocco free non-free' >> /etc/apt/sources.list
3. Ставим gcc:
apt-get update && apt-get install gcc-3.4
4. Ставим нужные библиотеки:
apt-get install libc6-dev libbluetooth2-dev
5. Копируем распакованые сорцы на девайс:
scp -r /tmp/carwhisperer-0.2/ root@192.168.1.3:
(или как-нибудь еще)
6. Заходим на девайсе в каталог с сорцами и собираем:
cd carwhisperer-0.2/ && gcc-3.4 carwhisperer.c -o carwhisperer -lbluetooth
7. Запускаем собраную программу:
./Nokia-N800-26:~/carwhisperer-0.2# ./carwhisperer
Usage:
        carwhisperer <hci#> <messagefile> <recordfile> <bdaddr> [channel]
8. Сносим все ненужное:
Убираем scrirocco из /etc/apt/sources.list
Убиваем ненужные пакеты (если конечно больше не хотим ничего собирать на устройстве):
apt-get remove gcc3.4 binutils libbluetooth2-dev linux-kernel-headers libc6-dev

Вот и все :)

WoolF @ 27-09-2007 03:36:42

Wall, вот что выдало и не скомпилировалось:

Код:

/media/mmc2/bt/carwhisperer-0.2 # gcc-3.4 carwhisperer.c -o carwhisperer -lbluetooth

carwhisperer.c:46:33: bluetooth/bluetooth.h: No such file or directory carwhisperer.c:47:27: bluetooth/hci.h: No such file or directory

carwhisperer.c:48:31: bluetooth/hci_lib.h: No such file or directory carwhisperer.c:49:27: bluetooth/sco.h: No such file or directory

carwhisperer.c:50:30: bluetooth/rfcomm.h: No such file or directory carwhisperer.c:63: error: syntax error before '*' token

carwhisperer.c: In function `rfcomm_connect': carwhisperer.c:65: error: storage size of 'addr' isn't known

carwhisperer.c:68: error: `BTPROTO_RFCOMM' undeclared (first use in th is function)

carwhisperer.c:68: error: (Each undeclared identifier is reported only once

carwhisperer.c:68: error: for each function it appears in.) carwhisperer.c:74: error: `src' undeclared (first use in this function )

carwhisperer.c:83: error: `dst' undeclared (first use in this function )

carwhisperer.c:84: error: `channel' undeclared (first use in this func tion)

carwhisperer.c: At top level:

carwhisperer.c:102: error: syntax error before '*' token

carwhisperer.c: In function `sco_connect':

carwhisperer.c:104: error: storage size of 'addr' isn't known

carwhisperer.c:105: error: storage size of 'conn' isn't known

carwhisperer.c:106: error: storage size of 'opts' isn't known

carwhisperer.c:109: error: `BTPROTO_SCO' undeclared (first use in this function)

carwhisperer.c:115: error: `src' undeclared (first use in this functio n)

carwhisperer.c:124: error: `dst' undeclared (first use in this functio n)

carwhisperer.c:134: error: `SOL_SCO' undeclared (first use in this fun ction)

carwhisperer.c:134: error: `SCO_CONNINFO' undeclared (first use in thi s function)

carwhisperer.c:142: error: `SCO_OPTIONS' undeclared (first use in this function)

carwhisperer.c:147: error: `handle' undeclared (first use in this func /media/mmc2/bt/carwhisperer-0.2 # gcc-3.4 carwhisperer.c -o carwhisperer -lbluetooth

carwhisperer.c:46:33: bluetooth/bluetooth.h: No such file or directory carwhisperer.c:47:27: bluetooth/hci.h: No such file or directory

carwhisperer.c:48:31: bluetooth/hci_lib.h: No such file or directory

carwhisperer.c:49:27: bluetooth/sco.h: No such file or directory carwhisperer.c:50:30: bluetooth/rfcomm.h: No such file or directory

carwhisperer.c:63: error: syntax error before '*' token

carwhisperer.c: In function `rfcomm_connect': carwhisperer.c:65: error: storage size of 'addr' isn't known

carwhisperer.c:68: error: `BTPROTO_RFCOMM' undeclared (first use in this function) carwhisperer.c:68: error: (Each undeclared identifier is reported only once

carwhisperer.c:68: error: for each function it appears in.)

carwhisperer.c:74: error: `src' undeclared (first use in this function) carwhisperer.c:83: error: `dst' undeclared (first use in this function)

carwhisperer.c:84: error: `channel' undeclared (first use in this function) carwhisperer.c: At top level:

carwhisperer.c:102: error: syntax error before '*' token carwhisperer.c: In function `sco_connect':

carwhisperer.c:104: error: storage size of 'addr' isn't known carwhisperer.c:105: error: storage size of 'conn' isn't known

carwhisperer.c:106: error: storage size of 'opts' isn't known carwhisperer.c:109: error: `BTPROTO_SCO' undeclared (first use in this function)

carwhisperer.c:115: error: `src' undeclared (first use in this function) carwhisperer.c:124: error: `dst' undeclared (first use in this function)

carwhisperer.c:134: error: `SOL_SCO' undeclared (first use in this function) carwhisperer.c:134: error: `SCO_CONNINFO' undeclared (first use in this function)

carwhisperer.c:142: error: `SCO_OPTIONS' undeclared (first use in this function)

carwhisperer.c:147: error: `handle' undeclared (first use in this function)

carwhisperer.c:150: error: `mtu' undeclared (first use in this function)

carwhisperer.c: In function `main':

carwhisperer.c:176: error: `bdaddr_t' undeclared (first use in this function)

carwhisperer.c:176: error: syntax error before "local"

carwhisperer.c:178: error: `uint8_t' undeclared (first use in this function)

carwhisperer.c:188: error: `uint16_t' undeclared (first use in this function)

carwhisperer.c:188: error: syntax error before "sco_handle"

carwhisperer.c:192: error: `bdaddr' undeclared (first use in this function)

carwhisperer.c:193: error: `channel' undeclared (first use in this function)

carwhisperer.c:194: error: `hcidevno' undeclared (first use in this function)

carwhisperer.c:212: error: `local' undeclared (first use in this function)

carwhisperer.c:214: error: `vs' undeclared (first use in this function)

carwhisperer.c:259: error: `sco_handle' undeclared (first use in this function)

carwhisperer.c:259: error: `sco_mtu' undeclared (first use in this function)

/media/mmc2/bt/carwhisperer-0.2 #
Wall @ 27-09-2007 03:38:24

libbluetooth2-dev точно поставили? Это все должно быть там.

WoolF @ 27-09-2007 03:44:58

Wall говорит:

libbluetooth2-dev точно поставили? Это все должно быть там.

Помню что ставил, но видимо не установилось, а я этого не заметил. Сейчас поставил и всё нормально собралось. Спасибо большое =)

p.s. Только при запуске скомпилированного файла выдает "Permission Denied", хоть я и из под рута его запускаю. Почему так?

Wall @ 27-09-2007 03:51:57

А как Вы его запускаете? Так, как в инструкции :)? Думаю, что нет.

WoolF @ 27-09-2007 04:13:44

Wall говорит:

А как Вы его запускаете? Так, как в инструкции :)? Думаю, что нет.

Так как Вы написали =) Просто ./carwhisperer

Wall @ 27-09-2007 04:19:37

Хм. И где вы это запускаете? В каталоге, в котором собирали или где-то еще?
Покажите мне что говорит ls -l в том месте, где вы это делаете.

WoolF @ 27-09-2007 06:11:06

Разумеется в том в котором собирал.

Код:

media/mmc2/bt/carwhisperer-0.2 # ./carwhisperer
/bin/sh: ./carwhisperer: Permission denied
/media/mmc2/bt/carwhisperer-0.2 # ls -l
-rwxr-xr-x    1 user     root        17992 Oct 18  2005 LICENSE
-rwxr-xr-x    1 user     root          521 Oct 18  2005 Makefile
-rwxr-xr-x    1 user     root         4936 Oct 18  2005 README
-rwxr-xr-x    1 user     root        16268 Sep 27 14:41 carwhisperer
-rwxr-xr-x    1 user     root         8782 Oct 18  2005 carwhisperer.c
-rwxr-xr-x    1 user     root         1079 Oct 18  2005 cw_pin.pl
-rwxr-xr-x    1 user     root         1037 Oct 18  2005 cw_scanner
-rwxr-xr-x    1 user     root         1454 Oct 18  2005 hcid.conf
-rwxr-xr-x    1 user     root            0 Oct 18  2005 in.raw
-rwxr-xr-x    1 user     root        88258 Oct 18  2005 message.raw
-rwxr-xr-x    1 user     root       470016 Oct 18  2005 outraw
drwxrwxrwx    2 user     root        32768 Sep 27  2007 samples
-rwxr-xr-x    1 user     root       869280 Oct 18  2005 test.raw
/media/mmc2/bt/carwhisperer-0.2 #
Wall @ 27-09-2007 07:11:12

Очень странно. А как собирали и лог сборки можете показать?

Wall @ 27-09-2007 07:12:55

А, понял. Это на карточке все происходит, на которой FAT?  Скопируйте на флеш и пересоберите там, все будет  работать.

WoolF @ 27-09-2007 07:17:15

Ок, сделаю.
А из-за чего проблема возникает такая?

Wall @ 27-09-2007 07:28:58

FAT не умеет юниксовые пермишены держать. То, что ls -l пишет, что у каждого файла executable бит в пермишенах установлен (это обозначается буквочкой x в выводе) - это показатель этого неумения.

WoolF @ 28-09-2007 03:57:35

Wall, спасибо за информацию, всё заработало. =)

dik @ 04-01-2008 06:58:53

WoolF : попробовал в деле ?

WoolF @ 07-02-2008 16:53:55

dik говорит:

WoolF : попробовал в деле ?

Да, попробовал, всё ок. =)