DaemonForums  

Go Back   DaemonForums > FreeBSD > FreeBSD Ports and Packages

FreeBSD Ports and Packages Installation and upgrading of ports and packages on FreeBSD.

Reply
 
Thread Tools Display Modes
  #1   (View Single Post)  
Old 22nd May 2009
Har_Don Har_Don is offline
New User
 
Join Date: May 2008
Posts: 6
Question mp3fs configure fails (solved)

Hi.

I'm trying to install mp3fs on a FreeBSD 7.2 system.

The problem is it doesn't seem to pick up that lame.h is installed under /usr/local/include/lame:

Code:
me@mybox$ /build/mp3fs-0.13 ./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... config/install-sh -c -d
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking build system type... i386-unknown-freebsd7.2
checking host system type... i386-unknown-freebsd7.2
checking for style of include used by make... GNU
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables... 
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 dependency style of gcc... gcc3
checking for a sed that does not truncate output... /usr/local/bin/gsed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 196608
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... no
checking for /usr/bin/ld option to reload object files... -r
checking how to recognize dependent libraries... pass_all
checking for ar... ar
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... freebsd7.2 ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking for gcc... (cached) gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ISO C89... (cached) none needed
checking dependency style of gcc... (cached) gcc3
checking lame/lame.h usability... no
checking lame/lame.h presence... no
checking for lame/lame.h... no
configure: error: You Must install liblame-dev to build mp3fs
I've found this post, which seems to deal with a similar problem, but i doesn't work for me:

Code:
>> ~/build/mp3fs-0.13 ./configure --extra-cflags=-I/usr/local/include/lame
configure: error: unrecognized option: --extra-cflags=-I/usr/local/include/lame
Try `./configure --help' for more information.
Neither the "--extra-cflags" nor the "--extra-ldflags" option exist.

./configure --help:
Code:
`configure' configures this package to adapt to many kinds of systems.

Usage: ./configure [OPTION]... [VAR=VALUE]...

To assign environment variables (e.g., CC, CFLAGS...), specify them as
VAR=VALUE.  See below for descriptions of some of the useful variables.

Defaults for the options are specified in brackets.

