JiaoXianjun / BTLE

Bluetooth Low Energy (BLE) packet sniffer and transmitter for both standard and non standard (raw bit) based on Software Defined Radio (SDR).
http://sdr-x.github.io/
Apache License 2.0
734 stars 135 forks source link

cannot run the source code with gdb in Eclipse #12

Open chakpongchung opened 7 years ago

chakpongchung commented 7 years ago

I tried to import the project as a makefile project in eclipse. I am trying to use gdb to know the details of BLE scanner.

16:14:16 Incremental Build of configuration Release for project ble make all Building file: ../src/btle_rx.c Invoking: GCC C Compiler gcc -I/usr/local/src/hackrf/host/libhackrf/src -O3 -Wall -c -fmessage-length=0 -MMD -MP -MF"src/btle_rx.d" -MT"src/btle_rx.o" -o "src/btle_rx.o" "../src/btle_rx.c" ../src/btle_rx.c: In function ‘parse_ll_pdu_payload_byte’: ../src/btle_rx.c:1411:7: warning: ‘ctrl_pdu_type’ may be used uninitialized in this function [-Wmaybe-uninitialized] int ctrl_pdu_type; ^ ../src/btle_rx.c: In function ‘receiver’: ../src/btle_rx.c:1982:27: warning: ‘ll_pdu_type’ may be used uninitialized in this function [-Wmaybe-uninitialized] print_ll_pdu_payload((void )(&ll_data_pdu_payload), ll_pdu_type, ll_ctrl_pdu_type, payload_len, crc_flag); ^ ../src/btle_rx.c:1975:28: warning: ‘adv_pdu_type’ may be used uninitialized in this function [-Wmaybe-uninitialized] print_adv_pdu_payload((void )(&adv_pdu_payload), adv_pdu_type, payload_len, crc_flag); ^ Finished building: ../src/btle_rx.c

