BSD용으로 fIcy를 컴파일하는 방법은 무엇입니까?

BSD용으로 fIcy를 컴파일하는 방법은 무엇입니까?

fIcy(https://gitlab.com/wavexx/fIcy) NetBSD/FreeBSD용.

make 명령을 실행해도 아무 일도 일어나지 않습니다. 오류 메시지도 없습니다.

동일한 소스 코드 패키지가 Debian 10에서 문제 없이 컴파일됩니다.

Makefile은 BSD와 호환됩니까?

https://gitlab.com/wavexx/fIcy/blob/master/Makefile

지금까지 FreeBSD 12에서 사용한 명령은 다음과 같습니다.

pkg install gcc
wget https://gitlab.com/wavexx/fIcy/-/archive/master/fIcy-master.tar.gz
tar xfvz fIcy-master.tar.gz
cd fIcy-master
make

type make
make is /usr/bin/make

답변1

GNU make를 다음과 같이 사용해야 합니다.읽어보기.rst설명하다:

pkg install gmake

다른 종속성이 설치된 경우 다음을 실행해야 합니다.

gmake all

( g첫 글자를 주목하세요.)

저에게는 효과적이지만 오류 메시지가 있으면 게시/수정해 주세요.

/참고: GNU make와 FreeBSD make는 호환되지 않습니다. 그들은 다음과 같이 사용될 수 있습니다POSIX가 활성화됩니다.그러나 다른 확장자가 있습니다. /

답변2

@uzsolt의 답변은 확실합니다. 설명된 방법을 사용하여 컴파일된 코드입니다. 그러나 대상에는 Makefile이 패치가 필요한 것 같습니다 install.

--- Makefile    2019-01-29 07:21:44.000000000 -0800
+++ Makefile    2019-07-24 11:50:40.204021000 -0700
@@ -40,7 +40,7 @@
        rm -f $(all_OBJECTS) $(all_DEPS) $(TARGETS)

 install: $(TARGETS)
-       install -p -t $(DESTDIR)$(PREFIX)/bin/ $(TARGETS)
+       install -p $(TARGETS) $(DESTDIR)$(PREFIX)/bin/


 # Dependencies

패치를 적용한 후 다음 명령을 사용하여 컴파일된 바이너리를 설치할 수 있습니다.

sudo gmake install

답변3

문서를 참조하면 다음을 사용하여 FreeBSD최소한 BSD 배포용으로 컴파일하고 설치할 수 있어야 합니다 ./usr/local/

make CXX=eg++ PREFIX=/usr/local/ install

gcc버전이 3.0 이상인지 확인하세요 .

기록에 따르면,설치부분선적 서류 비치:

fIcy에는 gcc 및 GNU make를 사용하는 모든 시스템에서 작동하는 매우 간단한 Makefile이 함께 제공됩니다. 문서는 rst2html을 사용하여 이러한 파일에서 생성됩니다. 재배치 설치를 위한 DESTDIR/PREFIX를 포함하여 모든 표준 환경 플래그가 지원됩니다. 다른 컴파일러(예: OpenBSD)를 사용해야 하는 경우 다음과 같이 make를 호출할 수 있습니다.

make CXX=eg++ PREFIX=/usr install

Makefile을 수동으로 변경하는 대신. gcc를 사용할 때 fIcy를 컴파일하려면 최소한 g++ >= 3이 필요합니다. 또한 "fPls"가 제대로 작동하려면 fIcy를 "PATH"에 설치하거나 -P를 사용하여 전체 fIcy 경로를 지정해야 합니다.

관련 정보