libftdi Archives

Subject: Re: RFC: Remove autoconf support in libftdi-1.x

From: Xiaofan Chen <xiaofanc@xxxxxxxxx>
To: libftdi@xxxxxxxxxxxxxxxxxxxxxxx
Date: Sat, 10 Jul 2010 17:49:54 +0800
On Sat, Jul 10, 2010 at 8:56 AM, Xiaofan Chen <xiaofanc@xxxxxxxxx> wrote:

>> Objections?
>
> The only thing is how to build libftdi-1.0 under Windows,
> with either Cygwin or MinGW using CMake. I have not
> figured out how to do that myself.
>
> Cross-compiling under Linux works perfectly using
> MinGW (32bit MinGW or 64bit MinGW-w64). Since
> I use both Linux and Windows, this is okay for me.
> But I think some libftdi-1.0 users may not use
> Linux.
>
> So I do not really have an objection. I am not a fan of
> auto-tools myself. But rather I hope the CMake experts
> here can provide an instruction on Cygwin/MinGW under
> Windows.

I just tried again under Cygwin. Actually I am getting
quite close. The only thing failed is the shared dll and dll.a.

mcuee@AcerPC ~/mcu/libftdi/libftdi1/libftdi-1.0/build
$ cmake .. -DEXAMPLES:option=OFF -DFTDIPP:option=OFF
-DPYTHON_BINDINGS:option=OFF -DEXAMPLES:option=ON
-DDOCUMENTATION:option=OFF
-- The C compiler identification is GNU
-- The CXX compiler identification is GNU
-- Check for working C compiler: /usr/bin/gcc.exe
-- Check for working C compiler: /usr/bin/gcc.exe -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++.exe
-- Check for working CXX compiler: /usr/bin/c++.exe -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Build type: Debug
-- checking for module 'libusb-1.0'
--   found libusb-1.0, version 1.0.8
-- Found LIBUSB: /usr/local/bin/cygusb-1.0.dll
-- Boost version: 1.33.1
-- Found the following Boost libraries:
-- Not building libftdi++
-- Found PythonLibs: /lib/python2.5/config/libpython2.5.dll.a
-- Not building python bindings
-- Building example programs.
-- Found Doxygen: /usr/bin/doxygen.exe
-- Not generating API documentation
-- Configuring done
-- Generating done
-- Build files have been written to:
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/build


mcuee@AcerPC ~/mcu/libftdi/libftdi1/libftdi-1.0/build
$ make -i
Scanning dependencies of target ftdi
[  7%] Building C object src/CMakeFiles/ftdi.dir/ftdi.c.o
[ 15%] Building C object src/CMakeFiles/ftdi.dir/ftdi_stream.c.o
Linking C shared library cygftdi-1.17.0.dll
CMakeFiles/ftdi.dir/ftdi.c.o: In function `ftdi_usb_close_internal':
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:64: undefined reference
to `_libusb_close'
CMakeFiles/ftdi.dir/ftdi.c.o: In function `ftdi_deinit':
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:195: undefined reference
 to `_libusb_exit'
CMakeFiles/ftdi.dir/ftdi.c.o: In function `ftdi_usb_find_all':
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:247: undefined reference
 to `_libusb_init'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:250: undefined reference
 to `_libusb_get_device_list'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:260: undefined reference
 to `_libusb_get_device_descriptor'
CMakeFiles/ftdi.dir/ftdi.c.o: In function `ftdi_usb_get_strings':
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:343: undefined reference
 to `_libusb_open'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:346: undefined reference
 to `_libusb_get_device_descriptor'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:351: undefined reference
 to `_libusb_get_string_descriptor_ascii'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:360: undefined reference
 to `_libusb_get_string_descriptor_ascii'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:369: undefined reference
 to `_libusb_get_string_descriptor_ascii'
CMakeFiles/ftdi.dir/ftdi.c.o: In function `_ftdi_determine_max_packet_size':
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:405: undefined reference
 to `_libusb_get_device_descriptor'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:408: undefined reference
 to `_libusb_get_config_descriptor'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:427: undefined reference
 to `_libusb_free_config_descriptor'
