소스에서 애플리케이션 설치


12

리눅스에서 모든 응용 프로그램의 일반 설치에 대해 궁금했습니다. 그리고 그게 무슨 뜻입니까? 글쎄, Windows를 사용할 때 응용 프로그램을 설치하려면 .exe 파일을 두 번 클릭 한 다음 다음, 다음, 다음을 알았습니다.

리눅스에서, 나는 응용 프로그램을 설치하는 일반적인 (일반적이지 않은) 방법이 있다는 것을 이해했습니다. 소스에서 설치 하시겠습니까? Windows와 같은 응용 프로그램을 설치하는 데 사용할 수있는 단계별 방법이 있습니까?

Google에 계속 묻고 싶지 않기 때문에 묻습니다. 어떻게해야합니까? 그래서, 나는 이 안내서의 소스 프리카 드에서 최근에 설치 했으며 일반적인 방법으로 시작하는 것이 좋을 것이라고 생각합니까?

그러나 올바른 소스를 찾을 수있는 곳과 응용 프로그램에 매우 독특한 설치 방법이있는 경우가 있습니다!


.tar.gz에서 설치하는 방법의 가능한 복제본?
Tachyons

아뇨, 제 질문은 분명합니다! 더 깊은 정보
가브리엘

답변:


14

autotools (automake 및 autoconf 포함) 및 cmake와 같은 잘 알려진 도구가 있지만 설치 지침은 프로그램마다 다릅니다.

프로그램은 다른 프로그래밍 언어로 제공 될 수 있으므로 모든 패키지에 적합한 일반 명령을 제공하기가 어렵습니다. 예를 들어, Python에는 종종 C 프로그램이 autotools 또는 최소한 Makefile을 사용하는 setup.py 스크립트가 있습니다.

나는 항상 INSTALL, README 또는 유사한 파일을 찾는 것으로 시작합니다. 소스에서 프로그램을 컴파일해야하는 경우 build-essential컴파일러 및 기타 일반 개발 패키지에 의존 하는 패키지가 필요할 수 있습니다 .

컴파일하려는 프로그램에 따라 다른 종속성을 설치해야 할 수도 있습니다. README에서 ./configure스크립트 의 출력 또는 추출 된 소스의 루트에있는 실행 파일을 확인하십시오. 예를 들어 "x11 개발 헤더"가 필요하다고 표시되면 리포지토리에서 "x11-dev"또는 "libx11-dev"를 찾으십시오 (이 경우 libx11-dev원하는 것).

autoconf / automake로 빌드 된 소스 배포는 다음을 사용하여 추출하고 구성 할 수 있습니다.

tar xf foo-1.0.tar.gz
cd foo-1.0
./configure
make
sudo make install

사용 ./configure --help가능한 옵션에 사용하십시오 . 기본적으로 파일은 종종 /usr/local완벽하게 설치됩니다 . 파일을 .deb 파일로 패키지하지 않을 경우이 접두사를 /usr패키지 관리 시스템 (dpkg)과 충돌 할 수 있으므로이 접두사를 변경하지 마십시오 .

makemake install파일을 지정된 위치에 설치 하는 모든 것을 컴파일하기 시작 합니다 ( sudo와 같은 권한있는 위치에 쓰는 데 필요합니다 /usr/local). 나중에 제거하려면 소스 디렉토리에서 실행 sudo make uninstall하십시오 (사용자가 아닌 개발자의 책임 인 autoconf / automake를 사용하여 패키지를 올바르게 빌드하는 경우).

컴퓨터의 소프트웨어 센터에서 패키지를 컴파일하는 데 관심이 있다면 다음과 같이 진행하십시오 ( package그리고 버전을 적절히 변경하십시오).

sudo apt-get build-dep package
apt-get source package
cd package-1.0
dpkg-buildpackage -b -uc -us

