2010-08-14 42 views
11

Tôi đang cố gắng sử dụng khung kiểm tra đơn vị cho C được gọi là Check.Sử dụng khung kiểm tra đơn vị cho C Kiểm tra

Tôi đã cài đặt gói theo hướng dẫn trên file INSTALL trong gói:

  1. ./configure
  2. làm
  3. làm séc -> chạy tự kiểm tra mà đến với gói (vượt qua thành công).
  4. make install

Sau khi thực hiện mà tôi thất bại trong việc chạy thử nghiệm của riêng tôi nên cuối cùng tôi quyết định sử dụng các ví dụ gói trong /usr/local/share/doc/check/example.

Did các lệnh sau:

$ autoreconf --install 
$ ./configure 
$ make 
$ make check 

Và vẫn cùng một vấn đề:

/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 

Cố gắng để thêm thư mục để LDFLAGS trong làm cho tập tin nhưng điều đó không giúp đỡ, cũng đã cố gắng để làm những gì Rick Hightower đã làm here (... xóa các tệp * .so (và các liên kết )) của tôi không biết cách xóa các liên kết

Trả lời

15

Thử chạy ldconfig (ví dụ: sudo ldconfig) để xây dựng lại bộ đệm trình liên kết thời gian chạy.

1

Trên hệ thống của tôi ít nhất (Debian), kiểm tra không được đóng gói như một thư viện được chia sẻ, bạn phải liên kết nó tĩnh, ví dụ:

gcc -o test_program test1.o test2.o /usr/lib/libcheck.a 
+1

Hoặc sử dụng '-lcheck'. –

+0

Ngoài ra, bạn có thể đặt dòng 'xuất LD_LIBRARY_PATH =/usr/lib/'(điều chỉnh đường dẫn đến vị trí cài đặt libcheck của bạn - nếu bạn đã cài đặt nó cho một người dùng có thể có trong/home/$ user/usr/lib/', ví dụ) trong' .bashrc' của bạn. Sau khi 'source ~/.bashrc'ing nó, nó sẽ hoạt động. Bằng cách này, nó cũng sẽ làm việc cho các dự án khác của bạn. – nlsdfnbch

0

dự án này sử dụng kiểm tra https://github.com/batousik/Practical-C2

  1. Đối với một số lý do một m4 thư mục được yêu cầu
  2. .travis.yml có hướng dẫn dependences
  3. sau khi nó được chạy script -
  4. configure .ac, makefile.am, src/makefile.am, tests/makefile.am là các tệp để xem