CMakeFiles/ftdi.dir/ftdi.c.o: In function `ftdi_usb_open_dev':
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:458: undefined reference
 to `_libusb_open'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:461: undefined reference
 to `_libusb_get_device_descriptor'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:464: undefined reference
 to `_libusb_get_config_descriptor'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:467: undefined reference
 to `_libusb_free_config_descriptor'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:475: undefined reference
 to `_libusb_detach_kernel_driver'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:478: undefined reference
 to `_libusb_get_configuration'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:485: undefined reference
 to `_libusb_set_configuration'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:499: undefined reference
 to `_libusb_claim_interface'
CMakeFiles/ftdi.dir/ftdi.c.o: In function `ftdi_usb_open_desc_index':
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:633: undefined reference
 to `_libusb_init'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:639: undefined reference
 to `_libusb_get_device_list'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:647: undefined reference
 to `_libusb_get_device_descriptor'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:648: undefined reference
 to `_libusb_free_device_list'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:652: undefined reference
 to `_libusb_open'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:653: undefined reference
 to `_libusb_free_device_list'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:657: undefined reference
 to `_libusb_get_string_descriptor_ascii'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:659: undefined reference
 to `_libusb_close'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:660: undefined reference
 to `_libusb_free_device_list'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:664: undefined reference
 to `_libusb_close'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:670: undefined reference
 to `_libusb_get_string_descriptor_ascii'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:673: undefined reference
 to `_libusb_free_device_list'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:691: undefined reference
 to `_libusb_free_device_list'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:697: undefined reference
 to `_libusb_free_device_list'
CMakeFiles/ftdi.dir/ftdi.c.o: In function `ftdi_usb_open_string':
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:742: undefined reference
 to `_libusb_init'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:745: undefined reference
 to `_libusb_get_device_list'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:750: undefined reference
 to `_libusb_free_device_list'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:755: undefined reference
 to `_libusb_get_bus_number'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:755: undefined reference
 to `_libusb_get_device_address'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:759: undefined reference
 to `_libusb_free_device_list'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:765: undefined reference
 to `_libusb_free_device_list'
CMakeFiles/ftdi.dir/ftdi.c.o: In function `ftdi_usb_reset':
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:828: undefined reference
 to `_libusb_control_transfer'
CMakeFiles/ftdi.dir/ftdi.c.o: In function `ftdi_usb_purge_rx_buffer':
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:854: undefined reference
 to `_libusb_control_transfer'
CMakeFiles/ftdi.dir/ftdi.c.o: In function `ftdi_usb_purge_tx_buffer':
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:880: undefined reference
 to `_libusb_control_transfer'
CMakeFiles/ftdi.dir/ftdi.c.o: In function `ftdi_usb_close':
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:935: undefined reference
 to `_libusb_release_interface'
