Ответ 1
Попробуйте запустить ldconfig
(т.е. sudo ldconfig
) для восстановления кэша компоновщика времени выполнения.
Я пытаюсь использовать инфраструктуру модульного тестирования для C, называемую Check.
Я установил пакет, как указано в файле INSTALL в пакете:
После этого я не смог запустить свой собственный тест, поэтому, наконец, я решил использовать пример пакета в /usr/local/share/doc/check/example
.
Были ли следующие команды:
$ autoreconf --install
$ ./configure
$ make
$ make check
И все та же проблема:
/usr/local/share/doc/check/example/tests/.libs/lt-check_money: error while loading shared libraries: libcheck.so.0: cannot open shared object file: No such file or directory
FAIL: check_money
Попробовал добавить каталог в LDFLAGS
в файл make, но это не помогло, также попытался сделать то, что сделал Рик Хайтауэр здесь
(... удаление файлов *.so(и их ссылок)), я не знаю, как удалить ссылки
Попробуйте запустить ldconfig
(т.е. sudo ldconfig
) для восстановления кэша компоновщика времени выполнения.
В моей системе по крайней мере (Debian) libcheck не упакован как общая библиотека, вам нужно связать ее статически, например.
gcc -o test_program test1.o test2.o /usr/lib/libcheck.a
В этом проекте используется проверка https://github.com/batousik/Practical-C2