문제

나는 프로젝트에서 작업하는 것이와 함께 배포할 수 있는 GNU autoconf/automake,그리고 나는 설정의 bash 스크립트는 전화 awk 스크립트가 있습니다.고 싶 bash 스크립트 끝에$경로,하지만 awk 스크립트가 있습니다.어떻게 해야 삽입으로 이러한 프로젝트가 있습니까?들에 넣어와 다른 바이너리?

또한,이 있을 결정하는 방법이 최종 파일의 위치는 설치 후?나는/usr/local/bin 지 는 실행 파일을 끝까지...

도움이 되었습니까?

해결책

추가이 Makefile.이

scriptsdir = $(prefix)/bin
scripts_DATA = awkscript1 awkscript2

이 경우에는 그것이 설치 awkscript 달러(prefix)/bin(사용할 수도 있습$(bindir)).

참고:라는 것을 잊지해야하는 첫 번째 이름이 될 이름+dir(스크립트->scriptsdir)그리고 두 번째 이름 이어야 합+_DATA(스크립트->scripts_DATA).

다른 팁

할 수 있습니다 그냥 목록의 스크립트를 원하는 설치 Makefile.동:

bin_SCRIPTS = foo bar

이는 원인이 될 것이 foo 및 바 설치할 동안게 설치합니다.경로를 얻을 최종 위치,당신은 당신을 사용할 수 있습@bindir@에 foo.을 수 있도록 구성 구축 foo 습니다.예를 들어,구성할 수 있습니다.ac:

AC_CONFIG_FILES([foo bar])

다음 foo.에서:

#!/bin/sh

prefix=@prefix@
exec_prefix=@exec_prefix@
bindir=@bindir@
echo bindir = $bindir

유지 하는 마음에 실행하는 사람을 구성을 지정할 수 있습의--prefix,--exec_prefix,또는 --bindir 고 설치할 수 있습으로 DESTDIR.기술을 사용하여 여기서 설명한 DESTDIR 것입니다하지 않고 스크립트가 있는 위치에 설치되어 이외의 다른 경로는 것입니다.이것은 의도적인 것이며,올바른 행동으로 일반적으로 DESTDIR 설치를 만드는 데 사용되 tarball 는 것이 결국에 압축을 푼으로 파일시스템에서 같은 방법으로는 bindir 에서 스크립트가 유효합니다.

요나단이 응답하여,귀하의 추가적인 질문:하려는 경우의 값을 대체 접두사에서의 시간을 구축해야 합니다:

  1. 이름을 변경하는 스크립트'처'가'노.에'
  2. 는 규칙을 추가하여 구성합니다.ac 를 생성하는 그것이 바닥에
  3. 매크로를 사용하여 만든 나라 AS_AC_EXPAND
  4. 이를 다음과 같이 사용:

    AS_AC_EXPAND(BINDIR,$bindir)

  5. 에서 당신의'노.에,당신은 지금 사용할 수 있습니다@BINDIR@고 그것을 얻을 것이 확장하는 전체 경로로 스크립트 끝날 것이 설치되고 있습니다.

참고는 당신이 사용하지 말아야하는 접두사를 직접 설치 디렉토리할 수 있는 잠재적으로 변화될 그래서 당신이 정말로 원하는 값을 사용하여 전달되는 구성에 대한 bindir 확장합니다.

는 경우 awk 스크립트로 가지 않을 것이다 주요 bin 디렉토리(prefix/bin)다음 필요하신 장소들에서 적절한 하위 디렉터리-아마의 lib 하지만 가능성이 libexec 거나 공유기 때문에(awk 스크립트가 아마 플랫폼 중성).

정:소프트웨어는 반드시 하지 않습니다 결국에서는/usr/local/bin;내 컴퓨터에서,/usr/local/bin 에 의해 관리 MIS 모든 소프트웨어를 설치 따라서 아래가/usr/gnu/.나는 사용:./configure--prefix=/usr/gnu 을 얻는 소프트웨어가 설치되어 있는 곳에 나가고 싶습니다.

포함할 수 있는 값의 접두사에서 bash--스크립트 효과적으로,당신은'compile'스크립트를 포함한 설치 위치에 있습니다.알고 있어야하는 동안 문제를 구축 테스트-당신이해야 할 수 있습을 찾는 스크립트 현재 디렉터리에 상대적 먼저 상대를 PREFIX 니다.

일부에 대해 조언이 Automake 설명서.그것은 보인다는 이 방법을 생성하는 스크립트와 메이크 오히려 이상으로 구성 스크립트입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top