CMakeFiles/ftdi.dir/ftdi.c.o: In function `ftdi_set_baudrate':
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:1104: undefined referenc
e to `_libusb_control_transfer'
CMakeFiles/ftdi.dir/ftdi.c.o: In function `ftdi_set_line_property2':
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:1196: undefined referenc
e to `_libusb_control_transfer'
CMakeFiles/ftdi.dir/ftdi.c.o: In function `ftdi_write_data':
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:1230: undefined referenc
e to `_libusb_bulk_transfer'
CMakeFiles/ftdi.dir/ftdi.c.o: In function `ftdi_read_data_cb':
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:1315: undefined referenc
e to `_libusb_submit_transfer'
CMakeFiles/ftdi.dir/ftdi.c.o: In function `ftdi_write_data_cb':
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:1342: undefined referenc
e to `_libusb_submit_transfer'
CMakeFiles/ftdi.dir/ftdi.c.o: In function `ftdi_write_data_submit':
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:1366: undefined referenc
e to `_libusb_alloc_transfer'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:1371: undefined referenc
e to `_libusb_free_transfer'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:1394: undefined referenc
e to `_libusb_submit_transfer'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:1397: undefined referenc
e to `_libusb_free_transfer'
CMakeFiles/ftdi.dir/ftdi.c.o: In function `ftdi_read_data_submit':
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:1464: undefined referenc
e to `_libusb_alloc_transfer'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:1477: undefined referenc
e to `_libusb_submit_transfer'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:1480: undefined referenc
e to `_libusb_free_transfer'
CMakeFiles/ftdi.dir/ftdi.c.o: In function `ftdi_transfer_data_done':
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:1506: undefined referenc
e to `_libusb_handle_events'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:1511: undefined referenc
e to `_libusb_cancel_transfer'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:1513: undefined referenc
e to `_libusb_handle_events'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:1515: undefined referenc
e to `_libusb_free_transfer'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:1527: undefined referenc
e to `_libusb_free_transfer'
CMakeFiles/ftdi.dir/ftdi.c.o: In function `ftdi_read_data':
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:1624: undefined referenc
e to `_libusb_bulk_transfer'
CMakeFiles/ftdi.dir/ftdi.c.o: In function `ftdi_enable_bitbang':
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:1780: undefined referenc
e to `_libusb_control_transfer'
CMakeFiles/ftdi.dir/ftdi.c.o: In function `ftdi_disable_bitbang':
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:1803: undefined referenc
e to `_libusb_control_transfer'
CMakeFiles/ftdi.dir/ftdi.c.o: In function `ftdi_set_bitmode':
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:1831: undefined referenc
e to `_libusb_control_transfer'
CMakeFiles/ftdi.dir/ftdi.c.o: In function `ftdi_read_pins':
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:1854: undefined referenc
e to `_libusb_control_transfer'
CMakeFiles/ftdi.dir/ftdi.c.o: In function `ftdi_set_latency_timer':
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi.c:1886: undefined referenc
e to `_libusb_control_transfer'
CMakeFiles/ftdi.dir/ftdi.c.o:/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ft
di.c:1909: more undefined references to `_libusb_control_transfer' follow
CMakeFiles/ftdi.dir/ftdi_stream.c.o: In function `ftdi_readstream_cb':
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi_stream.c:98: undefined ref
erence to `_libusb_free_transfer'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi_stream.c:103: undefined re
ference to `_libusb_submit_transfer'
CMakeFiles/ftdi.dir/ftdi_stream.c.o: In function `ftdi_readstream':
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi_stream.c:171: undefined re
ference to `_libusb_alloc_transfer'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi_stream.c:189: undefined re
ference to `_libusb_submit_transfer'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi_stream.c:219: undefined re
ference to `_libusb_handle_events_timeout'
/home/mcuee/mcu/libftdi/libftdi1/libftdi-1.0/src/ftdi_stream.c:222: undefined re
ference to `_libusb_handle_events_timeout'
Creating library file: libftdi.dll.a
collect2: ld returned 1 exit status
[ 15%] Built target ftdi
Scanning dependencies of target ftdi-static
[ 23%] Building C object src/CMakeFiles/ftdi-static.dir/ftdi.c.o
[ 30%] Building C object src/CMakeFiles/ftdi-static.dir/ftdi_stream.c.o
Linking C static library libftdi.a
[ 30%] Built target ftdi-static
Scanning dependencies of target baud_test
[ 38%] Building C object examples/CMakeFiles/baud_test.dir/baud_test.c.o
Linking C executable baud_test.exe
[ 38%] Built target baud_test
Scanning dependencies of target bitbang
[ 46%] Building C object examples/CMakeFiles/bitbang.dir/bitbang.c.o
Linking C executable bitbang.exe
[ 46%] Built target bitbang
Scanning dependencies of target bitbang2
[ 53%] Building C object examples/CMakeFiles/bitbang2.dir/bitbang2.c.o
Linking C executable bitbang2.exe
[ 53%] Built target bitbang2
Scanning dependencies of target bitbang_cbus
[ 61%] Building C object examples/CMakeFiles/bitbang_cbus.dir/bitbang_cbus.c.o
Linking C executable bitbang_cbus.exe
[ 61%] Built target bitbang_cbus
Scanning dependencies of target bitbang_ft2232
[ 69%] Building C object examples/CMakeFiles/bitbang_ft2232.dir/bitbang_ft2232.c
.o
Linking C executable bitbang_ft2232.exe
[ 69%] Built target bitbang_ft2232
Scanning dependencies of target find_all
[ 76%] Building C object examples/CMakeFiles/find_all.dir/find_all.c.o
Linking C executable find_all.exe
[ 76%] Built target find_all
Scanning dependencies of target serial_read
[ 84%] Building C object examples/CMakeFiles/serial_read.dir/serial_read.c.o
Linking C executable serial_read.exe
[ 84%] Built target serial_read
Scanning dependencies of target simple
[ 92%] Building C object examples/CMakeFiles/simple.dir/simple.c.o
Linking C executable simple.exe
[ 92%] Built target simple
Scanning dependencies of target stream_test
[100%] Building C object examples/CMakeFiles/stream_test.dir/stream_test.c.o
Linking C executable stream_test.exe
[100%] Built target stream_test


-- 
Xiaofan http://sourceforge.net/projects/libusb-win32/

--
libftdi - see http://www.intra2net.com/en/developer/libftdi for details.
To unsubscribe send a mail to libftdi+unsubscribe@xxxxxxxxxxxxxxxxxxxxxxx   

Current Thread