명령에 대한 자세한 내용은 해당 매뉴얼 페이지를 참조하십시오. (예 : man dpkg-buildpackage터미널에서 실행 ). 이 명령을 수행하면 상위 디렉토리에 .deb 파일이 생깁니다. 가능하다면 우분투 저장소의 패키지를 사용하는 것이 좋습니다. 위의 단계는 교육상의 이유로 표시되지만 일반적으로 패키지를 빌드하기 전에 일부 파일을 수정하려고합니다.


실제로 매우 도움이되는 유일한 방법은 패키지 (tar ??)를 다운로드 한 다음 내용을 추출하는 것입니다! 나중에 물어봐야합니다. 파일을 추출하고 위에서 언급 한 모든 명령을 실행하고 있습니다. 따라서 설치 파일은 내가 모든 명령을 수행 한 파일입니까? 또는 모든 응용 프로그램 파일 디렉토리는 센터에서 설치하거나 소스에서 설치하는 데 특정 적입니까? 명확하게하기 위해 /에서 원하는 위치에 응용 프로그램을 설치하고 싶습니다. opt 또는 / usr? 감사합니다
가브리엘

업데이트 된 게시물을 참조하십시오. 추출 및 변경 디렉토리는 모든 경우의 99 %입니다. .tar, .bz2, .xz와 같이 .tar 다음에 다양한 확장자가 표시 될 수 있습니다. 압축 형식을 나타냅니다. .zip은 파일 권한을 저장할 수 없기 때문에 일반적이지 않지만 7-zip 이상으로 표시됩니다. 참고 : 내 지침은 "소스에서 컴파일"에 대한보다 일반적인 지침입니다. 경로와 구성은 Ubuntu Software Center의 경로와 구성과 다릅니다.
Lekensteyn

따라서 어떤 디렉토리에서 ./configure로 작업하고 있는지 확인하고 설치하십시오. 예를 들어 id를 홈 디렉토리에서 다운로드하고 추출하면이 명령을 실행해야하며 make install 명령은 설치 파일을 자동으로 설치합니다. 특정 디렉토리 권리?
가브리엘

Windows "프로그램 파일"과 같은 특정 디렉토리가 없습니까?
가브리엘

tarball을 추출한 후 디렉토리를 추출 된 디렉토리로 변경하십시오. 정확한 위치는 중요하지 않습니다. 홈 디렉토리 또는 ~ / Downloads에서 할 수 있습니다. 대부분의 도구가 손상되므로 경로에 공백이 없어야합니다. 예를 들어, 완벽하게 괜찮은 ~/Downloaded Sources나쁜 아이디어 ~/Downloaded-sources입니다. 마지막 질문은 askubuntu.com/q/27213/6969
Lekensteyn의

7

FreeCAD는 Ubuntu Software Center에서 사용할 수 있으므로 소스 코드에서 빌드하고 설치할 필요가 없습니다.

우분투 소프트웨어 센터는 항상 가장 먼저보아야 할 곳입니다. 설치는 버튼을 클릭하기 만하면됩니다.

화면 왼쪽의 막대에 Ubuntu Software Center 아이콘이 있습니다.

소스에서 프로그램을 빌드하고 설치하려면 README 파일 또는 프로그램과 함께 제공되는 기타 지침을 찾으십시오.

많은 소프트웨어 패키지는 GNU autotools를 빌드 시스템으로 사용하며 다음 명령으로 빌드하고 설치할 수 있습니다.

./configure
make
sudo make install

프로그램을 빌드하기 전에 필요한 라이브러리 및 기타 종속성이 무엇인지 확인해야합니다 (프로그램 설명서에서도 언급해야 함). 에 packages.ubuntu.com 당신은 필요한 라이브러리를 포함 우분투 패키지를 찾을 수 있습니다.

프로그램에이라는 라이브러리가 필요하다고 가정하면 blah패키지를 설치해야 할 것입니다 libblah-dev(위에서 언급 한 우분투 패키지 페이지에서 정확한 이름 을 찾으십시오 ).

sudo apt-get install libblah-dev

HAHA, 예,이 아이콘을 알고 있습니다! 그러나 "정식 업데이트는 중요 업데이트를 제공하지 않습니다"라는 응용 프로그램의 소프트웨어 센터에 설명이 있고 freecad 버전은 0.8이고 freecad v0.13을 설치했습니다. 리눅스 시스템에 대한 더 깊은 지식을 원
하십니까

