Subversion Repositories freemyipod

Rev

Rev 784 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 784 Rev 800
Line 3... Line 3...
3
  / _ \ '_ ` _ \| |  | | | | |_) |  _| | |_  \___ \ 
3
  / _ \ '_ ` _ \| |  | | | | |_) |  _| | |_  \___ \ 
4
 |  __/ | | | | | |___ |_| |  _ <| |___|  _|  ___) |
4
 |  __/ | | | | | |___ |_| |  _ <| |___|  _|  ___) |
5
  \___|_| |_| |_|\____\___/|_| \_\_____|_|   |____/ 
5
  \___|_| |_| |_|\____\___/|_| \_\_____|_|   |____/ 
6
 
6
 
7
emCOREFS is a FUSE-based filesystem that uses emCORE's Monitor API
7
emCOREFS is a FUSE-based filesystem that uses emCORE's Monitor API
8
to provide communication with device's FS. It is still in very early
8
to provide communication with device's FS. It is not yet complete,
9
state, but some features (directory listing, reading files) are done.
9
but most features are done. It runs on both Linux and Mac OS X.
10
 
10
 
11
For communication with the device, this application uses libusb 1.0.
11
For communication with the device, this application uses libusb 1.0.
12
 
12
 
13
Building
13
Building
14
--------
14
--------
15
You need:
15
You need:
16
1. GCC/Make
16
1. GCC/Make (Xcode on OS X)
17
2. pkg-config
17
2. pkg-config
18
3. libusb >= 1.0
18
3. libusb >= 1.0
19
4. libfuse >= 2.8
19
4. libfuse >= 2.8 (or fuse4x on x64 OS X)
20
5. maybe other packages
20
5. all dependencies of the above
21
 
21
 
22
Compiling:
22
Compiling:
23
make - standard build, no debug messages, only fatal errors on
23
make - standard build, no debug messages, only fatal errors on
24
    startup are shown.
24
    startup are shown.
-
 
25
 
25
make debug - debug build, some debug/error messages are shown.
26
make debug - debug build, some debug/error messages are shown.
26
    libusb debug messages are enabled, too.
27
    libusb debug messages are enabled, too.
27
 
28
 
-
 
29
You can prefix any of these with
-
 
30
CFLAGS="-DDEBUG_USB_PACKETS"
-
 
31
in order to have a dump of the usb traffic that's being sent and received.
-
 
32
 
28
Testing:
33
Testing:
29
make test - run the build without FUSE debugging messages, going
34
make test - run the build without FUSE debugging messages, going
30
    into the background if it connects to the device successfully.
35
    into the background if it connects to the device successfully.
-
 
36
 
31
make testdebug - run the build in the foreground, showing FUSE debug
37
make testdebug - run the build in the foreground, showing FUSE debug
32
    messages in the terminal.
38
    messages in the terminal.
33
 
39
 
34
Running
40
Running
35
-------
41
-------
36
You need FUSE >= 2.8 installed.
42
You need FUSE >= 2.8 installed. (or fuse4x on x64 OS X)
37
Currently only tested on Linux (Ubuntu 11.04 in my case). Maybe an
43
Currently tested on:
38
OSX-compatible version would appear at some point.
44
- Linux (Ubuntu 11.04 x86)
39
Starting: ./emcorefs <mountpoint>
45
- Mac OS X (10.6.8 x64)
40
Stopping: fusermount -u <mountpoint as seen in /etc/mtab>
-
 
41
 
46
 
-
 
47
Starting: ./emcorefs <mountpoint>
-
 
48
Stopping: fusermount -u <mountpoint as seen in /etc/mtab> (Linux)
-
 
49
          diskutil unmount <mountpoint as seen in /etc/mtab> (OS X)
42
Known bugs/issues
50
Known bugs/issues
43
-----------------
51
-----------------
44
* Write support not tested very well.
52
* Write support not tested very well.
45
* Running FUSE with multithreading breaks file reading because of
53
* Running FUSE with multithreading breaks file reading because of
46
    the way these are implemented on emCORE's side.
54
    the way these are implemented on emCORE's side.