-5
嘗試編譯C項目時遇到問題。 我的文件夾包含一個.c,一個.h,我的庫目錄和一些文本文件。編譯時未找到庫
當用我自己的main.c(gcc get_next_line.c main.c Libft/libft.a
)手動編譯時,每個人都可以正常工作。 雖然我使用腳本來傳遞單元測試,但在啓動它時出現這種類型的錯誤(出現的函數是我的庫中用於.c的函數)。
在朋友的計算機上運行相同的腳本時,編譯工作正常。 我沒有把所有東西都放在這裏(我在這個腳本中使用的Makefile中有很多代碼),但是如果有人需要一些精確的話,我會很樂意嘗試並提供它們。
編輯:
make gnl
find: /nfs/zfs-student-2/users/acottier/Taf/GNL/includes: No such file or directory
find: /nfs/zfs-student-2/users/acottier/Taf/GNL/srcs: No such file or directory
make exec_tests
find: /nfs/zfs-student-2/users/acottier/Taf/GNL/includes: No such file or directory
find: /nfs/zfs-student-2/users/acottier/Taf/GNL/srcs: No such file or directory
echo "tests/01_test_simple.spec.c
tests/02_test_eof_with_close.spec.c
tests/03_test_medium_string.spec.c
tests/04_test_return_values.spec.c
tests/05_test_error_handling.spec.c
tests/06_test_line_of_08.spec.c
tests/07_test_two_lines_of_08.spec.c
tests/08_test_few_lines_of_08.spec.c
tests/09_test_line_of_16.spec.c
tests/10_test_two_lines_of_16.spec.c
tests/11_test_few_lines_of_16.spec.c
tests/12_test_line_of_4.spec.c
tests/13_test_two_lines_of_4.spec.c
tests/14_test_few_lines_of_4.spec.c
tests/15_test_line_without_nl.spec.c
tests/16_test_line_of_8_without_nl.spec.c
tests/17_test_line_of_16_without_nl.spec.c
tests/30_bonus_multiple_fd.spec.c
tests/40_hard_test_medium_string.spec.c
tests/41_hard_test_large_file.spec.c
tests/42_hard_test_one_big_fat_line.spec.c"
tests/01_test_simple.spec.c
tests/02_test_eof_with_close.spec.c
tests/03_test_medium_string.spec.c
tests/04_test_return_values.spec.c
tests/05_test_error_handling.spec.c
tests/06_test_line_of_08.spec.c
tests/07_test_two_lines_of_08.spec.c
tests/08_test_few_lines_of_08.spec.c
tests/09_test_line_of_16.spec.c
tests/10_test_two_lines_of_16.spec.c
tests/11_test_few_lines_of_16.spec.c
tests/12_test_line_of_4.spec.c
tests/13_test_two_lines_of_4.spec.c
tests/14_test_few_lines_of_4.spec.c
tests/15_test_line_without_nl.spec.c
tests/16_test_line_of_8_without_nl.spec.c
tests/17_test_line_of_16_without_nl.spec.c
tests/30_bonus_multiple_fd.spec.c
tests/40_hard_test_medium_string.spec.c
tests/41_hard_test_large_file.spec.c
tests/42_hard_test_one_big_fat_line.spec.c
make re -k -C /nfs/zfs-student-2/users/acottier/Taf/GNL/libft
Object files deleted.
Library deleted.
Compilation finished.
make -k -C ../testframework/v3/
rm -f *.o
gcc -Wall -Werror -Wextra -ggdb -I includes -c srcs/**/*.c
ar rc libmt_framework.a *.o
gcc -g -I . -I ../testframework/v3//includes
-I /nfs/zfs-student-2/users/acottier/Taf/GNL
-I /nfs/zfs-student-2/users/acottier/Taf/GNL/includes
-I /nfs/zfs-student-2/users/acottier/Taf/GNL/includes/builtin
-I /nfs/zfs-student-2/users/acottier/Taf/GNL/libs/libtowel/includes -D__MOULITEST__ -DPROTOTYPES=
"MT_ADD_PROTO(01_test_simple);
MT_ADD_PROTO(02_test_eof_with_close);
MT_ADD_PROTO(03_test_medium_string);
MT_ADD_PROTO(04_test_return_values);
MT_ADD_PROTO(05_test_error_handling);
MT_ADD_PROTO(06_test_line_of_08);
MT_ADD_PROTO(07_test_two_lines_of_08);
MT_ADD_PROTO(08_test_few_lines_of_08);
MT_ADD_PROTO(09_test_line_of_16);
MT_ADD_PROTO(10_test_two_lines_of_16);
MT_ADD_PROTO(11_test_few_lines_of_16);
MT_ADD_PROTO(12_test_line_of_4);
MT_ADD_PROTO(13_test_two_lines_of_4);
MT_ADD_PROTO(14_test_few_lines_of_4);
MT_ADD_PROTO(15_test_line_without_nl);
MT_ADD_PROTO(16_test_line_of_8_without_nl);
MT_ADD_PROTO(17_test_line_of_16_without_nl);
MT_ADD_PROTO(30_bonus_multiple_fd);
MT_ADD_PROTO(40_hard_test_medium_string);
MT_ADD_PROTO(41_hard_test_large_file);
MT_ADD_PROTO(42_hard_test_one_big_fat_line); "
-DADD_TESTS=
"MT_ADD_SUITE(mt, 01_test_simple, suite_01_test_simple);
MT_ADD_SUITE(mt, 02_test_eof_with_close, suite_02_test_eof_with_close);
MT_ADD_SUITE(mt, 03_test_medium_string, suite_03_test_medium_string);
MT_ADD_SUITE(mt, 04_test_return_values, suite_04_test_return_values);
MT_ADD_SUITE(mt, 05_test_error_handling, suite_05_test_error_handling);
MT_ADD_SUITE(mt, 06_test_line_of_08, suite_06_test_line_of_08);
MT_ADD_SUITE(mt, 07_test_two_lines_of_08, suite_07_test_two_lines_of_08);
MT_ADD_SUITE(mt, 08_test_few_lines_of_08, suite_08_test_few_lines_of_08);
MT_ADD_SUITE(mt, 09_test_line_of_16, suite_09_test_line_of_16);
MT_ADD_SUITE(mt, 10_test_two_lines_of_16, suite_10_test_two_lines_of_16);
MT_ADD_SUITE(mt, 11_test_few_lines_of_16, suite_11_test_few_lines_of_16);
MT_ADD_SUITE(mt, 12_test_line_of_4, suite_12_test_line_of_4);
MT_ADD_SUITE(mt, 13_test_two_lines_of_4, suite_13_test_two_lines_of_4);
MT_ADD_SUITE(mt, 14_test_few_lines_of_4, suite_14_test_few_lines_of_4);
MT_ADD_SUITE(mt, 15_test_line_without_nl, suite_15_test_line_without_nl);
MT_ADD_SUITE(mt, 16_test_line_of_8_without_nl, suite_16_test_line_of_8_without_nl);
MT_ADD_SUITE(mt, 17_test_line_of_16_without_nl, suite_17_test_line_of_16_without_nl);
MT_ADD_SUITE(mt, 30_bonus_multiple_fd, suite_30_bonus_multiple_fd);
MT_ADD_SUITE(mt, 40_hard_test_medium_string, suite_40_hard_test_medium_string);
MT_ADD_SUITE(mt, 41_hard_test_large_file, suite_41_hard_test_large_file);
MT_ADD_SUITE(mt, 42_hard_test_one_big_fat_line, suite_42_hard_test_one_big_fat_line);
" -DRENDU_PATH="\"/nfs/zfs-student-2/users/acottier/Taf/GNL\"
" tests/01_test_simple.spec.c
tests/02_test_eof_with_close.spec.c
tests/03_test_medium_string.spec.c
tests/04_test_return_values.spec.c
tests/05_test_error_handling.spec.c
tests/06_test_line_of_08.spec.c
tests/07_test_two_lines_of_08.spec.c
tests/08_test_few_lines_of_08.spec.c
tests/09_test_line_of_16.spec.c
tests/10_test_two_lines_of_16.spec.c
tests/11_test_few_lines_of_16.spec.c
tests/12_test_line_of_4.spec.c
tests/13_test_two_lines_of_4.spec.c
tests/14_test_few_lines_of_4.spec.c
tests/15_test_line_without_nl.spec.c
tests/16_test_line_of_8_without_nl.spec.c
tests/17_test_line_of_16_without_nl.spec.c
tests/30_bonus_multiple_fd.spec.c
tests/40_hard_test_medium_string.spec.c
tests/41_hard_test_large_file.spec.c
tests/42_hard_test_one_big_fat_line.spec.c
main.c utils.c /nfs/zfs-student-2/users/acottier/Taf/GNL/get_next_line.c -o get_next_line_tests -L../testframework/v3/ -lmt_framework
Undefined symbols for architecture x86_64:
"_ft_strclr", referenced from:
_get_next_line in get_next_line-b43645.o
"_ft_strdupchr", referenced from:
_ft_traitement in get_next_line-b43645.o
_ft_nettoyage in get_next_line-b43645.o
"_ft_strjoin", referenced from:
_ft_traitement in get_next_line-b43645.o
"_ft_strlen", referenced from:
_ft_traitement in get_next_line-b43645.o
"_ft_strlenchr", referenced from:
_ft_traitement in get_next_line-b43645.o
_ft_nettoyage in get_next_line-b43645.o
"_ft_strnew", referenced from:
_get_next_line in get_next_line-b43645.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [exec_tests] Error 1
make[1]: *** [all] Error 2
make: *** [get_next_line] Error 2
(我做了一些修改,在外殼中庸之道的輸出不是:試圖讓編譯的時候,我會複製我得到的所有文字可讀)
在此先感謝您的幫助。
你要我們去考慮任何錯誤信息*在問題本身*,而不是在外部服務。文字形式遠遠優於圖像。複製並粘貼是你的朋友。 –
在這裏發佈錯誤,而不是在圖片中。當圖片最終失效時,你的問題對每個人都沒用。 – Martin
也許你需要添加一些'-lxxx'選項來鏈接你的程序所需的動態庫。 –