지금 당신은 바로 이야기! 그리고 정말 고마워요, 그것은 내가 원하는 더 깊은 지식입니다! 계속!
가브리엘

예, 소스에서 응용 프로그램을 설치하려면이 응용 프로그램의 사람들이 소스 코드를 제공해야합니까? 예를 들어, 상용 응용 프로그램을 설치하려는 경우 소스에서 설치할 수 없습니다. 이것은 어쨌든 오픈 소스 프로젝트입니까? 응용 프로그램은 상업적이 아닌 모든 사람을 위해 소스가 열려 있습니다.
가브리엘

"소스에서 응용 프로그램을 설치하려면이 응용 프로그램 담당자가 소스 코드를 제공해야합니까?" -물론입니다. " 소스에서 "라는 의미입니다! 오픈 소스가 아닌 상용 프로그램이라면 소스 코드를 얻지 못합니다.
Jesper

그렇기 때문에 대부분의 Windows 앱을 Linux에 설치할 수 없습니다.
가브리엘

2

기본 접근 방식은 두 가지입니다.

  1. 소프트웨어 센터 또는 관련 도구 (Synaptic apt-get, 등)를 사용하십시오. 이것은 일반적으로 가장 좋은 옵션입니다. 이 방법을 벗어나면 conlficts 및 업데이트와 같은 문제가 발생할 수 있으므로 수행중인 작업을 알고있는 경우에만 다른 작업을 수행해야합니다.
  2. 설명서를 읽고 설치에 사용하십시오. 프로젝트의 웹 사이트 나 tarball 또는 파일이있는 곳에서 찾을 수 있습니다. 또는 문서가 없을 수도 있습니다.이 경우 Google에 문의하거나 추측해야합니다. 소프트웨어를 설치하는 방법은 매우 다양합니다. 혼란 스러우면 1 번으로 돌아가십시오.

    패키지가 표준을 사용하는 경우 빌드 한 내용의 .deb를 얻는 데 ./configure; make; sudo make install사용할 수 있습니다 checkinstall. 그렇게하면 패키지 관리를 희생 할 필요가 없습니다.


예, 소프트웨어 센터 및 .deb 파일에 문제가 있기 때문에이 질문을했습니다. 예를 들어 draftsight, cad 프로그램을 설치하고 싶었지만 32 비트 전용입니다. 따라서 종속성 및 아키텍처 명령 무시로 시도했지만 아무것도 얻지 못했습니다. 예를 들어 .deb 파일의 압축을 풉니 다. 예를 들어 make 및 sudo make 등을 사용한 수동 설치? 감사합니다
gabriel

아키텍처에 사용할 수있는 .deb가 없으면 프로그램을 다른 방법으로 설치해야합니다. Google은 다른 사람이 수행 한 방식을 찾거나 적절한 아치가있는 .dev를 검색하거나 소스에서 빌드 할 수 있습니다. 중요한 내용은 다음 수정본을 참조하십시오.
Scott Severance

