Cancel subscription, please. Von meinem iPhone gesendet > Am 27.06.2024 um 09:49 schrieb r-sig-mac-requ...@r-project.org: > > Send R-SIG-Mac mailing list submissions to > r-sig-mac@r-project.org > > To subscribe or unsubscribe via the World Wide Web, visit > https://stat.ethz.ch/mailman/listinfo/r-sig-mac > or, via email, send a message with subject or body 'help' to > r-sig-mac-requ...@r-project.org > > You can reach the person managing the list at > r-sig-mac-ow...@r-project.org > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of R-SIG-Mac digest..." > > > Today's Topics: > > 1. Re: procedure to ship libomp.dylib run-time with package > (Bram Boeckx) > 2. Re: procedure to ship libomp.dylib run-time with package > (Bram Boeckx) > > ---------------------------------------------------------------------- > > Message: 1 > Date: Wed, 26 Jun 2024 07:36:39 +0000 > From: Bram Boeckx <bram.boe...@kuleuven.be> > To: "Sparapani, Rodney via R-SIG-Mac" <R-SIG-Mac@r-project.org> > Subject: Re: [R-SIG-Mac] procedure to ship libomp.dylib run-time with > package > Message-ID: <72b3dab6-6b6f-46bf-921e-6b4de2130...@kuleuven.be> > Content-Type: text/plain; charset="utf-8" > > Dear, > > Thanks for your message, > I'm currently on paternity leave until 23th of July and cannot respond to > your email. Please contact my colleagues if you have questions or need > assistance. > > Best Wishes, > > Bram > > On 25 Jun 2024, at 14:20, Sparapani, Rodney via R-SIG-Mac > <R-SIG-Mac@r-project.org> wrote: > > Hi Tim: > > /usr/local/lib it seems. See the following page > https://mac.r-project.org/openmp/ > > -- > Rodney Sparapani, Associate Professor of Biostatistics, He/Him/His > Vice President, Wisconsin Chapter of the American Statistical Association > Institute for Health and Equity, Division of Biostatistics > Medical College of Wisconsin, Milwaukee Campus > > If this is outside of working hours, then please respond when convenient. > > From: R-SIG-Mac <r-sig-mac-boun...@r-project.org> on behalf of Timothy Bates > <tim.ba...@ed.ac.uk> > Date: Monday, June 24, 2024 at 4:00 PM > To: R list <R-SIG-Mac@r-project.org> > Subject: [R-SIG-Mac] procedure to ship libomp.dylib run-time with package > ATTENTION: This email originated from a sender outside of MCW. Use caution > when clicking on links or opening attachments. > ________________________________ > > At > https://urldefense.com/v3/__https://mac.r-project.org/openmp/__;!!H8mHWRdzp34!4HZ0uFxJQ121gF_TnX99OuMlgIXM600pq8wCbWruoLsdLTtaFgRB5_gMopCtxD0N9M4tUOO-7hBGADHx1sk$<https://urldefense.com/v3/__https:/mac.r-project.org/openmp/__;!!H8mHWRdzp34!4HZ0uFxJQ121gF_TnX99OuMlgIXM600pq8wCbWruoLsdLTtaFgRB5_gMopCtxD0N9M4tUOO-7hBGADHx1sk$> > it says > "any package you compile against libomp.dylib will need that run-time so you > have to ship it with your package or have users install it” > > Are there any instructions on what to do/where to put libomp.dylib so it > will be found? > > I’ve compiled a package (OpenMx) in which OpenMP is working locally but other > users get the error: > > require(OpenMx) > Error: package or namespace load failed for ‘OpenMx’ in dyn.load(file, > DLLpath = DLLpath, ...): > unable to load shared object > '/Users/***/Library/R/x86_64/4.4/library/OpenMx/libs/OpenMx.so': > > dlopen(/Users/***/Library/R/x86_64/4.4/library/OpenMx/libs/OpenMx.so, > 0x0006): Library not loaded: > /Library/Frameworks/R.framework/Versions/4.3-x86_64/Resources/lib/libomp.dylib > > > The University of Edinburgh is a charitable body, registered in Scotland, > with registration number SC005336. Is e buidheann carthannais a th’ ann an > Oilthigh Dhùn Èideann, clàraichte an Alba, àireamh clàraidh SC005336. > _______________________________________________ > R-SIG-Mac mailing list > R-SIG-Mac@r-project.org > https://urldefense.com/v3/__https://stat.ethz.ch/mailman/listinfo/r-sig-mac__;!!H8mHWRdzp34!4HZ0uFxJQ121gF_TnX99OuMlgIXM600pq8wCbWruoLsdLTtaFgRB5_gMopCtxD0N9M4tUOO-7hBGdICDldE$<https://urldefense.com/v3/__https:/stat.ethz.ch/mailman/listinfo/r-sig-mac__;!!H8mHWRdzp34!4HZ0uFxJQ121gF_TnX99OuMlgIXM600pq8wCbWruoLsdLTtaFgRB5_gMopCtxD0N9M4tUOO-7hBGdICDldE$> > > [[alternative HTML version deleted]] > > _______________________________________________ > R-SIG-Mac mailing list > R-SIG-Mac@r-project.org > https://stat.ethz.ch/mailman/listinfo/r-sig-mac > > [[alternative HTML version deleted]] > > > > ------------------------------ > > Message: 2 > Date: Wed, 26 Jun 2024 10:18:20 +0000 > From: Bram Boeckx <bram.boe...@kuleuven.be> > To: Prof Brian Ripley via R-SIG-Mac <R-SIG-Mac@r-project.org> > Subject: Re: [R-SIG-Mac] procedure to ship libomp.dylib run-time with > package > Message-ID: <9b5f82f3-b07b-4a05-9ed1-419cd6924...@kuleuven.be> > Content-Type: text/plain; charset="utf-8" > > Dear, > > Thanks for your message, > I'm currently on paternity leave until 23th of July and cannot respond to > your email. Please contact my colleagues if you have questions or need > assistance. > > Best Wishes, > > Bram > > On 26 Jun 2024, at 11:57, Prof Brian Ripley via R-SIG-Mac > <R-SIG-Mac@r-project.org> wrote: > > On 26/06/2024 06:41, Balamuta, James wrote: > Tim, > Unfortunately, there isn't a nice way of including OpenMP for macOS within a > package. One potential avenue would be to use a `configure.ac` file to check > for whether OpenMP headers are present on the macOS computer and, then, allow > the correct OpenMP compilation flags to be set. However, this requires the > user to compile from source instead of using a CRAN binary. > > Package installation also requires the libomp.dylib, and to know where to > find it both when linking and loading. > > Unfortunately, there isn't going to be an easier way as OpenMP on macOS with > R is experimental by nature. > > Rather, macOS makes it deliberately hard, but those instructions are not > current. > > - The standard way for the macOS linker to record paths to a dependent dylib > is as an absolute path. E.g. (arm64) > > % otool -L library/stats/libs/stats.so > library/stats/libs/stats.so: > stats.so (compatibility version 0.0.0, current version 0.0.0) > > /Library/Frameworks/R.framework/Versions/4.4-arm64/Resources/lib/libRlapack.dylib > (compatibility version 4.4.0, current version 4.4.1) > ... > > That is a location that is not writeable to an end user. However, it appears > that R 4.4.1 for arm64 ships with a bi-arch libomp.dylib there. > > auk2% file `R RHOME`/lib/libomp.dylib > /Library/Frameworks/R.framework/Resources/lib/libomp.dylib: Mach-O universal > binary with 2 architectures: [x86_64:Mach-O 64-bit dynamically linked shared > library x86_64] [arm64:Mach-O 64-bit dynamically linked shared library arm64] > /Library/Frameworks/R.framework/Resources/lib/libomp.dylib (for architecture > x86_64): Mach-O 64-bit dynamically linked shared library x86_64 > /Library/Frameworks/R.framework/Resources/lib/libomp.dylib (for architecture > arm64): Mach-O 64-bit dynamically linked shared library arm64 > > So it is likely that libomp.dylib is already available somewhere that will be > searched at both link and load times. (omp.h needs to be put in a suitable > place, e.g. /usr/local/include for Intel, but that needs admin privileges. > That is only needed at compilation, so could be put anywhere and -I > specified.) > > - Another issue: That page provides multiple copies on libomp.dylib: how > could package installation know which is appropriate? I do not know which > one was shipped with R, nor how find out. But it suggests shipping one with > a package would be unsafe. > > It seems the OP asked the wrong question: apparently he distributed a package > built with R 4.3.x, and someone tried to use it on 4.4.x. R binary packages > are tied to an R x.y series (as the manual would have told you). > > I was able to build OpenMx with OpenMP on arch64 by using > > PKG_CPPFLAGS = -Xclang -fopenmp -I/path/to/omp.h > > PKG_LIBS= -lomp \ > ... > > (Caveat: for OpenMx, <omp.h> is used so the -I adds to the system include > path and there is danger of conflicts. Best to use a separate directory for > the OpenMP headers.) > > And please comply with the posting guide, not send HTML and not mangle URLs. > > Best regards, > James > ________________________________ > From: R-SIG-Mac <r-sig-mac-boun...@r-project.org> on behalf of Timothy Bates > <tim.ba...@ed.ac.uk> > Sent: Tuesday, June 25, 2024 10:00 PM > To: Kasper Daniel Hansen <kasperdanielhan...@gmail.com>; Sparapani, Rodney > <rspar...@mcw.edu> > Cc: R list <R-SIG-Mac@r-project.org> > Subject: Re: [R-SIG-Mac] procedure to ship libomp.dylib run-time with package > Thanks Kasper, > I read those lines and had installed the openmp software as instructed. It > all works fine for me. But users don’t have my usr/ folder, not can a package > write to their usr/ folder. > so what is confusing is how the user will get this lib. Where should make > place libraries like libomp within the package so that if a user merely > install.packages() it, the library will be found and loaded? > Best, tim > Sent from Outlook for > iOS<https://urldefense.com/v3/__https://aka.ms/o0ukef__;!!DZ3fjg!_OUXHENJ_6aGlU-humThmTaUR5okhDKW2EGEY49AjJ4AN8eXBWtZCWE3O01pnyxbRpGQDhCl8MMLThVBbUXDuipI$ > > > ________________________________ > From: Kasper Daniel Hansen <kasperdanielhan...@gmail.com> > Sent: Tuesday, June 25, 2024 11:34:42 AM > To: Sparapani, Rodney <rspar...@mcw.edu> > Cc: Timothy Bates <tim.ba...@ed.ac.uk>; R list <R-SIG-Mac@r-project.org> > Subject: Re: [R-SIG-Mac] procedure to ship libomp.dylib run-time with package > This email was sent to you by someone outside the University. > You should only click on links or attachments if you are certain that the > email is genuine and the content is safe. > If you read the next couple of sentences on that page, it says > The following are links to libomp OpenMP run-time built from official LLVM > release sources using Xcode compilers. They are signed and support macOS > 10.13 (High Sierra) and higher. All tar-balls contain the system tree > usr/local/lib and usr/local/include so the recommended installation is to > type in Terminal: > curl -O > https://urldefense.com/v3/__https://mac.r-project.org/openmp/openmp-14.0.6-darwin20-Release.tar.gz__;!!DZ3fjg!_OUXHENJ_6aGlU-humThmTaUR5okhDKW2EGEY49AjJ4AN8eXBWtZCWE3O01pnyxbRpGQDhCl8MMLThVBbWfUKf7B$ > sudo tar fvxz openmp-14.0.6-darwin20-Release.tar.gz -C / > I think that is pretty clear? Note the -C / as part of the last line, that > tells tar where to put it on the system. > On Tue, Jun 25, 2024 at 8:20 AM Sparapani, Rodney via R-SIG-Mac > <r-sig-mac@r-project.org<mailto:r-sig-mac@r-project.org>> wrote: > Hi Tim: > /usr/local/lib it seems. See the following page > https://urldefense.com/v3/__https://mac.r-project.org/openmp/__;!!DZ3fjg!_OUXHENJ_6aGlU-humThmTaUR5okhDKW2EGEY49AjJ4AN8eXBWtZCWE3O01pnyxbRpGQDhCl8MMLThVBbaQGheD_$ > -- > Rodney Sparapani, Associate Professor of Biostatistics, He/Him/His > Vice President, Wisconsin Chapter of the American Statistical Association > Institute for Health and Equity, Division of Biostatistics > Medical College of Wisconsin, Milwaukee Campus > If this is outside of working hours, then please respond when convenient. > From: R-SIG-Mac > <r-sig-mac-boun...@r-project.org<mailto:r-sig-mac-boun...@r-project.org>> on > behalf of Timothy Bates <tim.ba...@ed.ac.uk<mailto:tim.ba...@ed.ac.uk>> > Date: Monday, June 24, 2024 at 4:00 PM > To: R list <R-SIG-Mac@r-project.org<mailto:R-SIG-Mac@r-project.org>> > Subject: [R-SIG-Mac] procedure to ship libomp.dylib run-time with package > ATTENTION: This email originated from a sender outside of MCW. Use caution > when clicking on links or opening attachments. > ________________________________ > At > https://urldefense.com/v3/__https://mac.r-project.org/openmp/__;!!H8mHWRdzp34!4HZ0uFxJQ121gF_TnX99OuMlgIXM600pq8wCbWruoLsdLTtaFgRB5_gMopCtxD0N9M4tUOO-7hBGADHx1sk$<https://urldefense.com/v3/__https:/mac.r-project.org/openmp/__;!!H8mHWRdzp34!4HZ0uFxJQ121gF_TnX99OuMlgIXM600pq8wCbWruoLsdLTtaFgRB5_gMopCtxD0N9M4tUOO-7hBGADHx1sk$> > it says > "any package you compile against libomp.dylib will need that run-time so you > have to ship it with your package or have users install it” > Are there any instructions on what to do/where to put libomp.dylib so it > will be found? > I’ve compiled a package (OpenMx) in which OpenMP is working locally but other > users get the error: > require(OpenMx) > Error: package or namespace load failed for ‘OpenMx’ in dyn.load(file, > DLLpath = DLLpath, ...): > unable to load shared object > '/Users/***/Library/R/x86_64/4.4/library/OpenMx/libs/OpenMx.so': > dlopen(/Users/***/Library/R/x86_64/4.4/library/OpenMx/libs/OpenMx.so, > 0x0006): Library not loaded: > /Library/Frameworks/R.framework/Versions/4.3-x86_64/Resources/lib/libomp.dylib > > There is a version mismatch here .... > > -- > Brian D. Ripley, rip...@stats.ox.ac.uk > Emeritus Professor of Applied Statistics, University of Oxford > > _______________________________________________ > R-SIG-Mac mailing list > R-SIG-Mac@r-project.org > https://stat.ethz.ch/mailman/listinfo/r-sig-mac > > [[alternative HTML version deleted]] > > > > ------------------------------ > > Subject: Digest Footer > > _______________________________________________ > R-SIG-Mac mailing list > R-SIG-Mac@r-project.org > https://stat.ethz.ch/mailman/listinfo/r-sig-mac > > > ------------------------------ > > End of R-SIG-Mac Digest, Vol 255, Issue 11 > ******************************************
_______________________________________________ R-SIG-Mac mailing list R-SIG-Mac@r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-mac