LinuxForum.Fans
Тема

MTPfs, Fedora 16

Автор: Aquavis 20 сообщений 4921 просмотров
#239068

Здравствуйте. Приобрел Android планшет, Acer a500, но к сожалению он использует протокол MTP для передачи данных через USB с ПК. Нашел информацию как это сделать на Fedora 16, но у меня возникли проблемы с сборкой пакета MTPfs. Устанавливаю все зависимости, с этим проблем нет, но после make install мне выводится следующие:

text

test -z "/usr/local/bin" || /bin/mkdir -p "/usr/local/bin"
/usr/bin/install -c mtpfs '/usr/local/bin'
make[1]: Цель `install-data-am' не требует выполнения команд.
make[1]: Выход из каталога `/home/aquavis/Downloads/mtpfs-1.0'

Я пробовал как mtpfs версии 1.1, так и версии 1.0.

P.S. Мне очень и очень редко приходилось устанавливать программы таким вот способом, поэтому я не очень понимаю как это правильней делается. В какой папке лучше устанавливать (собирать) программы?

#239075

А в обычный режим эта штука не переключается?

#239080

Нет, Android с версией 3.0 и выше (у меня Android 4.0.3) не умеет. Только по MTP. (

#239083
Vascom написал:
По этой инструкции делал http://ololoo.info/66/ ?

Спасибо за ссылку. Но у меня не проходит make install, как описано выше.

#239084

А make проходит нормально? Покажи весь лог.

#239085

У меня собралось всё отлично, даже опакетил.
Могу дать src.rpm или собранный пакет для i686

#239089
Vascom написал:
А make проходит нормально? Покажи весь лог.
text

[root@aquavis mtpfs-1.0]# cd /home/aquavis/Downloads/mtpfs-1.1/ [root@aquavis mtpfs-1.1]# ./configure checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /bin/mkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... yes checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking for style of include used by make... GNU checking dependency style of gcc... gcc3 checking whether gcc and cc understand -c and -o together... yes checking for pkg-config... /usr/bin/pkg-config checking pkg-config is at least version 0.9.0... yes checking for FUSE... yes checking for MTP... yes checking for GLIB... yes checking for MAD... yes configure: creating ./config.status config.status: creating Makefile config.status: executing depfiles commands [root@aquavis mtpfs-1.1]# make gcc -DPACKAGE_NAME=\"MTPfs\" -DPACKAGE_TARNAME=\"mtpfs\" -DPACKAGE_VERSION=\"1.1\" -DPACKAGE_STRING=\"MTPfs\ 1.1\" -DPACKAGE_BUGREPORT=\"Chris\ Debenham\ \<chris@adebenham.com\>\" -DPACKAGE_URL=\"\" -DPACKAGE=\"mtpfs\" -DVERSION=\"1.1\" -DDEBUG=0 -I. -DFUSE_USE_VERSION=22 -D_FILE_OFFSET_BITS=64 -I/usr/include/fuse -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -DUSEMAD -g -O2 -MT mtpfs-mtpfs.o -MD -MP -MF .deps/mtpfs-mtpfs.Tpo -c -o mtpfs-mtpfs.o `test -f 'mtpfs.c' || echo './'`mtpfs.c mv -f .deps/mtpfs-mtpfs.Tpo .deps/mtpfs-mtpfs.Po gcc -DPACKAGE_NAME=\"MTPfs\" -DPACKAGE_TARNAME=\"mtpfs\" -DPACKAGE_VERSION=\"1.1\" -DPACKAGE_STRING=\"MTPfs\ 1.1\" -DPACKAGE_BUGREPORT=\"Chris\ Debenham\ \<chris@adebenham.com\>\" -DPACKAGE_URL=\"\" -DPACKAGE=\"mtpfs\" -DVERSION=\"1.1\" -DDEBUG=0 -I. -DFUSE_USE_VERSION=22 -D_FILE_OFFSET_BITS=64 -I/usr/include/fuse -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -DUSEMAD -g -O2 -MT mtpfs-id3read.o -MD -MP -MF .deps/mtpfs-id3read.Tpo -c -o mtpfs-id3read.o `test -f 'id3read.c' || echo './'`id3read.c mv -f .deps/mtpfs-id3read.Tpo .deps/mtpfs-id3read.Po gcc -g -O2 -o mtpfs mtpfs-mtpfs.o mtpfs-id3read.o -pthread -L/lib64 -lfuse -lrt -ldl -pthread -lgio-2.0 -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lrt -lglib-2.0 -L/lib64 -lmtp -lusb -lmad -lm -lid3tag [root@aquavis mtpfs-1.1]# make install make[1]: Вход в каталог `/home/aquavis/Downloads/mtpfs-1.1' test -z "/usr/local/bin" || /bin/mkdir -p "/usr/local/bin" /usr/bin/install -c mtpfs '/usr/local/bin' make[1]: Цель `install-data-am' не требует выполнения команд. make[1]: Выход из каталога `/home/aquavis/Downloads/mtpfs-1.1' [root@aquavis mtpfs-1.1]#

#239090
Vascom написал:
У меня собралось всё отлично, даже опакетил.
Могу дать src.rpm или собранный пакет для i686

Даже не знаю в чем проблема. У меня x86_64, я помню как то давно пробовал так же поставить и на 32 битную систему, та же история была. (

#239091

А если сделать
make install DESTDIR=/usr/bin

Но вот тебе src.rpm сделай над ним rpmbuild --rebuild и получишь нужный пакет.

#239094
Vascom написал:
А если сделать
make install DESTDIR=/usr/bin

Но вот тебе src.rpm сделай над ним rpmbuild --rebuild и получишь нужный пакет.

Спасибо огромное за src.rpm. Всё заработало. Проблема решена. )

#239221

Обнаружилась другая проблема, устройство монтируется, показывает внутреннюю память и SD-карту, но вот при копировании файлов на устройство выскакивает сообщение что нет прав. Все права присвоены пользователю, пробовал создавать папку для монтирования как в домашней папке так и в /media. Та же проблема и от root. Смотрел опции монтирования, но так ничего и не нашел нужного.

#239224

Покажи вывод ls -la /media/папка_монтирования после монтирования.

#239233

Само монтирование проходит так:

text

[root@aquavis aquavis]# mount a500
Listing raw device(s)
Device 0 (VID=0502 and PID=3341) is a Acer Iconia TAB A500 v2.
   Found 1 device(s):
   Acer: Iconia TAB A500 v2 (0502:3341) @ bus 1, dev 4
Attempting to connect device
Android device detected, assigning default bug flags
Listing File Information on Device with name: (NULL)
[root@aquavis aquavis]# 

Вывод "ls -la" после монтирования:

text

[root@aquavis aquavis]# ls -la /home/aquavis/a500 итого 4 drwxrwxrwx. 2 root root 0 янв. 1 1970 . drwx------. 42 aquavis aquavis 4096 марта 21 08:23 .. drwxrwxrwx. 2 root root 0 янв. 1 1970 Internal Storage drwxrwxrwx. 2 root root 0 янв. 1 1970 Playlists drwxrwxrwx. 2 root root 0 янв. 1 1970 SD Card [root@aquavis aquavis]#

#239234

А ls -la для SD Card?
Пока всё выглядит нормально. Покажи что происходит, когда копируешь через cp. И соответственно ls -la для того каталога, куда копируешь.

#239239

Как то странно получается, я тут перепутал "\" с "/", он показал:

text

[root@aquavis aquavis]# ls -la /home/aquavis/a500/SD/ card ls: невозможно получить доступ к card: Нет такого файла или каталога /home/aquavis/a500/SD/: ls: невозможно получить доступ к /home/aquavis/a500/SD/com.gameloft.android.ANMP.GloftM3HM: Нет такого файла или каталога ls: невозможно получить доступ к /home/aquavis/a500/SD/VKVideoMP3: Нет такого файла или каталога ls: невозможно получить доступ к /home/aquavis/a500/SD/LOST.DIR: Нет такого файла или каталога ls: невозможно получить доступ к /home/aquavis/a500/SD/DCIM: Нет такого файла или каталога ls: невозможно получить доступ к /home/aquavis/a500/SD/FLEXREAPER-R9-AR-ABD-FINAL.zip: Нет такого файла или каталога ls: невозможно получить доступ к /home/aquavis/a500/SD/FLEXREAPER-R10-ICS-0.022.00.zip: Нет такого файла или каталога итого 0 drwxrwxrwx. 2 root root 0 янв. 1 1970 . drwxrwxrwx. 2 root root 0 янв. 1 1970 .. d?????????? ? ? ? ? ? com.gameloft.android.ANMP.GloftM3HM d?????????? ? ? ? ? ? DCIM -?????????? ? ? ? ? ? FLEXREAPER-R10-ICS-0.022.00.zip -?????????? ? ? ? ? ? FLEXREAPER-R9-AR-ABD-FINAL.zip d?????????? ? ? ? ? ? LOST.DIR d?????????? ? ? ? ? ? VKVideoMP3

То есть он что то увидел всё же, но когда вводишь всё правильно:

text

[root@aquavis aquavis]# ls -la /home/aquavis/a500/SD\ card итого 0 drwxrwxrwx. 2 root root 0 янв. 1 1970 . drwxrwxrwx. 2 root root 0 янв. 1 1970 .. [root@aquavis aquavis]#

#239248

Сделай

text
ls -la "/home/aquavis/a500/SD Card"

К тому же "SD Card" и "SD card" - это совершенно разные вещи.

#239254
Vascom написал:
Сделай
text
ls -la "/home/aquavis/a500/SD Card"

К тому же "SD Card" и "SD card" - это совершенно разные вещи.

Да, что то не обратил внимание.

text

[root@aquavis aquavis]# ls -la "/home/aquavis/a500/SD Card"
итого 815826
drwxrwxrwx. 2 root root         0 янв.   1  1970 .
drwxrwxrwx. 2 root root         0 янв.   1  1970 ..
drwxrwxrwx. 2 root root         0 янв.   1  1970 com.gameloft.android.ANMP.GloftM3HM
drwxrwxrwx. 2 root root         0 янв.   1  1970 DCIM
-rwxrwxrwx. 1 root root 410480551 марта 20 20:30 FLEXREAPER-R10-ICS-0.022.00.zip
-rwxrwxrwx. 1 root root 424924908 марта 14 18:23 FLEXREAPER-R9-AR-ABD-FINAL.zip
drwxrwxrwx. 2 root root         0 янв.   1  1970 LOST.DIR
drwxrwxrwx. 2 root root         0 янв.   1  1970 VKVideoMP3
[root@aquavis aquavis]# 

Попробовал небольшой файл переместить "sc.jpg" весом 65Кб, переместился нормально, попробовал zip файл переместить весом 391Мб. Вот что получилось:

text

[root@aquavis aquavis]# cp /home/aquavis/sc.jpg "/home/aquavis/a500/SD Card"
[root@aquavis aquavis]# cd "/home/aquavis/a500/SD Card"
[root@aquavis SD Card]# ls
com.gameloft.android.ANMP.GloftM3HM  DCIM  FLEXREAPER-R10-ICS-0.022.00.zip  FLEXREAPER-R9-AR-ABD-FINAL.zip  LOST.DIR  sc.jpg  VKVideoMP3
[root@aquavis SD Card]# cp /home/aquavis/FLEXREAPER-R10-ICS-0.022.00.zip "/home/aquavis/a500/SD Card"
cp: не удалось выполнить stat для «/home/aquavis/a500/SD Card/FLEXREAPER-R10-ICS-0.022.00.zip»: Программа вызвала сброс соединения
[root@aquavis SD Card]#

После этой манипуляции папка a500 вообще пропала. Может проблема в самом пакете mtpfs?

#239255

Ну хз. Либо этот mtpfs столь древний и кривой, либо... Надо искать пути обхода подключения по MTP. Например подключаться через сетевое соединение (на андроиде для этого полно программ).

Войдите или зарегистрируйтесь, чтобы ответить.