Configuration:
  -h, --help              display this help and exit
      --help=short        display options specific to this package
      --help=recursive    display the short help of all the included packages
  -V, --version           display version information and exit
  -q, --quiet, --silent   do not print `checking...' messages
      --cache-file=FILE   cache test results in FILE [disabled]
  -C, --config-cache      alias for `--cache-file=config.cache'
  -n, --no-create         do not create output files
      --srcdir=DIR        find the sources in DIR [configure dir or `..']

Installation directories:
  --prefix=PREFIX         install architecture-independent files in PREFIX
			  [/usr/local]
  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
			  [PREFIX]

By default, `make install' will install all the files in
`/usr/local/bin', `/usr/local/lib' etc.  You can specify
an installation prefix other than `/usr/local' using `--prefix',
for instance `--prefix=$HOME'.

For better control, use the options below.

Fine tuning of the installation directories:
  --bindir=DIR           user executables [EPREFIX/bin]
  --sbindir=DIR          system admin executables [EPREFIX/sbin]
  --libexecdir=DIR       program executables [EPREFIX/libexec]
  --sysconfdir=DIR       read-only single-machine data [PREFIX/etc]
  --sharedstatedir=DIR   modifiable architecture-independent data [PREFIX/com]
  --localstatedir=DIR    modifiable single-machine data [PREFIX/var]
  --libdir=DIR           object code libraries [EPREFIX/lib]
  --includedir=DIR       C header files [PREFIX/include]
  --oldincludedir=DIR    C header files for non-gcc [/usr/include]
  --datarootdir=DIR      read-only arch.-independent data root [PREFIX/share]
  --datadir=DIR          read-only architecture-independent data [DATAROOTDIR]
  --infodir=DIR          info documentation [DATAROOTDIR/info]
  --localedir=DIR        locale-dependent data [DATAROOTDIR/locale]
  --mandir=DIR           man documentation [DATAROOTDIR/man]
  --docdir=DIR           documentation root [DATAROOTDIR/doc/PACKAGE]
  --htmldir=DIR          html documentation [DOCDIR]
  --dvidir=DIR           dvi documentation [DOCDIR]
  --pdfdir=DIR           pdf documentation [DOCDIR]
  --psdir=DIR            ps documentation [DOCDIR]

Program names:
  --program-prefix=PREFIX            prepend PREFIX to installed program names
  --program-suffix=SUFFIX            append SUFFIX to installed program names
  --program-transform-name=PROGRAM   run sed PROGRAM on installed program names

System types:
  --build=BUILD     configure for building on BUILD [guessed]
  --host=HOST       cross-compile to build programs to run on HOST [BUILD]

Optional Features:
  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
  --enable-shared[=PKGS]  build shared libraries [default=yes]
  --enable-static[=PKGS]  build static libraries [default=yes]
  --enable-fast-install[=PKGS]
                          optimize for fast installation [default=yes]
  --disable-dependency-tracking  speeds up one-time build
  --enable-dependency-tracking   do not reject slow dependency extractors
  --disable-libtool-lock  avoid locking (might break parallel builds)
  --enable-debug          Enable debug output
  --disable-largefile     omit support for large files

Optional Packages:
  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
  --with-pic              try to use only PIC/non-PIC objects [default=use
                          both]
  --with-gnu-ld           assume the C compiler uses GNU ld [default=no]

Some influential environment variables:
  CC          C compiler command
  CFLAGS      C compiler flags
  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
              nonstandard directory <lib dir>
  LIBS        libraries to pass to the linker, e.g. -l<library>
  CPPFLAGS    C/C++/Objective C preprocessor flags, e.g. -I<include dir> if
              you have headers in a nonstandard directory <include dir>
  CPP         C preprocessor
  PKG_CONFIG  path to pkg-config utility
  fuse_CFLAGS C compiler flags for fuse, overriding pkg-config
  fuse_LIBS   linker flags for fuse, overriding pkg-config
  id3tag_CFLAGS
              C compiler flags for id3tag, overriding pkg-config
  id3tag_LIBS linker flags for id3tag, overriding pkg-config

Use these variables to override the choices made by `configure' or to help
it to find libraries and programs with nonstandard names/locations.
doesn't help either.

Does anyone know how I can make it recognize the lame.h in /usr/local/include/lame?

Code:
>> /usr/local/include/lame ls -l
total 1M
-r--r--r-- 1 root wheel 44200 2009-02-06 18:59 lame.h
A very special thanks to someone who knows

Last edited by Har_Don; 27th November 2009 at 04:33 AM. Reason: solved
Reply With Quote
  #2   (View Single Post)  
Old 22nd May 2009
Carpetsmoker's Avatar
Carpetsmoker Carpetsmoker is offline
Real Name: Martin
Tcpdump Spy
 
Join Date: Apr 2008
Location: Netherlands
Posts: 2,243
Default

Try:
% ./configure CFLAGS="-I/usr/local/include" LDFLAGS="-L/usr/local/lib"

As a sidenote, if you get it working, consider creating a port for it.
__________________
UNIX was not designed to stop you from doing stupid things, because that would also stop you from doing clever things.
Reply With Quote
  #3   (View Single Post)  
Old 22nd May 2009
Har_Don Har_Don is offline
New User
 
Join Date: May 2008
Posts: 6
Default

Wow, for a second there I thought it worked; it went through the configure-process, but then it failed when I issued make (and gmake).

Code:
>> ~/build/mp3fs-0.13 gmake
Making all in src
gmake[1]: Entering directory `/usr/home/jon/build/mp3fs-0.13/src'
gcc -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"mp3fs\" -DVERSION=\"0.13\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -I.    -D_FILE_OFFSET_BITS=64 -I/usr/local/include/fuse    -I/usr/local/include -MT mp3fs-mp3fs.o -MD -MP -MF .deps/mp3fs-mp3fs.Tpo -c -o mp3fs-mp3fs.o `test -f 'mp3fs.c' || echo './'`mp3fs.c
In file included from /usr/local/include/fuse/fuse.h:26,
                 from mp3fs.c:25:
/usr/local/include/fuse/fuse_common.h:212:8: error: #error On FreeBSD API version 25 or greater must be used
mp3fs.c:33:24: error: sys/statfs.h: No such file or directory
mp3fs.c:198: warning: 'struct statfs' declared inside parameter list
mp3fs.c:198: warning: its scope is only this definition or declaration, which is probably not what you want
mp3fs.c:228: error: variable 'mp3fs_ops' has initializer but incomplete type
mp3fs.c:229: error: unknown field 'getattr' specified in initializer
mp3fs.c:229: warning: excess elements in struct initializer
mp3fs.c:229: warning: (near initialization for 'mp3fs_ops')
mp3fs.c:230: error: unknown field 'readlink' specified in initializer
mp3fs.c:230: warning: excess elements in struct initializer
mp3fs.c:230: warning: (near initialization for 'mp3fs_ops')
mp3fs.c:231: error: unknown field 'readdir' specified in initializer
mp3fs.c:231: warning: excess elements in struct initializer
mp3fs.c:231: warning: (near initialization for 'mp3fs_ops')
mp3fs.c:232: error: unknown field 'open' specified in initializer
mp3fs.c:232: warning: excess elements in struct initializer
mp3fs.c:232: warning: (near initialization for 'mp3fs_ops')
mp3fs.c:233: error: unknown field 'read' specified in initializer
mp3fs.c:233: warning: excess elements in struct initializer
mp3fs.c:233: warning: (near initialization for 'mp3fs_ops')
mp3fs.c:234: error: unknown field 'statfs' specified in initializer
mp3fs.c:234: warning: excess elements in struct initializer
mp3fs.c:234: warning: (near initialization for 'mp3fs_ops')
mp3fs.c:235: error: unknown field 'release' specified in initializer
mp3fs.c:235: warning: excess elements in struct initializer
mp3fs.c:235: warning: (near initialization for 'mp3fs_ops')
mp3fs.c: In function 'main':
mp3fs.c:272: error: invalid application of 'sizeof' to incomplete type 'struct fuse_operations_compat22' 
gmake[1]: *** [mp3fs-mp3fs.o] Error 1
gmake[1]: Leaving directory `/usr/home/jon/build/mp3fs-0.13/src'
gmake: *** [all-recursive] Error 1
Same error with either make or gmake.

I then changed line 25 in src/mp3fs.c:
Code:
#define FUSE_USE_VERSION 22
=>
#define FUSE_USE_VERSION 25
ran make clean and the configure-line again,
but that resulted in this error:
Code:
>> ~/build/mp3fs-0.13 gmake
Making all in src
gmake[1]: Entering directory `/usr/home/jon/build/mp3fs-0.13/src'
gcc -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"mp3fs\" -DVERSION=\"0.13\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -I.    -D_FILE_OFFSET_BITS=64 -I/usr/local/include/fuse    -I/usr/local/include -MT mp3fs-mp3fs.o -MD -MP -MF .deps/mp3fs-mp3fs.Tpo -c -o mp3fs-mp3fs.o `test -f 'mp3fs.c' || echo './'`mp3fs.c
mp3fs.c:33:24: error: sys/statfs.h: No such file or directory
mp3fs.c: In function 'mp3fs_read':
mp3fs.c:189: warning: cast to pointer from integer of different size
mp3fs.c: At top level:
mp3fs.c:198: warning: 'struct statfs' declared inside parameter list
mp3fs.c:198: warning: its scope is only this definition or declaration, which is probably not what you want
mp3fs.c: In function 'mp3fs_release':
mp3fs.c:219: warning: cast to pointer from integer of different size
mp3fs.c: At top level:
mp3fs.c:234: warning: initialization from incompatible pointer type
gmake[1]: *** [mp3fs-mp3fs.o] Error 1
gmake[1]: Leaving directory `/usr/home/jon/build/mp3fs-0.13/src'
gmake: *** [all-recursive] Error 1
statfs ibcs2
Is this something I must compile into the kernel or as a module?
Code:
>> ~/build/mp3fs-0.13 find /* -name "*statfs.h*" -print
/usr/src/sys/i386/ibcs2/ibcs2_statfs.h
Seems like I might have to try that, and see what happens.

As for the making of a port, this is something I've never done before, and this looks like a bit more than a "Quick Port"
But it would definately be interesting to try. I can imagine quite a few people would find mp3fs useful.

The reason I am trying to install it is for use with firefly media server. Playback in iTunes is really shabby with wifi and flacs because firefly has to convert them into large .wav-files With mp3fs I could just have firefly read the mp3fs mountpoint instead.

Anyway, thanks much for helping, Carpetsmoker!
Special Thanks.

*edit* btw the system is a 7.2-RELEASE. with a custom kernel and all that.

Last edited by Har_Don; 22nd May 2009 at 11:23 PM. Reason: adding system info
Reply With Quote
  #4   (View Single Post)  
Old 23rd May 2009
BSDKaffee's Avatar
BSDKaffee BSDKaffee is offline
Real Name: Jason Hale
Coffee Addict
 
Join Date: May 2008
Location: Wintersville, Ohio
Posts: 212
Default

Quote:
Originally Posted by Har_Don View Post
statfs ibcs2
Is this something I must compile into the kernel or as a module?
Code:
>> ~/build/mp3fs-0.13 find /* -name "*statfs.h*" -print
/usr/src/sys/i386/ibcs2/ibcs2_statfs.h
Seems like I might have to try that, and see what happens.
The statfs method needs to be converted from struct statfs <sys/statfs.h> (Linux) to struct statvfs <sys/statvfs.h> (POSIX). You may want to look at this site: http://fuse4bsd.creo.hu/doc/html_chu...uickstart.html. Long story short...looks like some porting is required.

Last edited by BSDKaffee; 23rd May 2009 at 08:44 AM.
Reply With Quote
  #5   (View Single Post)  
Old 23rd May 2009
Har_Don Har_Don is offline
New User
 
Join Date: May 2008
Posts: 6
Default

Hmm, ok. Thanks for the hints.
I may look into this later, but I don't have the time right now. Looks like I'll need to learn some new stuff to get this working too; do some reading.
Reply With Quote
  #6   (View Single Post)  
Old 27th November 2009
Har_Don Har_Don is offline
New User
 
Join Date: May 2008
Posts: 6
Thumbs up Finally got it working

Sorry to bring up such an old thread, but I got this working.

I used the patch from the macports mp3fs

Code:
>> ~/build/mp3fs/mp3fs-0.13 : patch -R -p1 < ../patch-mp3fs.diff 
Hmm...  Looks like a unified diff to me...
The text leading up to this was:
--------------------------
|diff -u -r mp3fs-0.13/src/class.h mp3fs-0.13.org/src/class.h
|--- mp3fs-0.13/src/class.h     2009-02-03 18:20:27.000000000 +0100
|+++ mp3fs-0.13.org/src/class.h 2007-11-15 06:34:32.000000000 +0100
--------------------------
Patching file src/class.h using Plan A...
Hunk #1 succeeded at 171.
Hunk #2 succeeded at 209.
Hunk #3 succeeded at 233.
Hunk #4 succeeded at 348.
Hmm...  The next patch looks like a unified diff to me...
The text leading up to this was:
--------------------------
|diff -u -r mp3fs-0.13/src/mp3fs.c mp3fs-0.13.org/src/mp3fs.c
|--- mp3fs-0.13/src/mp3fs.c     2009-02-03 13:55:02.000000000 +0100
|+++ mp3fs-0.13.org/src/mp3fs.c 2008-12-14 06:17:35.000000000 +0100
--------------------------
Patching file src/mp3fs.c using Plan A...
Hunk #1 succeeded at 20.
Hunk #2 succeeded at 30.
Hunk #3 succeeded at 56.
Hunk #4 succeeded at 90.
Hunk #5 succeeded at 161.
Hunk #6 succeeded at 195.
Hunk #7 succeeded at 204.
Hunk #8 succeeded at 269.
Hmm...  The next patch looks like a unified diff to me...
The text leading up to this was:
--------------------------
|diff -u -r mp3fs-0.13/src/transcode.c mp3fs-0.13.org/src/transcode.c
|--- mp3fs-0.13/src/transcode.c 2009-02-03 18:25:55.000000000 +0100
|+++ mp3fs-0.13.org/src/transcode.c     2008-12-14 06:24:21.000000000 +0100
--------------------------
Patching file src/transcode.c using Plan A...
Hunk #1 succeeded at 24.
Hunk #2 succeeded at 159.
done
>> ~/build/mp3fs/mp3fs-0.13 :
Then it works!
Attached Files
File Type: diff patch-mp3fs.diff (3.7 KB, 105 views)

Last edited by Har_Don; 27th November 2009 at 05:50 AM. Reason: attached patch from macports
Reply With Quote
Reply

Tags
audio, fusefs, mp3, mp3fs

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
How to configure VSFTPD? Sunsawe FreeBSD Ports and Packages 8 26th September 2009 02:28 PM
how to configure ipfw with 4 modems??? m4st3rcr4zy FreeBSD General 0 13th February 2009 06:26 AM
configure clock in xfce delboy FreeBSD General 7 3rd September 2008 06:36 PM
configure iwi0 milo974 OpenBSD General 1 4th August 2008 12:27 PM
Ath0 + wpa, how configure? nesca2in1 FreeBSD General 10 2nd July 2008 04:12 AM


All times are GMT. The time now is 07:13 AM.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Content copyright © 2007-2010, the authors
Daemon image copyright ©1988, Marshall Kirk McKusick