2014-05-11 8 views
5

Ich kompiliere courier-authlib-0.66.1, die Libtool zur Kompilierung verwendet. Ich habe alle Makefiles modifiziert, um CFLAGS und CXXFLAGS in --mode = link lines zu entfernen, weil ich einige Compiler-Flags für den Clam benutze, die den Linker verwirren.libtool Fehler während der Verknüpfung

Beim Übersetzen bekam ich folgende Fehlermeldung:

libtool: link: /usr/bin/nm -B .libs/authsasl.o .libs/authsaslcram.o .libs/authsasllogin.o .libs/authsaslplain.o .libs/authsaslfrombase64.o .libs/authsasltobase64.o | | /bin/sed 's/.* //' | sort | uniq > .libs/libcourierauthsasl.exp

./libtool: eval: line 1085: syntax error near unexpected token `|'

Offenbar gibt es zwei Bars in der Kommando- und ich soll einen von ihnen entfernen. Allerdings, wenn ich die libtool-Datei geöffnet und sprang auf Linie 1085, finde ich nur den folgenden Code

eval "$my_cmd"

Könnten Sie mir bitte sagen, wie die Ursache für diesen Fehler zu finden und lösen? Oder welche Dokumente könnten mir helfen? Vielen Dank!

Antwort

1

Das Problem ist gelöst. Ich stellte eine Frage in Couriers Mail-Liste und bekam eine sehr gute Antwort: http://sourceforge.net/p/courier/mailman/message/32327466/

Ich habe gerade den Schlüssel hier kopiert.

$ fgrep 'sort | uniq' libtool 
export_symbols_cmds="\$NM \$libobjs \$convenience | \$global_symbol_pipe | 
\$SED 's/.* //' | sort | uniq > \$export_symbols" 

Eigentlich ist die \ $ global_symbol_pipe Variable irgendwie fehlt, so dass ich es einfach entfernt werden. Natürlich ist es nur eine schmutzige Lösung ...

Verwandte Themen