어떻게 소프트웨어 패키지를 만들 수 있습니까? 것을 우리의 소프트웨어 타르 볼 사용자를 추출 후 일반적인 단계를 수행 할 수 있습니다 : (마지막 두 단계에 필요한 Makefile을 생성합니다) 구성 스크립트를 만들유닉스/리눅스에서 소프트웨어 패키지를 만드는 방법
$ gunzip < mycode.tar.gz | tar xvf -
$ ./configure
$ make
$ make install
어떻게 소프트웨어 패키지를 만들 수 있습니까? 것을 우리의 소프트웨어 타르 볼 사용자를 추출 후 일반적인 단계를 수행 할 수 있습니다 : (마지막 두 단계에 필요한 Makefile을 생성합니다) 구성 스크립트를 만들유닉스/리눅스에서 소프트웨어 패키지를 만드는 방법
$ gunzip < mycode.tar.gz | tar xvf -
$ ./configure
$ make
$ make install
이해하기 어려운 GNU/Autools 대신 CMake를 사용할 수 있습니다.
http://www.cmake.org/cmake/help/examples.html
예컨대 KDE에서 사용 중입니다.
사용 autotools를 다음과 타르볼을 모든 코드와 자료가 포함되어 있습니다.
GNU autoconf/automake 툴체인을 살펴보십시오. Here's a free tutorial/book.
rpmbuild가 rpm 패키지 옛날에
을 구축 할 수있는 명령입니다,이 과정은 손에 의해 수행되었다. 각
Makefile
은 수작업으로 작성되었습니다 (
make
파일은 일종의 스크립트로 사용됩니다). 이것은 이식성에 관한 문제가되어
configure
스크립트가 작성되었습니다.
./configure
스크립트는 프로젝트별로 작성되었습니다. 결국 이는 GNU가
autotools
패키지를 사용하여 자동화했습니다. 이것은
autoconf
,
automake
및 기타 몇 가지로 구성됩니다. 대안이 존재하지만, 특히
make
의 경우,
autotools
이 가장 널리 사용됩니다. ... 적어도 GNU/Linux 시스템에서. 대안으로 이미 언급 한
CMake,
Boost.Build,
Boost.Jam,
SCons 등이 있습니다.
Autotools.
configure.ac 및 Makefile.am 스크립트를 작성해야합니다.
Configure.ac은 매우 쉽고 소스 코드에서 'autoscan'을 실행하면 대부분 자동 생성 될 수 있습니다. 그러면 최종 configure.ac 파일을 생성하기 위해 조정해야하는 'configure.scan'파일이 생성됩니다.
Automake.am 파일은 모두 규칙을 기반으로합니다. 이 을 설치해야합니다 = nodist 대
AUTOMAKE_OPTIONS = foreign subdir-objects
AM_CXXFLAGS = -std=c++11 -static-libstdc++ -Wall -Werror \
-Wfatal-errors -I blah
AM_LDFLAGS = blah
bin_PROGRAMS = mybinary
mybinary_SOURCES = \
blah.h blah.cc
:처럼 당신은 아마 뭔가를해야합니다
dist_noinst_DATA는 빌드에 필요하지만 설치되지 않은 데이터 파일 용입니다.
당신은 당신이 일반적으로 같은 것을 실행해야하는 파일을 모두 일단 : automake는이 설정을
이 건물에 필요한 파일을 autotools를 & &의 autoconf를-없는 --add
& autoheader & & & aclocal을합니다. 이것을 쉘 스크립트에 넣고 ./configure를 실행하기 전에 실행할 수 있습니다.
링크 된 맨 페이지를 읽었을 때 내가 묻는 질문에 대답하는 것 같지 않습니다. 처음에는 플랫폼 유연한 빌드를 어떻게 제공합니까? (예 : configure 및 makefile 작성) rpmbuild 당신이 그 자리에 그런 것을 가지고 있다고 가정하는 것처럼 보입니다. – dmckee
아마 내가 질문을 오해 한 것 같습니다. http://www.lrde.epita.fr/~adl/autotools.html – Sharique