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

資料を参照して、以下を使用して、少なくともFreeBSDBSD展開用にコンパイルしてインストールできる必要があります。/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パスを指定する必要があります。

関連情報