On Mar 23, 2025, at 4:25?PM, Simon Urbanek <simon.urbanek at R-project.org> wrote:
Naresh,
please ignore all "advice" you go so far - most of it was wrong. From your earlier reports it looks like your system is messed up which the the core of the problem - please remove 3rd party libraries from your path (like homebrew, macports, /opt/local etc.) as that will interfere with the builds. You can tell that you have a serious mess by the fact that it's showing a *different* QuantLib version in the configure step than the one you downloaded so you have unrelated scripts on your PATH so everything will break.
So to start from scratch:
1) move aside everything from /usr/local, e.g.
sudo mkdir /usr/local/.away
sudo mv /usr/local/* /usr/local/.away/
2) create /opt/R/$(uname -m) and make you the owner
sudo mkdir -p /opt/R/$(uname -m)
sudo chown $USER /opt/R
3) remove all non-system paths from PATH and prepend /opt/R/$(uname -m). Since we nuked /usr/local you may want to add R itself:
export PATH=/opt/R/$(uname -m)/bin:/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/Library/Frameworks/R.framework/Resources/bin
Now run install.libs("QuantLib") as before (as you, not root).
Install the package you care about (I presume RQuantLib). The best way to know what's going on is to install locally as it allows you to inspect config.log if something goes wrong, i.e.
# in R:
download.packages("RQuantLib",".",type='source')
# in the shell
tar fxz RQuantLib_*
R CMD INSTALL RQuantLib
if something goes wrong you'll have RQuantLib/config.log to look at. Note that you should not need any extra flags like --with-boost-include since they are already in the location they are supposed to be.
Once you're happy, you can move back /usr/local/ if you still need it, e.g.
sudo mv /usr/local/.away/* /usr/local/
Cheers,
Simon
On Mar 24, 2025, at 5:36 AM, Naresh Gurbuxani <naresh_gurbuxani at hotmail.com> wrote:
To give credit to Simon, at https://mac.r-project.org/bin instructions include a note that ?If you do not have write permission, you may need to make it writeable or run sudo R.?
I ran sudo R and was able to install and download boost.
~ $ ls /opt/R/x86_64/include/
boost itclInt.h tcl.h tclTomMathDecls.h
fakemysql.h itclIntDecls.h tclDecls.h tdbc.h
fakepq.h itclMigrate2TclCore.h tclOO.h tdbcDecls.h
fakesql.h itclTclIntStubsFcn.h tclOODecls.h tdbcInt.h
itcl.h mysqlStubs.h tclPlatDecls.h tk.h
itcl2TclOO.h odbcStubs.h tclThread.h tkDecls.h
itclDecls.h pqStubs.h tclTomMath.h tkPlatDecls.h
~ $
However, I am still not able to install RQuantLib. It does not find boost.
install.packages("RQuantLib", type = "source", lib = .libPaths()[2], configure.args = c("--with-boost-include=/opt/R/x86_64/include/boost"), configure.vars = c("CPPFLAGS='-DQL_HIGH_RESOLUTION_DATE'"))
trying URL 'https://cran.r-project.org/src/contrib/RQuantLib_0.4.24.tar.gz'
Content type 'application/x-gzip' length 195836 bytes (191 KB)
==================================================
downloaded 191 KB
* installing *source* package ?RQuantLib? ...
** package ?RQuantLib? successfully unpacked and MD5 sums checked
** using staged installation
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C++... yes
checking whether clang++ -arch x86_64 -std=gnu++17 accepts -g... yes
checking for clang++ -arch x86_64 -std=gnu++17 option to enable C++11 features... none needed
checking how to run the C++ preprocessor... clang++ -arch x86_64 -std=gnu++17 -E
checking whether the compiler supports GNU C++... (cached) yes
checking whether clang++ -arch x86_64 -std=gnu++17 accepts -g... (cached) yes
checking for clang++ -arch x86_64 -std=gnu++17 option to enable C++11 features... (cached) none needed
checking for R... yes
checking for quantlib-config... yes
checking for suitable QuantLib version... yes (1.36)
checking for Boost development files... no
configure: error: Boost development files not found
ERROR: configuration failed for package ?RQuantLib?
* removing ?/Library/Frameworks/R.framework/Versions/4.4-x86_64/Resources/library/RQuantLib?
The downloaded source packages are in
?/private/var/folders/nb/2vppcjgd19l_h9brvzgdjcm40000gn/T/Rtmp7YHJMO/downloaded_packages?
Warning message:
In install.packages("RQuantLib", type = "source", lib = .libPaths()[2], :
installation of package ?RQuantLib? had non-zero exit status
On Mar 23, 2025, at 10:44?AM, Peter Dalgaard <pdalgd at gmail.com> wrote:
You'd need to change the "-C /" in the tar command. I trust Simon enough to just run the script as root, though...
-pd
On 23 Mar 2025, at 14.37, Naresh Gurbuxani <naresh_gurbuxani at hotmail.com> wrote:
Peter,
In install.libs(), there is no argument for setting location where boost or other packages are installed. How can I select a different directory to install boost using install.libs()?
Thanks,
Naresh
On Mar 23, 2025, at 7:55?AM, Naresh Gurbuxani <naresh_gurbuxani at hotmail.com> wrote:
notes $ which tar
/opt/local/libexec/gnubin/tar
notes $ tar --version
tar (GNU tar) 1.35
Copyright (C) 2023 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Written by John Gilmore and Jay Fenlason.
notes $
I use MacPorts package manager to install most software. For R, I switched to manual install because, with MacPorts data.table could not pick up openmp support.
Using uppercase J as suggested by Rodney successfully downloaded boost on my computer. But it cannot install. Below are first few lines of messages:
install.packages("RQuantLib", lib = .libPaths()[2], repos = "https://cran.r-project.org", type = "source", configure.args = c("--with-boost-include=/opt/local/libexec/boost/1.76/include/"), configure.vars = c("CPPFLAGS='-DQL_HIGH_RESOLUTION_DATE'"))
trying URL 'https://cran.r-project.org/src/contrib/RQuantLib_0.4.24.tar.gz'
Content type 'application/x-gzip' length 195836 bytes (191 KB)
==================================================
downloaded 191 KB
* installing *source* package ?RQuantLib? ...
** package ?RQuantLib? successfully unpacked and MD5 sums checked
** using staged installation
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C++... yes
checking whether clang++ -arch x86_64 -std=gnu++17 accepts -g... yes
checking for clang++ -arch x86_64 -std=gnu++17 option to enable C++11 features... none needed
checking how to run the C++ preprocessor... clang++ -arch x86_64 -std=gnu++17 -E
checking whether the compiler supports GNU C++... (cached) yes
checking whether clang++ -arch x86_64 -std=gnu++17 accepts -g... (cached) yes
checking for clang++ -arch x86_64 -std=gnu++17 option to enable C++11 features... (cached) none needed
checking for R... yes
checking for quantlib-config... yes
checking for suitable QuantLib version... yes (1.36)
checking for Boost development files... no
configure: error: Boost development files not found
ERROR: configuration failed for package ?RQuantLib?
* removing ?/Library/Frameworks/R.framework/Versions/4.4-x86_64/Resources/library/RQuantLib?
The downloaded source packages are in
?/private/var/folders/nb/2vppcjgd19l_h9brvzgdjcm40000gn/T/RtmpKL66sI/downloaded_packages?
Warning message:
In install.packages("RQuantLib", lib = .libPaths()[2], repos = "https://cran.r-project.org", :
installation of package ?RQuantLib? had non-zero exit status
In terminal
notes $ ls /opt/local/libexec/boost/1.76/include/
boost
On Mar 23, 2025, at 6:21?AM, peter dalgaard <pdalgd at gmail.com> wrote:
Oddly, this doesn't happen here, even though I also tar xj instead of xJ ot the .xz file.
Any chance you two could be picking up a different tar? I am seeing
PeterDaardsiMac:ISwR pd$ which tar
/usr/bin/tar
PeterDaardsiMac:ISwR pd$ tar --version
bsdtar 3.5.3 - libarchive 3.5.3 zlib/1.2.12 liblzma/5.4.3 bz2lib/1.0.8
and "man tar" claims that j and J options are "c mode only" so presumably ignored and tar gets the compression type from the input itself.
-pd
On 22 Mar 2025, at 15.53, Sparapani, Rodney via R-SIG-Mac <r-sig-mac at r-project.org> wrote:
Hi Naresh:
I?m seeing the same error message. And it makes sense
because the boost tar-ball is compressed with xz and
not bzip2. On line 87 of install.R, we have the following?
if (system(paste("curl", "-sSL", shQuote(u), "|", "tar fxj - -C /")) < 0)
Little j means bzip2 while big J is xz. So try substituting?
if (system(paste("curl", "-sSL", shQuote(u), "|", "tar fxJ - -C /")) < 0)
--
Rodney Sparapani, Associate Professor of Biostatistics
President, Wisconsin Chapter of the American Statistical Association
Division of Biostatistics, Data Science Institute
Medical College of Wisconsin, Milwaukee Campus
From: R-SIG-Mac <r-sig-mac-bounces at r-project.org> on behalf of Naresh Gurbuxani <naresh_gurbuxani at hotmail.com>
Date: Saturday, March 22, 2025 at 8:02?AM
To: r-sig-mac at r-project.org <r-sig-mac at r-project.org>
Subject: [R-SIG-Mac] install.libs error
Downloading + installing https://mac.R-project.org/bin/darwin20/x86_64/boost-1.86.0-darwin.20-x86_64.tar.xz$<https://mac.R-project.org/bin/darwin20/x86_64/boost-1.86.0-darwin.20-x86_64.tar.xz%20$> ...
bzip2: (stdin) is not a bzip2 file.
tar: Child died with signal 13
tar: Error is not recoverable: exiting now
curl: (23) Failure writing output to destination, passed 8192 returned 0
[[alternative HTML version deleted]]