0
Rubyの経験はほとんどありません。私は簡単な自作式を作成しようとしていました。私は、次の構造自家製のC++式を構築する
.
├── Makefile
└── test.cpp
0 directories, 2 files
と簡単なテストプロジェクトを持っていた。そして、私は、次の.rb
式ファイルを持っている
class Testbrew < Formula
desc ""
homepage ""
url ""
version ""
head ""
sha256 ""
def install
# system "make"
# system("g++ -std=c++14 -O3 test.cpp -o testbrew")
system "g++", "-std=c++14",
"-O3",
"-Wall",
"-Werror",
"-Wextra",
"-pedantic",
"-Wvla",
"test.cpp",
"-o testbrew"
bin.install "testbrew"
ohai("Done!")
end
end
ここで紛らわしい部分は、最初の2をインストールするsystem
仕事の行をコメントしていることですパッケージだが、3番目の理由はありませんか?私は三行目をしようとすると、私はエラーフォローなども
==> g++ -std=c++14 -O3 -Wall -Werror -Wextra -pedantic -Wvla test.cpp -o testbrew
Error: No such file or directory - testbrew
を取得し、関数呼び出しsystem()
は、ユーザーが行うことができないことがあり、特定の物事は何ですか?つまり、セキュリティの制限が課されていますか(たとえば、ptrace
)?
'system'があなたの' bash_profile'を認識しません、ので、多分 'testbrew'は' PATH'に追加取得されていない、それが定期的にありませんように。たぶん絶対パスを渡してみてください。 @stackoverflow.com/questions/28555822/how-do-i-make-rubys-system-call-aware-of-my-bash-profile-aliases –
@maxpleを参照してください.2番目の 'システム) 'コールは同じ状況で働く? 2番目のファイルは正常に動作し、 'bin.install'は必要なディレクトリにコピーすることができます – Curious
dunno。がんばろう –