Building file: ../src/btle_tx.c Invoking: GCC C Compiler gcc -I/usr/local/src/hackrf/host/libhackrf/src -O3 -Wall -c -fmessage-length=0 -MMD -MP -MF"src/btle_tx.d" -MT"src/btle_tx.o" -o "src/btle_tx.o" "../src/btle_tx.c" ../src/btle_tx.c: In function ‘main’: ../src/btle_tx.c:4266:5: warning: ‘num_packet’ may be used uninitialized in this function [-Wmaybe-uninitialized] for (i=0; i<num_packet; i++) { ^ Finished building: ../src/btle_tx.c

Building target: ble Invoking: GCC C Linker gcc -L/usr/local/include/libhackrf/ -o "ble" ./src/btle_rx.o ./src/btle_tx.o
./src/btle_tx.o: In function sigint_callback_handler': btle_tx.c:(.text+0x160): multiple definition ofsigint_callback_handler' ./src/btle_rx.o:btle_rx.c:(.text+0x50): first defined here ./src/btle_tx.o:(.bss+0xf04): multiple definition of do_exit' ./src/btle_rx.o:(.bss+0x0): first defined here ./src/btle_tx.o: In functioninit_board': btle_tx.c:(.text+0x2c0): multiple definition of init_board' ./src/btle_rx.o:btle_rx.c:(.text+0x190): first defined here ./src/btle_tx.o: In functionopen_board': btle_tx.c:(.text+0x360): multiple definition of open_board' ./src/btle_rx.o:btle_rx.c:(.text+0x270): first defined here ./src/btle_tx.o: In functionexit_board': btle_tx.c:(.text+0x460): multiple definition of exit_board' ./src/btle_rx.o:btle_rx.c:(.text+0x3b0): first defined here ./src/btle_tx.o: In functionclose_board': btle_tx.c:(.text+0x490): multiple definition of close_board' ./src/btle_rx.o:btle_rx.c:(.text+0x3e0): first defined here ./src/btle_tx.o: In functiontoupper_str': btle_tx.c:(.text+0xa40): multiple definition of toupper_str' ./src/btle_rx.o:btle_rx.c:(.text+0x840): first defined here ./src/btle_tx.o: In functionoctet_hex_to_bit': btle_tx.c:(.text+0xa90): multiple definition of octet_hex_to_bit' ./src/btle_rx.o:btle_rx.c:(.text+0x890): first defined here ./src/btle_tx.o: In functionint_to_bit': btle_tx.c:(.text+0xb60): multiple definition of int_to_bit' ./src/btle_rx.o:btle_rx.c:(.text+0x920): first defined here ./src/btle_tx.o: In functionconvert_hex_to_bit': btle_tx.c:(.text+0xbc0): multiple definition of convert_hex_to_bit' ./src/btle_rx.o:btle_rx.c:(.text+0x1070): first defined here ./src/btle_tx.o: In functioncrc_update': btle_tx.c:(.text+0x3600): multiple definition of crc_update' ./src/btle_rx.o:btle_rx.c:(.text+0x16a0): first defined here ./src/btle_tx.o: In functioncrc24_byte': btle_tx.c:(.text+0x3640): multiple definition of crc24_byte' ./src/btle_rx.o:btle_rx.c:(.text+0x16e0): first defined here ./src/btle_tx.o: In functionscramble_byte': btle_tx.c:(.text+0x3820): multiple definition of scramble_byte' ./src/btle_rx.o:btle_rx.c:(.text+0x1720): first defined here ./src/btle_tx.o: In functiondisp_bit': btle_tx.c:(.text+0x4a10): multiple definition of disp_bit' ./src/btle_rx.o:btle_rx.c:(.text+0x1190): first defined here ./src/btle_tx.o: In functiondisp_bit_in_hex': btle_tx.c:(.text+0x4ab0): multiple definition of disp_bit_in_hex' ./src/btle_rx.o:btle_rx.c:(.text+0x1230): first defined here ./src/btle_tx.o: In functiondisp_hex': btle_tx.c:(.text+0x4b40): multiple definition of disp_hex' ./src/btle_rx.o:btle_rx.c:(.text+0x12c0): first defined here ./src/btle_tx.o: In functiondisp_hex_in_bit': btle_tx.c:(.text+0x4b90): multiple definition of disp_hex_in_bit' ./src/btle_rx.o:btle_rx.c:(.text+0x1310): first defined here ./src/btle_tx.o: In functionsave_phy_sample': btle_tx.c:(.text+0xd070): multiple definition of save_phy_sample' ./src/btle_rx.o:btle_rx.c:(.text+0x13d0): first defined here ./src/btle_tx.o: In functionsave_phy_sample_for_matlab': btle_tx.c:(.text+0xd130): multiple definition of save_phy_sample_for_matlab' ./src/btle_rx.o:btle_rx.c:(.text+0x1570): first defined here ./src/btle_tx.o: In functionmain': btle_tx.c:(.text.startup+0x0): multiple definition of main' ./src/btle_rx.o:btle_rx.c:(.text.startup+0x0): first defined here ./src/btle_rx.o: In functioninit_board': btle_rx.c:(.text+0x194): undefined reference to hackrf_init' btle_rx.c:(.text+0x203): undefined reference tohackrf_error_name' ./src/btle_rx.o: In function board_set_freq': btle_rx.c:(.text+0x232): undefined reference tohackrf_set_freq' btle_rx.c:(.text+0x243): undefined reference to hackrf_error_name' ./src/btle_rx.o: In functionopen_board': btle_rx.c:(.text+0x287): undefined reference to hackrf_open' btle_rx.c:(.text+0x298): undefined reference tohackrf_set_freq' btle_rx.c:(.text+0x2b2): undefined reference to hackrf_set_sample_rate' btle_rx.c:(.text+0x2c9): undefined reference tohackrf_set_baseband_filter_bandwidth' btle_rx.c:(.text+0x2de): undefined reference to hackrf_set_vga_gain' btle_rx.c:(.text+0x2ed): undefined reference tohackrf_set_lna_gain' btle_rx.c:(.text+0x313): undefined reference to hackrf_error_name' btle_rx.c:(.text+0x34b): undefined reference tohackrf_error_name' btle_rx.c:(.text+0x363): undefined reference to hackrf_error_name' btle_rx.c:(.text+0x37b): undefined reference tohackrf_error_name' btle_rx.c:(.text+0x393): undefined reference to hackrf_error_name' ./src/btle_rx.o: In functionexit_board': btle_rx.c:(.text+0x3bc): undefined reference to hackrf_exit' ./src/btle_rx.o: In functionclose_board': btle_rx.c:(.text+0x3ef): undefined reference to hackrf_stop_rx' btle_rx.c:(.text+0x3fd): undefined reference tohackrf_close' btle_rx.c:(.text+0x413): undefined reference to hackrf_error_name' btle_rx.c:(.text+0x443): undefined reference tohackrf_error_name' ./src/btle_rx.o: In function run_board': btle_rx.c:(.text+0x47a): undefined reference tohackrf_stop_rx' btle_rx.c:(.text+0x48f): undefined reference to hackrf_start_rx' btle_rx.c:(.text+0x4ab): undefined reference tohackrf_error_name' btle_rx.c:(.text+0x4d3): undefined reference to hackrf_error_name' ./src/btle_rx.o: In functionconfig_run_board': btle_rx.c:(.text+0x525): undefined reference to hackrf_init' btle_rx.c:(.text+0x591): undefined reference tohackrf_open' btle_rx.c:(.text+0x5a7): undefined reference to hackrf_set_freq' btle_rx.c:(.text+0x5c2): undefined reference tohackrf_set_sample_rate' btle_rx.c:(.text+0x5da): undefined reference to hackrf_set_baseband_filter_bandwidth' btle_rx.c:(.text+0x5f0): undefined reference tohackrf_set_vga_gain' btle_rx.c:(.text+0x600): undefined reference to hackrf_set_lna_gain' btle_rx.c:(.text+0x618): undefined reference tohackrf_stop_rx' btle_rx.c:(.text+0x631): undefined reference to hackrf_start_rx' btle_rx.c:(.text+0x653): undefined reference tohackrf_error_name' btle_rx.c:(.text+0x683): undefined reference to hackrf_error_name' btle_rx.c:(.text+0x6c3): undefined reference tohackrf_error_name' btle_rx.c:(.text+0x6eb): undefined reference to hackrf_error_name' btle_rx.c:(.text+0x713): undefined reference tohackrf_error_name' ./src/btle_rx.o:btle_rx.c:(.text+0x743): more undefined references to hackrf_error_name' follow ./src/btle_rx.o: In functionstop_close_board': btle_rx.c:(.text+0x7bf): undefined reference to hackrf_stop_rx' btle_rx.c:(.text+0x7cd): undefined reference tohackrf_close' btle_rx.c:(.text+0x7da): undefined reference to hackrf_exit' btle_rx.c:(.text+0x803): undefined reference tohackrf_error_name' btle_rx.c:(.text+0x82b): undefined reference to hackrf_error_name' ./src/btle_rx.o: In functionreceiver_controller': btle_rx.c:(.text+0x3ebd): undefined reference to hackrf_set_freq' btle_rx.c:(.text+0x3fcb): undefined reference tohackrf_set_freq' btle_rx.c:(.text+0x42a6): undefined reference to hackrf_error_name' btle_rx.c:(.text+0x4379): undefined reference tohackrf_set_freq' btle_rx.c:(.text+0x4472): undefined reference to hackrf_error_name' ./src/btle_tx.o: In functioninit_board': btle_tx.c:(.text+0x2c4): undefined reference to hackrf_init' btle_tx.c:(.text+0x333): undefined reference tohackrf_error_name' ./src/btle_tx.o: In function open_board': btle_tx.c:(.text+0x367): undefined reference tohackrf_open' btle_tx.c:(.text+0x380): undefined reference to hackrf_set_freq' btle_tx.c:(.text+0x39a): undefined reference tohackrf_set_sample_rate' btle_tx.c:(.text+0x3b1): undefined reference to hackrf_set_txvga_gain' btle_tx.c:(.text+0x3c3): undefined reference tohackrf_error_name' btle_tx.c:(.text+0x3eb): undefined reference to hackrf_error_name' btle_tx.c:(.text+0x413): undefined reference tohackrf_error_name' btle_tx.c:(.text+0x43b): undefined reference to hackrf_error_name' ./src/btle_tx.o: In functionexit_board': btle_tx.c:(.text+0x471): undefined reference to hackrf_exit' ./src/btle_tx.o: In functionclose_board': btle_tx.c:(.text+0x49e): undefined reference to hackrf_stop_tx' btle_tx.c:(.text+0x4b0): undefined reference tohackrf_close' btle_tx.c:(.text+0x4c3): undefined reference to hackrf_error_name' btle_tx.c:(.text+0x4f3): undefined reference tohackrf_error_name' ./src/btle_tx.o: In function tx_one_buf': btle_tx.c:(.text+0x594): undefined reference tohackrf_open' btle_tx.c:(.text+0x5b1): undefined reference to hackrf_set_freq' btle_tx.c:(.text+0x5cf): undefined reference tohackrf_set_sample_rate' btle_tx.c:(.text+0x5ea): undefined reference to hackrf_set_txvga_gain' btle_tx.c:(.text+0x611): undefined reference tohackrf_start_tx' btle_tx.c:(.text+0x63d): undefined reference to hackrf_is_streaming' btle_tx.c:(.text+0x65c): undefined reference tohackrf_stop_tx' btle_tx.c:(.text+0x67b): undefined reference to hackrf_stop_tx' btle_tx.c:(.text+0x68d): undefined reference tohackrf_close' btle_tx.c:(.text+0x6f4): undefined reference to hackrf_error_name' btle_tx.c:(.text+0x722): undefined reference tohackrf_error_name' btle_tx.c:(.text+0x761): undefined reference to hackrf_error_name' btle_tx.c:(.text+0x780): undefined reference tohackrf_error_name' btle_tx.c:(.text+0x7a4): undefined reference to hackrf_error_name' ./src/btle_tx.o:btle_tx.c:(.text+0x7c6): more undefined references tohackrf_error_name' follow ./src/btle_tx.o: In function main': btle_tx.c:(.text.startup+0x123): undefined reference tohackrf_open' btle_tx.c:(.text.startup+0x13e): undefined reference to hackrf_set_freq' btle_tx.c:(.text.startup+0x15a): undefined reference tohackrf_set_sample_rate' btle_tx.c:(.text.startup+0x173): undefined reference to hackrf_set_txvga_gain' btle_tx.c:(.text.startup+0x198): undefined reference tohackrf_start_tx' btle_tx.c:(.text.startup+0x1cd): undefined reference to hackrf_is_streaming' btle_tx.c:(.text.startup+0x1ec): undefined reference tohackrf_stop_tx' btle_tx.c:(.text.startup+0x209): undefined reference to hackrf_stop_tx' btle_tx.c:(.text.startup+0x21d): undefined reference tohackrf_close' btle_tx.c:(.text.startup+0x408): undefined reference to hackrf_error_name' btle_tx.c:(.text.startup+0x45e): undefined reference tohackrf_error_name' btle_tx.c:(.text.startup+0x499): undefined reference to hackrf_error_name' btle_tx.c:(.text.startup+0x4be): undefined reference tohackrf_error_name' btle_tx.c:(.text.startup+0x4e6): undefined reference to hackrf_error_name' ./src/btle_tx.o:btle_tx.c:(.text.startup+0x50e): more undefined references tohackrf_error_name' follow collect2: error: ld returned 1 exit status make: *** [ble] Error 1

16:14:19 Build Finished (took 3s.29ms)

JiaoXianjun commented 3 years ago

Sorry, I never use Eclipse.