Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

configure isn't finding locally installed libftdi1 #32

Open
GoogleCodeExporter opened this issue Mar 3, 2016 · 2 comments
Open

configure isn't finding locally installed libftdi1 #32

GoogleCodeExporter opened this issue Mar 3, 2016 · 2 comments

Comments

@GoogleCodeExporter
Copy link

What steps will reproduce the problem?
1. Build and install libftdi1 to /home/cmorgan/local_install
2. Run configure in libmpsse with:
./configure --prefix=/home/cmorgan/local_install CFLAGS="-I 
/home/cmorgan/local_install/include -fPIC" LDFLAGS="-L 
/home/cmorgan/local_install/lib64"
3. Output is:

checking for GNU libc compatible malloc... yes
checking libftdi1/ftdi.h usability... yes
checking libftdi1/ftdi.h presence... no
configure: WARNING: libftdi1/ftdi.h: accepted by the compiler, rejected by the 
preprocessor!
configure: WARNING: libftdi1/ftdi.h: proceeding with the compiler's result
checking for libftdi1/ftdi.h... yes
checking for ftdi_init in -lftdi1... yes
checking /usr/include/python2.7/Python.h usability... yes
checking /usr/include/python2.7/Python.h presence... yes
checking for /usr/include/python2.7/Python.h... yes
configure: creating ./config.status
config.status: creating Makefile


I looked in config.log:

configure:3355: gcc -c -Wall -fPIC -fno-strict-aliasing -I 
/home/cmorgan/local_install
configure:3355: $? = 0
configure:3355: result: yes
configure:3355: checking libftdi1/ftdi.h presence
configure:3355: gcc -E  conftest.c
conftest.c:21:27: fatal error: libftdi1/ftdi.h: No such file or directory
 #include <libftdi1/ftdi.h>
                           ^
compilation terminated.

I have no idea why CFLAGS isn't being used in the compile check. Is there some 
way to specify the path to libftdi1 via a configure option?

Original issue reported on code.google.com by [email protected] on 13 Sep 2013 at 8:18

@GoogleCodeExporter
Copy link
Author

Looking at this again because of another build related thing and still can't 
figure out why the compiler isn't finding the header file. Although everything 
else looks fine. Its weird....

Original comment by [email protected] on 14 Oct 2013 at 1:09

@GoogleCodeExporter
Copy link
Author

On OS X version 10.8.5 with a fresh libftdi1 installed from MacPorts I get 
similar issues. The library is installed by MacPorts in the (default) location 
"/opt/local" (note: is different from "/usr/local").

The following files are succesfully installed by MacPorts:
------------------------------------------
$ port contents libftdi1
------------------------------------------
  /opt/local/bin/ftdi_eeprom
  /opt/local/bin/libftdi1-config
  /opt/local/include/libftdi1/ftdi.h
  /opt/local/lib/cmake/libftdi1/LibFTDI1Config.cmake
  /opt/local/lib/cmake/libftdi1/UseLibFTDI1.cmake
  /opt/local/lib/libftdi1.2.1.0.dylib
  /opt/local/lib/libftdi1.2.dylib
  /opt/local/lib/libftdi1.a
  /opt/local/lib/libftdi1.dylib
  /opt/local/lib/pkgconfig/libftdi1.pc
  /opt/local/lib/pkgconfig/libftdipp1.pc
------------------------------------------

Surprisingly, the following ./configure trials all fail the same way:
------------------------------------------
$ ./configure
$ ./configure --prefix=/opt/local
$ ./configure --includedir=/opt/local/include
------------------------------------------
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 how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /opt/local/bin//grep
checking for egrep... /opt/local/bin//grep -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 size_t... yes
checking for stdlib.h... (cached) yes
checking for GNU libc compatible malloc... yes
checking libftdi1/ftdi.h usability... no
checking libftdi1/ftdi.h presence... no
checking for libftdi1/ftdi.h... no
checking ftdi.h usability... no
checking ftdi.h presence... no
checking for ftdi.h... no
error: missing libftdi header files

