I am building testdisk as static and run

make static

it returns the following error

/usr/bin/ld: cannot find -luuid

collect2: ld returned 1 exit status

What's the problem?

In the makefile I have the following line

LIBS = -lz -lntfs -luuid -lcrypto -lext2fs -lcom_err

and I am getting error on all the floowing flags

-luuid -lcrypto -lext2fs -lcom_err

  • 1
    Do you have libuuid.a library installed? Commented Sep 7, 2010 at 7:34
  • 2
    If you don't the debian/ubuntu package that contains it is called uuid-dev
    – msw
    Commented Sep 7, 2010 at 7:45
  • I have libuuid.so in /usr/lib but not libuuid.a. How to install it.
    – MA1
    Commented Sep 7, 2010 at 7:49
  • I am using Fedora 13.
    – MA1
    Commented Sep 7, 2010 at 7:51

2 Answers 2


The RPM packages for libuuid-devel for Fedora 13 appear to contain only the shared library. Therefore you'd have to build it from source if you need a static library.

I expect that this is the same problem with a static -lcrypto and the others.

However, if it is TestDisk specifically that you are trying to compile, you probably shouldn't bother as the partition repair utility is part of most LiveCD distributions, including Fedora.


The rationale is given by resolution of Red Hat bug report 596898. Essentially, static libraries are strongly discouraged, as they force at least relinking if/when a bug is fixed. They consume disk and memory space, particularly for commonly used functionality.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .