# emerge -pv net-misc/unison These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild N ] net-misc/unison-2.27.57 USE="gtk threads -debug -doc -static" 0 kB Total: 1 package (1 new), Size of downloads: 0 kB ... Linking unison ocamlopt -verbose -I lwt -I ubase -I +lablgtk2 -o unison unix.cmxa str.cmxa lablgtk.cmxa ubase/projectInfo.cmx ubase/myMap.cmx ubase/safelist.cmx ubase/uprintf.cmx ubase/util.cmx ubase/rx.cmx ubase/uarg.cmx ubase/prefs.cmx ubase/trace.cmx lwt/pqueue.cmx lwt/lwt.cmx lwt/lwt_util.cmx lwt/lwt_unix.cmx case.cmx pred.cmx uutil.cmx fileutil.cmx name.cmx path.cmx fspath.cmx fingerprint.cmx abort.cmx osx.cmx props.cmx fileinfo.cmx os.cmx lock.cmx clroot.cmx common.cmx tree.cmx checksum.cmx terminal.cmx transfer.cmx xferhint.cmx remote.cmx globals.cmx copy.cmx stasher.cmx update.cmx files.cmx sortri.cmx recon.cmx transport.cmx strings.cmx uicommon.cmx uitext.cmx test.cmx main.cmx pixmaps.cmx uigtk2.cmx linkgtk2.cmx osxsupport.o pty.o -cclib -lutil Cannot find file lablgtk.cmxa make: *** [unison] Error 2 * * ERROR: net-misc/unison-2.27.57 failed. * Call stack: * ebuild.sh, line 49: Called src_compile * environment, line 2116: Called die * The specific snippet of code: * emake -j1 $myconf CFLAGS="" || die "error making unsion" * The die message: * error making unsion * * If you need support, post the topmost build error, and the call stack if relevant. * A complete build log is located at '/tmp/portage/net-misc/unison-2.27.57/temp/build.log'. * The ebuild environment file is located at '/tmp/portage/net-misc/unison-2.27.57/temp/environment'. *
Created attachment 148937 [details] emerge --info
emerge -pv lablgtk please
Works only if dev-ml/lablgtk is emerged with ocamlopt flag.
Indeed, adding the ocamlopt USE flag resolves this. But I think that, apart from this bug report, I would never have found out myself. Therefore, I would suggest that, when a specific USE flag is necessary, the ebuild output tells you so. In this case, when emerging unison, it would have been helpful when we had gotten the error message: "It appears that you have a version of lablgtk installed that was built without the ocamlopt USE flag. Without this flag, unison will not build. Please rebuild lablgtk with the ocamlopt USE flag and try again"