Compiling on Ubuntu 20.04
When compiling on my Ubuntu 20.04 install, I get a ton of errors:
Besides the standard install, I have installed: sudo apt-get install build-essential libgtk-3-dev
Any ideas?
gcc -Wall -Os pkg-config --cflags gtk+-3.0
-lm -lpthread pkg-config --libs gtk+-3.0
main.c tello.c -o tello
/usr/bin/ld: /tmp/ccjZTsqT.o: in function button_callback': main.c:(.text+0x38): undefined reference to
gtk_toggle_button_get_type'
/usr/bin/ld: main.c:(.text+0x43): undefined reference to g_type_check_instance_cast' /usr/bin/ld: main.c:(.text+0x4b): undefined reference to
gtk_toggle_button_get_active'
/usr/bin/ld: main.c:(.text+0x114): undefined reference to gtk_toggle_button_get_type' /usr/bin/ld: main.c:(.text+0x11f): undefined reference to
g_type_check_instance_cast'
/usr/bin/ld: main.c:(.text+0x127): undefined reference to gtk_toggle_button_get_active' /usr/bin/ld: main.c:(.text+0x219): undefined reference to
gtk_toggle_button_get_type'
/usr/bin/ld: main.c:(.text+0x224): undefined reference to g_type_check_instance_cast' /usr/bin/ld: main.c:(.text+0x22c): undefined reference to
gtk_toggle_button_get_active'
/usr/bin/ld: main.c:(.text+0x24a): undefined reference to gtk_toggle_button_get_type' /usr/bin/ld: main.c:(.text+0x255): undefined reference to
g_type_check_instance_cast'
/usr/bin/ld: main.c:(.text+0x25d): undefined reference to gtk_toggle_button_get_active' /usr/bin/ld: main.c:(.text+0x26d): undefined reference to
gtk_toggle_button_get_type'
/usr/bin/ld: main.c:(.text+0x278): undefined reference to g_type_check_instance_cast' /usr/bin/ld: main.c:(.text+0x280): undefined reference to
gtk_toggle_button_get_active'
/usr/bin/ld: /tmp/ccjZTsqT.o: in function tello_data_callback': main.c:(.text+0x2c2): undefined reference to
gtk_toggle_button_get_type'
/usr/bin/ld: main.c:(.text+0x2d1): undefined reference to g_type_check_instance_cast' /usr/bin/ld: main.c:(.text+0x2d9): undefined reference to
gtk_toggle_button_get_active'
/usr/bin/ld: main.c:(.text+0x327): undefined reference to hypot' /usr/bin/ld: main.c:(.text+0x358): undefined reference to
sqrt'
/usr/bin/ld: main.c:(.text+0x434): undefined reference to sqrt' /usr/bin/ld: main.c:(.text+0x497): undefined reference to
atan2'
/usr/bin/ld: /tmp/ccjZTsqT.o: in function input_key': main.c:(.text+0x5c6): undefined reference to
gtk_toggle_button_get_type'
/usr/bin/ld: main.c:(.text+0x5d8): undefined reference to g_type_check_instance_cast' /usr/bin/ld: main.c:(.text+0x5e0): undefined reference to
gtk_toggle_button_get_active'
/usr/bin/ld: main.c:(.text+0x5f6): undefined reference to gtk_toggle_button_get_type' /usr/bin/ld: main.c:(.text+0x608): undefined reference to
g_type_check_instance_cast'
/usr/bin/ld: main.c:(.text+0x610): undefined reference to gtk_toggle_button_get_active' /usr/bin/ld: main.c:(.text+0x626): undefined reference to
gtk_toggle_button_get_type'
/usr/bin/ld: main.c:(.text+0x638): undefined reference to g_type_check_instance_cast' /usr/bin/ld: main.c:(.text+0x640): undefined reference to
gtk_toggle_button_get_active'
/usr/bin/ld: main.c:(.text+0x656): undefined reference to gtk_toggle_button_get_type' /usr/bin/ld: main.c:(.text+0x668): undefined reference to
g_type_check_instance_cast'
/usr/bin/ld: main.c:(.text+0x670): undefined reference to gtk_toggle_button_get_active' /usr/bin/ld: main.c:(.text+0x6b5): undefined reference to
gtk_toggle_button_get_type'
/usr/bin/ld: main.c:(.text+0x6c7): undefined reference to g_type_check_instance_cast' /usr/bin/ld: main.c:(.text+0x6cf): undefined reference to
gtk_toggle_button_get_active'
/usr/bin/ld: main.c:(.text+0x6e0): undefined reference to g_type_check_instance_cast' /usr/bin/ld: /tmp/ccjZTsqT.o: in function
input_abs':
main.c:(.text+0x746): undefined reference to gtk_toggle_button_get_type' /usr/bin/ld: main.c:(.text+0x758): undefined reference to
g_type_check_instance_cast'
/usr/bin/ld: main.c:(.text+0x760): undefined reference to gtk_toggle_button_get_active' /usr/bin/ld: main.c:(.text+0x789): undefined reference to
g_type_check_instance_cast'
/usr/bin/ld: main.c:(.text+0x793): undefined reference to gtk_toggle_button_set_active' /usr/bin/ld: /tmp/ccjZTsqT.o: in function
key_callback':
main.c:(.text+0xa8d): undefined reference to gtk_toggle_button_get_type' /usr/bin/ld: main.c:(.text+0xa9f): undefined reference to
g_type_check_instance_cast'
/usr/bin/ld: main.c:(.text+0xaa7): undefined reference to gtk_toggle_button_get_active' /usr/bin/ld: main.c:(.text+0xab8): undefined reference to
g_type_check_instance_cast'
/usr/bin/ld: main.c:(.text+0xac8): undefined reference to gtk_toggle_button_set_active' /usr/bin/ld: /tmp/ccjZTsqT.o: in function
toggle_button':
main.c:(.text+0xbfc): undefined reference to g_signal_handlers_block_matched' /usr/bin/ld: main.c:(.text+0xc01): undefined reference to
gtk_toggle_button_get_type'
/usr/bin/ld: main.c:(.text+0xc0c): undefined reference to g_type_check_instance_cast' /usr/bin/ld: main.c:(.text+0xc17): undefined reference to
gtk_toggle_button_set_active'
/usr/bin/ld: main.c:(.text+0xc3a): undefined reference to g_signal_handlers_unblock_matched' /usr/bin/ld: /tmp/ccjZTsqT.o: in function
update_gui':
main.c:(.text+0xcb1): undefined reference to gtk_label_get_type' /usr/bin/ld: main.c:(.text+0xcc0): undefined reference to
g_type_check_instance_cast'
/usr/bin/ld: main.c:(.text+0xccb): undefined reference to gtk_label_set_text' /usr/bin/ld: main.c:(.text+0xcde): undefined reference to
gtk_level_bar_get_type'
/usr/bin/ld: main.c:(.text+0xced): undefined reference to g_type_check_instance_cast' /usr/bin/ld: main.c:(.text+0xcfb): undefined reference to
gtk_level_bar_set_value'
/usr/bin/ld: main.c:(.text+0xd5e): undefined reference to gtk_label_get_type' /usr/bin/ld: main.c:(.text+0xd6d): undefined reference to
g_type_check_instance_cast'
/usr/bin/ld: main.c:(.text+0xd78): undefined reference to gtk_label_set_text' /usr/bin/ld: main.c:(.text+0xd8b): undefined reference to
gtk_level_bar_get_type'
/usr/bin/ld: main.c:(.text+0xd9a): undefined reference to g_type_check_instance_cast' /usr/bin/ld: main.c:(.text+0xda8): undefined reference to
gtk_level_bar_set_value'
/usr/bin/ld: main.c:(.text+0xdf2): undefined reference to gtk_label_get_type' /usr/bin/ld: main.c:(.text+0xe01): undefined reference to
g_type_check_instance_cast'
/usr/bin/ld: main.c:(.text+0xe0c): undefined reference to gtk_label_set_text' /usr/bin/ld: main.c:(.text+0xe2e): undefined reference to
gtk_level_bar_get_type'
/usr/bin/ld: main.c:(.text+0xe3d): undefined reference to g_type_check_instance_cast' /usr/bin/ld: main.c:(.text+0xe4b): undefined reference to
gtk_level_bar_set_value'
/usr/bin/ld: main.c:(.text+0xe6a): undefined reference to sqrt' /usr/bin/ld: main.c:(.text+0xee9): undefined reference to
gtk_label_get_type'
/usr/bin/ld: main.c:(.text+0xef8): undefined reference to g_type_check_instance_cast' /usr/bin/ld: main.c:(.text+0xf03): undefined reference to
gtk_label_set_text'
/usr/bin/ld: /tmp/ccjZTsqT.o: in function create_bar': main.c:(.text+0xf46): undefined reference to
gtk_box_new'
/usr/bin/ld: main.c:(.text+0xf4e): undefined reference to gtk_box_get_type' /usr/bin/ld: main.c:(.text+0xf63): undefined reference to
g_type_check_instance_cast'
/usr/bin/ld: main.c:(.text+0xf7b): undefined reference to gtk_box_pack_start' /usr/bin/ld: main.c:(.text+0xf93): undefined reference to
gtk_label_new'
/usr/bin/ld: main.c:(.text+0xf9b): undefined reference to gtk_label_get_type' /usr/bin/ld: main.c:(.text+0xfa6): undefined reference to
g_type_check_instance_cast'
/usr/bin/ld: main.c:(.text+0xfb3): undefined reference to gtk_label_set_justify' /usr/bin/ld: main.c:(.text+0xfbe): undefined reference to
g_type_check_instance_cast'
/usr/bin/ld: main.c:(.text+0xfd3): undefined reference to gtk_box_pack_end' /usr/bin/ld: main.c:(.text+0xff1): undefined reference to
gtk_level_bar_new_for_interval'
/usr/bin/ld: main.c:(.text+0xff9): undefined reference to gtk_level_bar_get_type' /usr/bin/ld: main.c:(.text+0x1004): undefined reference to
g_type_check_instance_cast'
/usr/bin/ld: main.c:(.text+0x1011): undefined reference to gtk_level_bar_set_inverted' /usr/bin/ld: main.c:(.text+0x1016): undefined reference to
gtk_orientable_get_type'
/usr/bin/ld: main.c:(.text+0x1021): undefined reference to g_type_check_instance_cast' /usr/bin/ld: main.c:(.text+0x102e): undefined reference to
gtk_orientable_set_orientation'
/usr/bin/ld: main.c:(.text+0x1039): undefined reference to g_type_check_instance_cast' /usr/bin/ld: main.c:(.text+0x1051): undefined reference to
gtk_box_pack_start'
/usr/bin/ld: /tmp/ccjZTsqT.o: in function create_button': main.c:(.text+0x1095): undefined reference to
gtk_button_new_from_icon_name'
/usr/bin/ld: main.c:(.text+0x10bf): undefined reference to gtk_toggle_button_new' /usr/bin/ld: main.c:(.text+0x10d1): undefined reference to
gtk_image_new_from_icon_name'
/usr/bin/ld: main.c:(.text+0x10d9): undefined reference to gtk_button_get_type' /usr/bin/ld: main.c:(.text+0x10e4): undefined reference to
g_type_check_instance_cast'
/usr/bin/ld: main.c:(.text+0x10ef): undefined reference to gtk_button_set_image' /usr/bin/ld: main.c:(.text+0x1112): undefined reference to
g_signal_connect_data'
/usr/bin/ld: main.c:(.text+0x1117): undefined reference to gtk_action_bar_get_type' /usr/bin/ld: main.c:(.text+0x1122): undefined reference to
g_type_check_instance_cast'
/usr/bin/ld: main.c:(.text+0x112d): undefined reference to gtk_action_bar_pack_start' /usr/bin/ld: /tmp/ccjZTsqT.o: in function
on_activate':
main.c:(.text+0x1179): undefined reference to gtk_application_window_new' /usr/bin/ld: main.c:(.text+0x1181): undefined reference to
gtk_window_get_type'
/usr/bin/ld: main.c:(.text+0x118f): undefined reference to g_type_check_instance_cast' /usr/bin/ld: main.c:(.text+0x119e): undefined reference to
gtk_window_set_title'
/usr/bin/ld: main.c:(.text+0x11a9): undefined reference to g_type_check_instance_cast' /usr/bin/ld: main.c:(.text+0x11b8): undefined reference to
gtk_window_set_icon_name'
/usr/bin/ld: main.c:(.text+0x11c3): undefined reference to g_type_check_instance_cast' /usr/bin/ld: main.c:(.text+0x11d5): undefined reference to
gtk_window_set_default_size'
/usr/bin/ld: main.c:(.text+0x11f3): undefined reference to g_signal_connect_data' /usr/bin/ld: main.c:(.text+0x11f8): undefined reference to
gtk_grid_new'
/usr/bin/ld: main.c:(.text+0x1200): undefined reference to gtk_container_get_type' /usr/bin/ld: main.c:(.text+0x120b): undefined reference to
g_type_check_instance_cast'
/usr/bin/ld: main.c:(.text+0x1216): undefined reference to gtk_container_add' /usr/bin/ld: main.c:(.text+0x1222): undefined reference to
gtk_box_new'
/usr/bin/ld: main.c:(.text+0x122a): undefined reference to gtk_box_get_type' /usr/bin/ld: main.c:(.text+0x1235): undefined reference to
g_type_check_instance_cast'
/usr/bin/ld: main.c:(.text+0x1242): undefined reference to gtk_box_set_homogeneous' /usr/bin/ld: main.c:(.text+0x124f): undefined reference to
gtk_widget_set_vexpand'
/usr/bin/ld: main.c:(.text+0x125c): undefined reference to gtk_widget_set_hexpand' /usr/bin/ld: main.c:(.text+0x1261): undefined reference to
gtk_grid_get_type'
/usr/bin/ld: main.c:(.text+0x126f): undefined reference to g_type_check_instance_cast' /usr/bin/ld: main.c:(.text+0x128a): undefined reference to
gtk_grid_attach'
/usr/bin/ld: main.c:(.text+0x12d1): undefined reference to gtk_action_bar_new' /usr/bin/ld: main.c:(.text+0x12df): undefined reference to
g_type_check_instance_cast'
/usr/bin/ld: main.c:(.text+0x12fd): undefined reference to gtk_grid_attach' /usr/bin/ld: main.c:(.text+0x1381): undefined reference to
gtk_label_new'
/usr/bin/ld: main.c:(.text+0x1390): undefined reference to gtk_action_bar_get_type' /usr/bin/ld: main.c:(.text+0x139b): undefined reference to
g_type_check_instance_cast'
/usr/bin/ld: main.c:(.text+0x13a6): undefined reference to gtk_action_bar_pack_end' /usr/bin/ld: main.c:(.text+0x13ae): undefined reference to
gtk_widget_show_all'
/usr/bin/ld: /tmp/ccjZTsqT.o: in function tello_data_callback': main.c:(.text+0x51e): undefined reference to
g_idle_add'
/usr/bin/ld: /tmp/ccjZTsqT.o: in function input_key': main.c:(.text+0x6f3): undefined reference to
gtk_toggle_button_set_active'
/usr/bin/ld: /tmp/ccjZTsqT.o: in function main': main.c:(.text.startup+0x19): undefined reference to
gtk_application_new'
/usr/bin/ld: main.c:(.text.startup+0x3a): undefined reference to g_signal_connect_data' /usr/bin/ld: main.c:(.text.startup+0x3f): undefined reference to
g_application_get_type'
/usr/bin/ld: main.c:(.text.startup+0x4a): undefined reference to g_type_check_instance_cast' /usr/bin/ld: main.c:(.text.startup+0x58): undefined reference to
g_application_run'
/usr/bin/ld: main.c:(.text.startup+0x60): undefined reference to `g_object_unref'
collect2: error: ld returned 1 exit status
make: *** [makefile:8: all] Fehler 1