I am trying to install GATE on Ubuntu 16.04 at the (make -j4) step I got:

/usr/bin/ld: cannot find -lPostscript
/usr/bin/ld: cannot find -lPhysics
collect2: error: ld returned 1 exit status
CMakeFiles/Gate.dir/build.make:16728: recipe for target 'Gate' failed
make[2]: *** [Gate] Error 1
CMakeFiles/Makefile2:68: recipe for target 'CMakeFiles/Gate.dir/all' failed
make[1]: *** [CMakeFiles/Gate.dir/all] Error 2
Makefile:127: recipe for target 'all' failed
make: *** [all] Error 2

how can I find "Postscript" and "Physics"?


From man ld:

   -l namespec
       Add the archive or object file specified by namespec to the list of files to link.
       This option may be used any number of times.  If namespec is of the form :filename, ld
       will search the library path for a file called filename, otherwise it will search the
       library path for a file called libnamespec.a.

       On systems which support shared libraries, ld may also search for files other than
       libnamespec.a.  Specifically, on ELF and SunOS systems, ld will search a directory for
       a library called libnamespec.so before searching for one called libnamespec.a.  (By
       convention, a ".so" extension indicates a shared library.)  Note that this behavior
       does not apply to :filename, which always specifies a file called filename.

So, the files your looking for are libPhysics.so, libPhysics.a, libPostscript.so and libPostscript.a.

I can't find these files in the Ubuntu package archive, so I guess they were intended to be set up via earlier steps.

Check your work (did you type the command correctly, did the command work?) on the previous steps.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.