우리가 그 명령을 실행하기 전에 checkinstall? 그리고 무엇입니까, .deb가 나타 납니까? ((명령이 강조 표시되고 직원이 있습니까? .deb 다음 checkinstall 및 예를 들어 64 비트에서 실행되도록 하거나이 질문에 잘못하고 바보입니까?
가브리엘

checkinstall기존 .deb 패키지 에서는 사용할 수 없습니다 . .deb가 이미 있다면 기술적으로 압축을 풀고 수동으로 설치할 수 있지만 가장 좋은 방법은 아닙니다. checkinstall소스에서 빌드 할 때입니다. 서식 도움말에 대해서는 게시 할 때 항상 나타나는 도움말 링크를 참조하십시오.
Scott Severance

따라서 내가 가지고있는 64 비트와 다른 아키텍처의 .deb 파일은 압축을 푼 다음 수동으로 설치해서는 안되며 "소스에서 빌드 할 때입니다"라고 말할 때. .deb 파일은 어디에서 빌드 되었습니까? 소스에서 빌드 할 때와 동일한 소스 코드를 사용합니까?
가브리엘

0

소스에서 설치하는 것은 지원하기가 매우 어렵습니다.

가능하면 소프트웨어 센터에서 설치하십시오. 그것은 다음-> 다음-> 종료적인 사고 방식과 같습니다.

Windows에서도 소스의 것을 설치할 수 있습니다. 그것은 리눅스 고유의 것이 아니며, 더 많은 소스를 사용할 수있는 애플리케이션이 리눅스를 대상으로하는 것입니다.


1
글쎄, 난 단지 3 년 전 리눅스 경험에 뛰어 들고 싶고, 내가 원하는 것은 마침내 어떻게하고 어떻게해야하는지 묻지 않는 것입니다. 나에게 소스 등을 설명해 주시겠습니까?
가브리엘


? 응용 프로그램 소프트웨어 센터에서 설치하는 방법을 내 우분투에는 뎁이 없습니다 또한 때 그 때 나는 askubuntu.com 또는 '? 우분투 11.10이 설치 방법'google.gr '' ''에 물어 준비가 다시 오전
가브리엘

예. 응용 프로그램이 더 좋습니다. 특정 사용자를 위해 대상으로 재현 가능한 답변을 생성합니다. 따라서 그들은 유용합니다.
RobotHumans

글쎄, 그건 정말 도움이됩니다. 당신은 저를 느끼고 내가 원하는 것을주었습니다. 이런 식으로 어떤 방법으로도 불가능합니까?
가브리엘

0

우분투는 다양한 설치 방법을 제공합니다

  1. 중앙 집중식 포장 시스템을 통해

    이것은 우분투에서 선호되는 방법이지만 (개인적으로는 마음에 들지 않습니다) 소프트웨어 중심, 시냅스 및 적성은 시험 할 수 없습니다.

  2. 독립형 deb 패키지 :-이 방법은 Windows의 경우와 같이 더 간단합니다. 파일을 두 번 클릭하고 설치 버튼을 누르십시오. 예 : Gdebi 패키지 관리자

  3. 이진 소프트웨어 : 이들은 Windows .exe 설치와 매우 유사합니다. 설치 프로그램을위한 다양한 GUI를 제공합니다. 일반적으로 .bin 파일입니다.

    비트 락 또는 유사한 도구를 사용하여 그러한 packaes를 만들 수 있습니다

  4. autopackage 및 이와 유사한 도구 :-다양한 Linux 배포판을 지원하기 위해 만들어진 타사 패키지 관리자

  5. 소스 코드 :이 소프트웨어 설치의 첫 번째 방법입니다,이 방법에서 소스 코드는 바이너리 실행 파일로 변환됩니다

경고 :-이것은 나의 관찰 만입니다, 나는 리눅스의 초보자입니다.


글쎄, 내 경험으로는 소프트웨어 센터에서 일반적으로 앱에 대한 설명을 볼 수 있고 표준이 업데이트를 제공하면 센터에서 설치합니다. 인터넷 검색이 아니기 때문에이 질문을 게시 한 이유는 모든 대답이 ver helpfull.Thanks
gabriel

옵션 1은 3 및 4보다 훨씬 낫습니다. 자동으로 업데이트를받을 수 있기 때문입니다. 원하는 패키지 또는 버전이 리포지토리에없는 경우 옵션 2가 적합합니다 (옵션 1). 패키지 관리의 놀라운 이점을 모두 활용하지 못하고 갈등을 초래할 수 있으므로 가능하면 숫자 3과 4를 사용하지 마십시오. Autopackage는 자체 패키지 관리를 수행하지만 여전히 별도의 시스템이며 충돌 및 오래된 항목이있을 가능성이 있습니다. 그리고 프로그래머가 아니라면 소스를 구축하지 마십시오. 패키지 관리는 훌륭합니다!
Scott Severance

내 인터넷 연결이 sloooow이기 때문에 이러한 방법을 선호합니다 : p
Tachyons
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.