However, it does work when I use the following additional directives:
------------------------------------------
$ ./configure LDFLAGS=-L/opt/local/lib CPPFLAGS=-I/opt/local/include 
CFLAGS=-I/opt/local/include
------------------------------------------
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 how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /opt/local/bin//grep
checking for egrep... /opt/local/bin//grep -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 size_t... yes
checking for stdlib.h... (cached) yes
checking for GNU libc compatible malloc... yes
checking libftdi1/ftdi.h usability... yes
checking libftdi1/ftdi.h presence... yes
checking for libftdi1/ftdi.h... yes
checking for ftdi_init in -lftdi1... yes
checking /usr/include/python2.7/Python.h usability... yes
checking /usr/include/python2.7/Python.h presence... yes
checking for /usr/include/python2.7/Python.h... yes
configure: creating ./config.status
config.status: creating Makefile
------------------------------------------
$ make
------------------------------------------
gcc -Wall -fPIC -fno-strict-aliasing -I/opt/local/include -lftdi1 
-L/opt/local/lib -DLIBFTDI1=1 -c support.c
clang: warning: -lftdi1: 'linker' input unused
clang: warning: argument unused during compilation: '-L/opt/local/lib'
support.c:121:15: warning: implicitly declaring library function 'malloc' with 
type 'void *(unsigned long)'
        buf = malloc(total_size);
              ^
support.c:121:15: note: please include the header <stdlib.h> or explicitly 
provide a declaration for 'malloc'
1 warning generated.
gcc -Wall -fPIC -fno-strict-aliasing -I/opt/local/include -lftdi1 
-L/opt/local/lib -DLIBFTDI1=1 -c mpsse.c
clang: warning: -lftdi1: 'linker' input unused
clang: warning: argument unused during compilation: '-L/opt/local/lib'
gcc -Wall -fPIC -fno-strict-aliasing -I/opt/local/include -lftdi1 
-L/opt/local/lib -DLIBFTDI1=1 -c fast.c
clang: warning: -lftdi1: 'linker' input unused
clang: warning: argument unused during compilation: '-L/opt/local/lib'
gcc -Wall -fPIC -fno-strict-aliasing -I/opt/local/include -shared 
-Wl,-install_name,libmpsse.so mpsse.o fast.o support.o \
        -o libmpsse.so -lftdi1 -L/opt/local/lib
ar rcs libmpsse.a mpsse.o fast.o support.o
gcc -Wall -fPIC -fno-strict-aliasing -I/opt/local/include -lftdi1 
-L/opt/local/lib -DSWIGPYTHON -DLIBFTDI1=1 -c support.c
clang: warning: -lftdi1: 'linker' input unused
clang: warning: argument unused during compilation: '-L/opt/local/lib'
support.c:121:15: warning: implicitly declaring library function 'malloc' with 
type 'void *(unsigned long)'
        buf = malloc(total_size);
              ^
support.c:121:15: note: please include the header <stdlib.h> or explicitly 
provide a declaration for 'malloc'
1 warning generated.
gcc -Wall -fPIC -fno-strict-aliasing -I/opt/local/include -lftdi1 
-L/opt/local/lib -DSWIGPYTHON -DLIBFTDI1=1 -c mpsse.c
clang: warning: -lftdi1: 'linker' input unused
clang: warning: argument unused during compilation: '-L/opt/local/lib'
/opt/local/bin//swig -python mpsse.i
gcc -Wall -fPIC -fno-strict-aliasing -I/opt/local/include -c  -DLIBFTDI1=1 
mpsse_wrap.c  -I/usr/include/python2.7
gcc -Wall -fPIC -fno-strict-aliasing -I/opt/local/include -shared -framework 
Python mpsse_wrap.o mpsse.o support.o \
        -o _pylibmpsse.so -lftdi1 -L/opt/local/lib -I/usr/include/python2.7
------------------------------------------

Original comment by verdult on 19 Aug 2014 at 7:55

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant