[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[dennou-ruby:003353] Re: ruby-lapack-1.3 released
- To: dennou-ruby@xxxxxxxxxxx
- Subject: [dennou-ruby:003353] Re: ruby-lapack-1.3 released
- From: Seiya Nishizawa <seiya@xxxxxxxxxxxxxx>
- Date: Sun, 8 May 2011 09:47:49 +0900
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:sender:in-reply-to:references:from :date:x-google-sender-auth:message-id:subject:to:content-type :content-transfer-encoding; bh=+/Cl7OLjm1xXXkqx8JkY8DY99QdOGnZ1y0dPm077v/I=; b=Iur5x/iP8lXtR68zG0XhQwyhIxQWKVydHa2JmzsuAkDucRigMJ6MtCVqFqfZYSxqUu KvpCbyWGu7mo9MLgHaFwuPjtpDuwMBNqzg8M4H2M7Aj4dWTSufOLIZHglt+0DvsIC3XM hlKINzBF6Fdsk026o7Ezor6NM4aUN6m3AE8yc=
- Sender: seiyani@xxxxxxxxx
山本様
ありがとうございます。
取り込んで、リポジトリにアップしておきました。
2011/5/3 Hiroki Yamamoto <hiroki@xxxxxxxxxxxxxxxxxx>:
> ruby-lapack-1.5で
> Mac OSX では rake でのインストールにいくつか問題がありましたのでご報告します。
> #gem からのインストールは未確認です。
>
> Mac OSX (ruby 1.8.7 (2011-02-18 patchlevel 334) [i686-darwin10]) では
> rake 時に
> 1. lapack.so が lapack.bundle という名前で作られるので lapack.so がないといってこける
> rake install 時に
> 2. dst = File.join(destdir, archdir, target_prefix) で destdir が nil だと joinできないと言われてこける
> 3. install lib, dst, :mode => 644 だと実行されるのが install -c -m 01204 になってる
>
> これらは以下のように Rakefile を書き換えると回避できました。
>
> diff -u Rakefile.orig Rakefile
>
> --- Rakefile.orig 2011-05-02 11:14:40.000000000 +0900
> +++ Rakefile 2011-05-03 23:23:11.000000000 +0900
> @@ -14,9 +14,15 @@
>
> NAME = "lapack"
> LIBS = FileList["lib/#{target_prefix}/*rb"]
> +
> +case Config::CONFIG["host_os"]
> +when /darwin/
> +DLLIB = "ext/#{NAME}.bundle"
> +so_file = File.join("lib", target_prefix, "#{NAME}.bundle")
> +else
> DLLIB = "ext/#{NAME}.so"
> so_file = File.join("lib", target_prefix, "#{NAME}.so")
> -
> +end
>
> task :default => so_file
>
> @@ -47,17 +53,26 @@
> task :install => [:install_so, :install_rb]
>
> task :install_so => DLLIB do
> +if destdir then
> dst = File.join(destdir, archdir, target_prefix)
> +else
> + dst = File.join(archdir, target_prefix)
> +end
> +p dst
> mkdir_p dst
> install DLLIB, dst, :mode => 0755
> end
>
> task :install_rb => LIBS do
> - dst = File.join(destdir, libdir, target_prefix)
> +if destdir then
> + dst = File.join(destdir, archdir, target_prefix)
> +else
> + dst = File.join(archdir, target_prefix)
> +end
> mkdir_p dst
> - LIBS.each do |lib|
> - install lib, dst, :mode => 644
> - end
> + LIBS.each do |lib|
> + install lib, dst, :mode => 0644
> + end
> end
>
> CLEAN.include("ext/*.o")
--
Seiya Nishizawa
Center for Planetary Science, Kobe University
TEL : 078-803-6472
FAX : 078-803-5731