2013-08-24 20 views
5

Mam zmienną zadeklarowaną w configure.ac:Automake: zmienna nie rozszerzył Solaris

MY_VERSION="0:0:0" 
AC_SUBST(MY_VERSION) 
AC_MSG_NOTICE([$MY_VERSION]) 

Wartość zmiennej jest drukowany prawidłowo podczas ./configure fazie.

W Makefile.am tam po linii:

libmylib_la_LDFLAGS = -version-info @[email protected] 

W linii komend łącznikowego rozpręża poprawnie "-version-info 0: 0: 0" na wszystkich systemach wyjątkiem Solaris. Na solaris (SunOS 5.10 Generic_141414-10 sun4u sparc SUNW, Sun-Blade-100) Otrzymuję "-version-info" bez numeru wersji.

Każdy pomysł, co mogło pójść nie tak?

+1

która wersja Autoconf jest w systemie Solaris? – Maquefel

+0

W jaki sposób budowana jest wersja systemu Solaris? Czy budujesz tarball dla Solaris na innym hoście, czy jest on budowany na samym Solarisie? – ldav1s

+1

Najpierw upewniam się, że twój skrypt konfiguracyjny właściwie ustawia tę zmienną. Prostym sposobem na zrobienie tego jest hakowanie w "set + x" i "set -x" wokół kodu w "configure". Następnie sprawdziłem wygenerowany plik config.status, aby sprawdzić, czy ustawienie jest tam poprawne. Czasami autoconf wyszukuje błąd dostawcy w sed lub awk, czy coś w tym stylu ... –

Odpowiedz

1

(Trochę strzał w ciemno tutaj, ale ...)

Moje przypuszczenie byłoby, że albo MY lub WERSJA się zdefiniowane w systemie Solaris z jakiegokolwiek powodu. Zamiast tego spróbuj w ten sposób powiedzieć M4, aby jednoznacznie to zdefiniować.

również jako Igor powiedział, użyj $(MY_VERSION) (chociaż to nie ma związku z tym.)

Powiązane problemy