c# free pdf viewer : Add page numbers to pdf document in preview control software platform web page windows azure web browser R-admin6-part786

AppendixC:Platformnotes
56
CXXFLAGS="-xO5 -xlibmil l -nofstore e -features=tmplrefstatic"
CXXPICFLAGS=-Kpic
FC=sunf95
FCFLAGS=$FFLAGS
FCPICFLAGS=-Kpic
LDFLAGS=-L/opt/sunstudio12.1/rtlibs/amd64
SHLIB_LDFLAGS=-shared
SHLIB_CXXLDFLAGS=-G
SHLIB_FCLDFLAGS=-G
SAFE_FFLAGS="-O5 -libmil"
-m64couldbeadded,butwasthedefault. Donotuse-fast: seethewarningsunderSolaris.
(TheC++optionsarealsoexplainedunderSolaris.)
Others have e found on at t least some e versions of ‘ix86’ Linux that t the configure e flag
--disable-largefile was s needed d (since glob.h h onthat platform m presumed gcc was s being
used).
C.3 OSX
Theinstructionsherearefor‘x86_64’buildson10.9(Mavericks)orlater.InprincipleRcanbe
builtfor10.4to10.8andforotherCPUs,butthesehasnotbeentestedrecently.
To build d R R you u need d Apple’s ‘Command Line Tools’: : these e can be (re-)installed by
xcode-select--install. (If f you have a fresh OS installation, running e.g. make in a ter-
minal willofferthe installationof thecommand-line tools. . If f youhaveinstalled Xcode, this
providesthecommand-linetools.ThetoolswillneedtobereinstalledwhenOSXisupgraded,
asupgradingpartiallyremovesthem.)
AnXsub-systemisrequiredunlessconfiguringusing--without-x:seehttps://xquartz.
macosforge.org/.(NotethatXQuartzwilllikelyneedtobere-installedafteranOSupgrade.)
Tousethequartz()graphicsdeviceyouneedtoconfigurewith--with-aqua(whichisthe
default): quartz()thenbecomesthedefault t devicewhenrunningR attheconsole andX11
wouldonlybeusedforthecommand-line-Rdataeditor/viewerandoneversionofTcl/Tk.(This
needsanObjective-Ccompiler
4
whichcancompilethesourcecodeofquartz().)
Use--without-aquaifyouwantastandardUnix-alikebuild:apartfromdisablingquartz()
andtheabilitytousethebuildwithR.app,italsochangesthedefaultlocationofthepersonal
library(see?.libPaths).Alsouse--disable-R-frameworktoinstallinthestandardlayout.
Variouscompilerscanbeused. Thecurrent
CRAN
distributionofRisbuiltusing
CC=clang
CXX=clang++
F77=gfortran-4.8
FC=$F77
OBJC=clang
CFLAGS=-Wall -mtune=core2 2 -g -O2
CXXFLAGS=-Wall -mtune=core2 -g -O2’
OBJCFLAGS=-Wall -mtune=core2 2 -g g -O2
F77FLAGS=-Wall -g -O2
FCFLAGS=$F77FLAGS
with clang g and d clang++ + from m the e ‘Command d Line Tools’ and the Fortran compiler from
https://r.research.att.com/libs/gfortran-4.8.2-darwin13.tar.bz2.
5
4
ThesedaysthatisdefinedbyApple’simplementationofclang,soitisstronglyrecommendedtousethat.
5
This is a a tarball l which needs s to be unpacked in n the Terminal by e.g. sudotar-zxfgfortran-4.8.2-
darwin13.tar.bz2-C/. ItdoesnotrunonCore2DuoMacs.
Add page numbers to pdf document in preview - insert pages into PDF file in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Guide C# Users to Insert (Empty) PDF Page or Pages from a Supported File Format
add pages to pdf preview; add pages to pdf
Add page numbers to pdf document in preview - VB.NET PDF Page Insert Library: insert pages into PDF file in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Easy to Use VB.NET APIs to Add a New Blank Page to PDF Document
add pages to pdf reader; add pdf pages to word document
AppendixC:Platformnotes
57
Otherbuildsofgfortranareavailable:seehttps://gcc.gnu.org/wiki/GFortranBinaries
andhttp://coudert.name/software.html. Touseoneofthesewithabinarydistributionof
Ryouwillprobablyneedtospecifythenameor pathinapersonalorsite Makevarsfile(see
Section6.3.3[Customizingpackagecompilation],page25).
Morerecentandcompletedistributions ofclangareusuallyavailablefromhttp://llvm.
org/releases/. Inparticular,theseincludesupportforthe‘AddressSanitizer’(notincluded
byAppleuntilXcode7)andforOpenMP
6
inversion3.7.0andlater.
Pre-compiledversionsofmanyoftheSectionA.2[Usefullibraries andprograms],page38,
areavailable fromhttps://r.research.att.com/libs/. . Youwillmostlikely y wantatleast
pcre,xz,jpegandreadline(andperhapstiff). Commandpkg-configisnotprovidedby
Appleandusefulformanypackages: itwillalsobeusedifpresentwhenconfiguringtheX11()
device.
Support for cairo (without Pango) canbe enabled d in two ways: : bothneed d pkg-config
available. XQuartzshipscairoanditsversionwillbeselectedifits s pkg-configfilesarefirst
ontheconfigurationpath: forexamplebysetting
export PKG_CONFIG_PATH=/opt/X11/lib/pkgconfig:/usr/local/lib/pkgconfig:/usr/lib/pkgconfig
or appending g that t variable to o the e configure command. . Otherwise e the e binary y libraries at
https://r.research.att.com/libs/ canbeused: : cairo,fontconfig, , freetype,pixman
andpkgconfig-system-stubs-darwin13.tar.gzareneeded,pluslibpngforPNGsupport.
TheAcceleratelibrarycanbeusedvia theconfigurationoptions
--with-blas="-framework Accelerate" " --with-lapack
toprovidepotentiallyhigher-performanceversionsofthe
BLAS
andLAPACKroutines.
7
Lookingatthetopof/Library/Frameworks/R.framework/Resources/etc/Makeconfwill
showthecompilersandconfigurationoptionsusedforthe
CRAN
binarypackageforR:atthe
timeofwriting
--enable-memory-profiling
wasused.
Configureoption--with-internal-tzcodeisthedefaultonOSX,asthesystemimplemen-
tationoftimezonesdoesnotworkcorrectlyfortimesbefore1902orafter2037(despiteusing
a64-bittime_t).
The T
E
X implementation used by y the developers is MacTeX (https://www.tug.org/
mactex/): thefullinstallationis s about 4GB,but asmaller versionis availableat t https://
www.tug.org/mactex/morepackages.html: youwillneedtoaddsomepackages,e.g.forthe
2015versionweneededtoaddcm-super,helvetic,inconsolataandtexinfowhichbroughtthisto
about410MB.‘TeXLiveUtility’(availablevia theMacTeXfrontpage)providesagraphical
meanstomanageT
E
Xpackages.
OneOSXquirkisthatthedefaultpathhas /usr/local/binafter/usr/bin,contraryto
commonpracticeonUnix-alikes.Thismeansthatifyouinstalltoolsfromthesourcestheywill
bydefaultbeinstalledunder/usr/localandnotsupersedethesystemversions.
IfyouupgradeyourOSyoushouldre-installthe‘CommandLineTools’andmay needto
re-installXQuartzandJava(thishasbeenneededforsomeupgradesbutnotothers).
C.3.1 ElCapitan
Thereareproblemsresultingfromthenew-to-El-CapitanrestrictionthatonlyAppleisallowed
toinstallsoftwareunder /usr: : this s affects inter r alia a MacTeX X andXQuartz. . For r MacTeX it is
necessarytoinclude/Library/TeX/texbininyourpathratherthan/usr/texbin.Upgrading
6
ThisalsoneedstheOpenMPruntime,whichisdistributedseparatelyatthatsite.
7
Itisreportedthatforsomenon-AppletoolchainsCPPFLAGSneededtocontain-D__ACCELERATE__.
C# Create PDF Library SDK to convert PDF from other file formats
offer them the ability to count the page numbers of generated document in C#.NET using this PDF document creating toolkit, if you need to add some text
add page to pdf without acrobat; add and delete pages in pdf
C# Word - Word Create or Build in C#.NET
also offer them the ability to count the page numbers of generated using this Word document adding control, you can add some additional Create Word From PDF.
add page to pdf online; add page to pdf preview
AppendixC:Platformnotes
58
willmovedisallowedfilestounder/Library/SystemMigration/usr:thisincludes/usr/X11R6,
/usr/texbin,/usr/bin/R,/usr/bin/Rscriptbutnotthelink/usr/X11.
configurecanbetoldtolookforX11inXQuartz’smainlocationof/opt/X11,e.g.by
--x-includes=/opt/X11/include --x-libraries=/opt/X11/lib
althoughthelinkedversionsunder/usr/X11willbefound(ifthelinkispresent).
C.3.2 Tcl/Tkheadersandlibraries
IfyouplantousethetcltkpackageforR,youneedtoinstalladistributionofTcl/Tk.There
aretwoalternatives.IfyouuseR.appyouwillwanttouseX11-basedTcl/Tk(asusedonother
Unix-alikes),whichisinstalledaspartoftheCRANbinaryforR.Thismayneed
-with-tcltk=/usr/local/lib
or
--with-tcl-config=/usr/local/lib/tclConfig.sh
--with-tk-config=/usr/local/lib/tkConfig.sh
NotethatthisrequiresamatchingXQuartzinstallation.
Thereis alsoanative(‘Aqua’)versionofTcl/TkwhichproduceswidgetsinthenativeOS
Xstyle: thiswillnotworkwithR.appbecauseofconflictsovertheOSXmenu,butforthose
onlyusingcommand-lineRthisprovidesamuchmoreintuitiveinterfacetoTkforexperienced
Macusers. Most t versions ofOSXcomewithAquaTcl/Tk libraries,butthesearenotatall
recentversionsofTcl/Tk(8.5.9inElCapitan,whichisnoteventhelatestpatchedversionin
thatseries). ItisbettertoinstallTcl/Tk8.6.xfromthesourcesorabinarydistributionfrom
https://www.activestate.com/activetcl/downloads.ConfigureRwith
--with-tcl-config=/Library/Frameworks/Tcl.framework/tclConfig.sh
--with-tk-config=/Library/Frameworks/Tk.framework/tkConfig.sh
(fortheversionsbundledwithOSX,usepathsstartingwith/System/Library).
IfyouneedtofindoutwhichdistributionofTkisinuseatruntime,use
library(tcltk)
tclvalue(.Tcl("tk windowingsystem")) ) # # "x11" " or "aqua"
C.3.3 Java
ThesituationwithJavasupportonOSXismessy.
8
OSXnolongercomeswithaninstalledJavaruntime(JRE),andanOSXupgraderemoves
oneifalreadyinstalled:itisintendedtobeinstalledatfirstuse.CheckifaJREisinstalledby
runningjava-versioninaTerminalwindow: ifJavaisnotinstalledthisshouldpromptyou
toinstallit. YoucanalsoinstalldirectlythelatestJavafromOracle(currentlyfromhttp://
www.oracle.com/technetwork/java/javase/downloads/index.html).
YoumayneedtoinstallwhatApplecalls‘legacyJava’
9
tosuppresspop-upmessagesevenif
youhaveacurrentversioninstalled.
ToseewhatcompatibleversionsofJavaare currently installed,run/usr/libexec/java_
home-V-ax86_64. Ifneeded,settheenvironmentvariableJAVA_HOMEtochoosebetweenthese,
bothwhenRisbuiltfromthesourcesandwhenRCMDjavareconfisrun.
Configuringandbuilding Rbothlooks for aJREandfor support for compiling JNIpro-
grams(usedbypackagesrJava(https://CRAN.R-project.org/package=rJava)andJavaGD
(https://CRAN.R-project.org/package=JavaGD));thelatterrequiresaJDK(JavaSDK)and
notjustaJRE.
8
Formoredetailsseehttp://www.macstrategy.com/article.php?3.
9
e.g.JavaForOSX2015-001fromhttps://support.apple.com/kb/DL1572.
C# PowerPoint - PowerPoint Creating in C#.NET
offer them the ability to count the page numbers of generated in C#.NET using this PowerPoint document creating toolkit, if you need to add some text
add page number pdf file; add contents page to pdf
C# Word - Word Creating in C#.NET
offer them the ability to count the page numbers of generated document in C#.NET using this Word document creating toolkit, if you need to add some text
add pages to pdf acrobat; adding page numbers to a pdf file
AppendixC:Platformnotes
59
The buildprocesstriestofathomoutwhat JRE/JDKtouse,but itmayneedsome help,
e.g.bysettingJAVA_HOME. AnAppleJREcanbespecifiedexplicitlybysomethinglike
JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Home
JAVA_CPPFLAGS="-I/System/Library/Frameworks/JavaVM.framework/Headers"
JAVA_LD_LIBRARY_PATH=
JAVA_LIBS="-framework JavaVM"
TheOracleJDKcanbespecifiedexplicitlybysomethinglike
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_72.jdk/Contents/Home
JAVA_CPPFLAGS="-I/${JAVA_HOME}/include -I/${JAVA_HOME}/include/darwin"
JAVA_LD_LIBRARY_PATH="${JAVA_HOME}/jre/lib/server"
JAVA_LIBS="-L/${JAVA_HOME}/jre/lib/server -ljvm"
inconfig.site.
Notethatitisnecessarytosettheenvironmentvariable NOAWTto1toinstallmanyofthe
Java-usingpackages.
C.3.4 Frameworks
The
CRAN
buildofRisinstalledasaframework,whichisselectedbythedefaultoption
./configure --enable-R-framework
(This is s intended d to be usedwithanApple e toolchain: : other r compilers s may y not t support
frameworkscorrectly.)
It is s only needed if f you want to build R for use with the R.app p console, , and implies
--enable-R-shlibtobuildRasadynamiclibrary. ThisoptionconfiguresRtobebuiltand
installedasaframework calledR.framework. . Thedefaultinstallationpathfor r R.framework
is /Library/Frameworks but this can be changed at configure time by specifying the flag
--enable-R-framework[=DIR](or--prefix)oratinstalltimevia
make prefix=/where/you/want/R.framework/to/go install
Notethatinstallationasaframeworkisnon-standard(especiallytoanon-standardlocation)
andUnixutilitiesmaynotsupportit(e.g.thepkg-configfilelibR.pcwillbeputsomewhere
unknowntopkg-config).
C.3.5 BuildingR.app
NotethatbuildingtheR.appGUIconsoleisaseparateproject,usingXcode.Beforecompiling
R.appmakesurethecurrentversionofRisinstalledin/Library/Frameworks/R.framework
andworkingatthecommand-line(thiscanbeabinaryinstall).
Thecurrentsourcescanbecheckedoutby
svn co https://svn.r-project.org/R-packages/trunk/Mac-GUI
andbuiltbyloadingtheR.xcodeprojproject(selecttheRtargetandasuitableconfiguration),
orfromthecommand-linebye.g.
xcodebuild -target R R -configuration n Release
See also o the INSTALL file in the checkout or r directly at t https://svn.r-project.org/
R-packages/trunk/Mac-GUI/INSTALL.
R.appdoesnotneedtobeinstalledinanyspecificway.BuildingR.appresultsintheR.app
bundle whichappearsas one Ricon. . This s applicationbundle canberunanywhere anditis
customarytoplaceitinthe/Applicationsfolder.
C# Excel - Excel Creating in C#.NET
also offer them the ability to count the page numbers of generated in C#.NET using this Excel document creating toolkit, if you need to add some text
adding pages to a pdf; adding page numbers to pdf in
AppendixC:Platformnotes
60
C.4 Solaris
RhasbeenbuiltsuccessfullyonSolaris10(bothSparcand‘x86’)usingthe(zerocost)Oracle
SolarisStudiocompilers: therehasbeensomesuccesswithgcc4/gfortran. (RecentSunma-
chinesareAMDOpteronsorIntelXeons(‘amd64’)ratherthan‘x86’,but32-bit‘x86’executables
arethedefault.)
TherehavebeenfewreportsonSolaris11,withnoknownextraissues. Solaris9andearlier
arenowsooldthatitisunlikelythatRisstillusedwiththem,andtheywillnotbeconsidered
here.
TheSolarisversions ofseveralofthetoolsneededtobuildR (e.g.make,arandld)arein
/usr/ccs/bin,soifusingthosetools ensurethisisinyourpath. . Aversionofthepreferred
GNU
taris(ifinstalled)in/usr/sfw/bin. Itmaybenecessarytoavoidthetoolsin/usr/ucb:
POSIX-compliantversionsofsometoolscanbefoundin/usr/xpg4/binand/usr/xpg6/bin.
AlargeselectionofOpenSourcesoftwarecanbeinstalledfromhttps://www.opencsw.org,
bydefaultinstalledunder /opt/csw. . Solaris10shipswithbzlib b version1.0.6(sufficientfor
thedefault--with-system-bzlib)butzlibversion1.2.3(toooldfor --with-system-zlib):
OpenCSWhas1.2.8.
Youwillneed
GNU
libiconvandreadline: theSolarisversionoficonvisnotsufficiently
powerful.
ThenativemakesufficestobuildRbutasmallnumberofpackagesrequire
GNU
make(some
without good d reasonandwithout t declaringit as ‘SystemRequirements’ ’ inthe DESCRIPTION
file).
Some people havereportedthat theSolaris libintlneeds tobeavoided, for exampleby
using --disable-nls or --with-included-gettext or using libintl fromOpenCSW. (On
theotherhand,therehavebeenmanysuccessfulinstallswhichautomaticallydetectedlibintl
fromOpenCSWorselectedtheincludedgettext.)
ThesupportfortheC99longdoubletypeonSparchardwareusesquad-precisionarithmetic,
andthisisusuallyslowbecauseitisdonebysoftwareemulation.Onsuchsystemstheconfigure
option--disable-long-doublecanbeusedforfasterbutlessaccuratecomputations.
The Solaris time-zoneconversionservices seemtobeunreliablepre-1916inEurope(when
daylight-savingstimewasfirstintroduced):mostoftenreportinginthenon-existentDSTvari-
ant. Usingconfigureoption--with-internal-tzcodeisrecommended,andrequiredifyou
findtime-zoneabbreviationsbeinggivenoddvalues(ashasbeenseenon64-bitbuildswithout
it).
WhenusingtheOraclecompilers
10
donot specify-fast,asthisdisables
IEEE
arithmetic
andmakecheckwillfail.
IthasbeenreportedthatsomeSolarisinstallationsneed
INTERNET_LIBS="-lsocket -lnsl"
ontheconfigurecommandlineorinfileconfig.site;however,therehavebeenmanysuc-
cessfulinstallswithoutthis.
Alittle jugglingof paths was neededtoensure
GNU
libiconv(in/usr/local)wasused
ratherthantheSolarisiconv:
CC="cc -xc99"
CFLAGS="-O -xlibmieee"
F77=f95
FFLAGS=-O
CXX="CC -library=stlport4"
10
includinggccforSparcfromOracle.
AppendixC:Platformnotes
61
CXXFLAGS=-O
FC=f95
FCFLAGS=$FFLAGS
FCLIBS="-lfai -lfsu"
R_LD_LIBRARY_PATH="/usr/local/lib:/opt/csw/gcc4/lib:/opt/csw/lib"
For a a 64-bit target add d -m64 to the e compiler macros and d use e something like
LDFLAGS=-L/usr/local/lib/sparcv9 or LDFLAGS=-L/usr/local/lib/amd64 as s appropriate.
Itwillalsobenecessarytopointpkg-configatthe64-bitdirectories,e.g.oneof
PKG_CONFIG_PATH=/opt/csw/lib/amd64/pkgconfig:/usr/lib/amd64/pkgconfig
PKG_CONFIG_PATH=/opt/csw/lib/sparcv9/pkgconfig:/usr/lib/sparcv9/pkgconfig
andtospecifya64-bitJavaVMbye.g.
JAVA_CPPFLAGS="-I${JAVA_HOME}/../include -I${JAVA_HOME}/../include/solaris"
JAVA_LD_LIBRARY_PATH=${JAVA_HOME}/lib/amd64/server
JAVA_LIBS="-L${JAVA_HOME}/lib/amd64/server \
-R${JAVA_HOME}/lib/amd64/server -ljvm"
WithSolarisStudio12.[23]onSparc,FCLIBSneedstobe
FCLIBS="-lfai -lfai2 2 -lfsu"
(andpossiblyotherFortranlibraries,butthissufficesforthepackagescurrentlyonCRAN).
Currently‘amd64’and‘sparcv9’buildswork out-of-the-boxwithSunStudio12u1butnot
SolarisStudio12.2and12.3:libRblas.soandlapack.soaregeneratedwithcodethatcauses
relocationerrors(whichisbeinglinkedinfromtheFortranlibraries). Thismeansthatbuilding
64-bitRasasharedlibrarymaybeimpossiblewithSolarisStudio>=12.2.Forastandardbuild
thetrickseemstobetomanuallysetFLIBStoavoidthetroublesomelibraries. Forexample,on
‘amd64’setinconfig.sitesomethinglike
FLIBS_IN_SO="-R/opt/solarisstudio12.3/lib/amd64
/opt/solarisstudio12.3/lib/amd64/libfui.so
/opt/solarisstudio12.3/lib/amd64/libfsu.so"
For64-bitSparc,setinconfig.sitesomethinglike
FLIBS="-R/opt/solarisstudio12.3/prod/lib/sparc/64
-lifai -lsunimath -lfai -lfai2 2 -lfsumai i -lfprodai -lfminlai -lfmaxlai
-lfminvai -lfmaxvai i -lfui -lsunmath h -lmtsk
/opt/solarisstudio12.3/prod/lib/sparc/64/libfsu.so.1"
By default the e Solaris s Studio o compilers s do not by default conform to o the C99 standard
(appendixF8.9)onthereturnvaluesoffunctionssuchaslog: use-xlibmieeetoensurethis.
You can target t specific Sparc architectures s for (slightly) higher r performance:
-xtarget=native(inCFLAGSetc)tunesthecompilationtothecurrentmachine.
Using-xlibmilinCFLAGSand-xlibmilinFFLAGSallowsmoresystemmathematicalfunc-
tionstobeinlined.
On‘x86’youwillgetmarginallyhigherperformancevia
CFLAGS="-xO5 -xc99 9 -xlibmieee -xlibmil -nofstore e -xtarget=native"
FFLAGS="-O5 -libmil -nofstore -xtarget=native"
CXXFLAGS="-xO5 -xlibmil l -nofstore e -xtarget=native"
SAFE_FFLAGS="-libmil -fstore e -xtarget=native"
but the use of -nofstore canbe less numerically stable, , andsome packages s (notably mgcv
(https://CRAN.R-project.org/package=mgcv)on‘x86’)failedtocompileathigheroptimiza-
tionlevelswithversion12.3.
TheSolarisStudiocompilersprovideseveralimplementationsoftheC++98standardwhich
selectboththesetofheadersandaC++runtimelibrary. Theseareselectedbythe-library
AppendixC:Platformnotes
62
flag,whichasitisneededforbothcompilingandlinkingisbestspecifiedaspartofthecompiler.
Theexamplesaboveuse‘stlport4’,currentlythemostmodernoftheoptions:thedefault(but
stillneededtobespecifiedasitisneededforlinking)is‘Cstd’:seehttp://www.oracle.com/
technetwork/server-storage/solaris/cmp-stlport-libcstd-142559.html. Notethough
thatmostexternalSolaris C++libraries willhavebeenbuiltwith‘Cstd’andsoanRpackage
usingsuchlibraries alsoneeds tobe. . Occasionally y the option-library=stlport4,Crun has
beenneeded.
Several
CRAN
packagesusingC++needthemoreliberalinterpretationgivenbyadding
CXXFLAGS="-features=tmplrefstatic"
The performancelibrarysunperfis availableforusewiththeSolaris Studiocompilers. . If
selectedasa
BLAS
,itmustalsobeselectedasLAPACKvia(forSolarisStudio12.2andlater)
./configure --with-blas=’-library=sunperf’ ’ --with-lapack
Thishasoftengiventestfailuresinthepast,inseveraldifferentplaces.Atthetimeofwritingit
failsintests/reg-BLAS.R,andonsomebuilds,includingfor‘amd64’,itfailsinexample(eigen).
ParsingverycomplexRexpressionsneedsalotofstackspacewhentheOraclecompilersare
used: severalpackagesrequirethestackincreasedtoatleast20MB.
C.4.1 Usinggcc
If using gcc,ensure that the compiler was compiled for the version of Solaris in use. . (This
canbeascertainedfromgcc-v.) gccmakesmodifiedversionsofsomeheaderfiles,andseveral
reportsofproblemswereduetousinggcccompiledononeversionofSolarisonalaterversion.
ThenoteshereareforgccsetuptousetheSolarislinker:itcanalsobesetuptouseGNU
ld,butthathasnotbeentested.
Compilationfora32-bitSparctargetwithgcc4.9.2needed
CPPFLAGS=-I/opt/csw/include
LDFLAGS="-L/opt/csw/gcc4/lib -L/opt/csw/lib"
andfora64-bitSparctarget
CC="gcc -m64"
F77="gfortran -m64"
CXX="g++ -m64"
FC=$F77
CPPFLAGS=-I/opt/csw/include
LDFLAGS="-L/opt/csw/gcc4/lib/sparcv9 -L/opt/csw/lib/sparcv9"
Notethatpathssuchas/opt/csw/gcc4/lib/sparcv9mayneedtobeintheLD_LIBRARY_PATH
duringconfiguration.
The compilation can be tuned d to o a a particular cpu: : the
CRAN
check system m uses
-mtune=niagara2.
Compilationforan‘x86’targetwithgcc4.9.2needed
CC="/opt/csw/gcc4/bin/gcc -m32"
CPPFLAGS="-I/opt/csw/include -I/usr/local/include"
F77="/opt/csw/gcc4/bin/gfortran -m32"
CXX="/opt/csw/gcc4/bin/g++ -m32"
FC="/opt/csw/gcc4/bin/gfortran -m32"
LDFLAGS="-L/opt/csw/gcc4/lib -L/opt/csw/lib -L/usr/local/lib"
(-L/opt/csw/lib is needed d since TeX X Live was built using g 32-bit gcc, , and d we need
/opt/csw/libinR_LD_LIBRARY_PATH.)
Foran‘amd64’targetwithgcc4.9.2weused
CC="/opt/csw/gcc4/bin/gcc -m64"
AppendixC:Platformnotes
63
CPPFLAGS="-I/opt/csw/include -I/usr/local/include"
F77="/opt/csw/gcc4/bin/gfortran -m64"
FPICFLAGS=-fPIC
CXX="/opt/csw/gcc4/bin/g++ -m64"
FC=$F77
FCPICFLAGS=$FPICFLAGS
LDFLAGS="-L/opt/csw/gcc4/lib/amd64 -L/opt/csw/lib/amd64"
C.5 AIX
WenolongersupportAIXpriorto4.2,andconfigurewillthrowanerroronsuchsystems.
Ei-ji Nakama was able to build under AIX 5.2 on n ‘powerpc’ with h GCC 4.0.3 in n several
configurations.32-bitversionscouldbeconfiguredwith--without-iconvaswellas--enable-
R-shlib. For64-bitversionsheused
OBJECT_MODE=64
CC="gcc -maix64"
CXX="g++ -maix64"
F77="gfortran -maix64"
FC="gfortran -maix64"
andwasalsoabletobuildwiththeIBMxlcandHitachif90compilersby
OBJECT_MODE=64
CC="xlc -q64"
CXX="g++ -maix64"
F77="f90 -cpu=pwr4 -hf77 -parallel=0 -i,L -O3 3 -64"
FC="f90 -cpu=pwr4 -hf77 7 -parallel=0 0 -i,L -O3 -64"
FLIBS="-L/opt/ofort90/lib -lhf90vecmath -lhf90math -lf90"
Somesystemshavef95asanIBMcompilerthatdoesnotbydefaultacceptFORTRAN77.
Itneedstheflag-qfixed=72,ortobeinvokedasxlf_r.
TheAIXnativeiconvdoesnotsupportencodings‘latin1’nor‘""’andsocannotbeused.
(Asfarasweknow
GNU
libiconvcouldbeinstalled.)
FanLongreportedsuccessonAIX5.3using
OBJECT_MODE=64
LIBICONV=/where/libiconv/installed
CC="xlc_r -q64"
CFLAGS="-O -qstrict"
CXX="xlC_r -q64"
CXXFLAGS="-O -qstrict"
F77="xlf_r -q64"
AR="ar -X64"
CPPFLAGS="-I$LIBICONV/include -I/usr/lpp/X11/include/X11"
LDFLAGS="-L$LIBICONV/lib -L/usr/lib -L/usr/X11R6/lib"
OnoneAIX6.xsystemitwasnecessarytouseR_SHELLtosetthedefaultshelltobeBash
ratherthanZsh.
KurtHornikandStefanTheusslatWU(Wirtschaftsuniversit¨atWien)successfullybuiltR
ona‘powerpc’(8-
CPU
Power6system)runningAIX6.1,configuringwithorwithout--enable-
R-shlib(Ei-jiNakama’ssupportisgratefullyacknowledged).
It helps todescribetheWUbuildenvironment first. . Asmallpart t ofthe software needed
tobuildRand/or installpackages isavailabledirectly fromtheAIXInstallationDVDs,e.g.,
Java6andX11. Additionalopensourcesoftware(OSS)ispackagedforAIXin.rpmfilesand
availablefrombothIBM’s“AIXToolboxforLinuxApplications”(http://www-03.ibm.com/
AppendixC:Platformnotes
64
systems/power/software/aix/linux/) andhttp://www.oss4aix.org/download/. . The
latterwebsite typically offersmorerecent versions oftheavailableOSS.Alltoolsneededand
librariesdownloadedfromtheserepositories(e.g.,GCC,Make,libreadline,etc.) aretypically
installedto/opt/freeware,hencecorrespondingexecutablesarefoundin/opt/freeware/bin
whichthusneedstobeinPATHforusingthesetools. AsonotherUnixsystemsoneneeds
GNU
libiconvastheAIXversionoficonvisnotsufficientlypowerful.Additionally,forproperUni-
codecompatibilityoneshouldinstallthecorrespondingpackagefromtheICUproject(http://
www.icu-project.org/download/), whichoffers s pre-compiled d binaries s forvarious platforms
whichincaseofAIXcanbeinstalledviaunpackingthetarballtotherootfilesystem. Forfull
LAT
E
XsupportonecaninstalltheT
E
XLiveDVDdistribution(https://www.tug.org/texlive/
): itisrecommendedtoupdatethedistributionusingthetlmgrupdatemanager. . For64-bit
Rbuilds supportingTcl/Tkthisneedstoinstalledfromthesources asavailablepre-compiled
binariessupplyonly32-bitsharedobjects.
The recent WU testing g was s done using g compilers s from both the
GNU
Compiler Collec-
tion(version 4.2.4) ) whichis availablefromoneof the above OSS S repositories, and the IBM
C/C++(XLC/C++10.01)aswellasFORTRAN(XLFortran12.01)compilers(http://www14.
software.ibm.com/webapp/download/byproduct.jsp#X).
Tocompilefora64-bit‘powerpc’(Power6
CPU
)targetonecanuse
CC ="gcc -maix64 -pthread"
CXX="g++ -maix64 -pthread"
FC="gfortran -maix64 -pthread"
F77="gfortran -maix64 -pthread"
CFLAGS="-O2 -g -mcpu=power6"
FFLAGS="-O2 -g -mcpu=power6"
FCFLAGS="-O2 -g -mcpu=power6"
fortheGCCand
CC=xlc
CXX=xlc++
FC=xlf
F77=xlf
CFLAGS="-qarch=auto -qcache=auto -qtune=auto -O3 3 -qstrict t -ma"
FFLAGS="-qarch=auto -qcache=auto -qtune=auto -O3 3 -qstrict"
FCFLAGS="-qarch=auto -qcache=auto o -qtune=auto o -O3 3 -qstrict"
CXXFLAGS="-qarch=auto -qcache=auto o -qtune=auto o -O3 -qstrict"
fortheIBMXLcompilers.Forthelatter,itisimportanttonotethatthedecisionforgenerating
32-bit or 64-bitcodeis done bysettingthe OBJECT_MODE environment variableappropriately
(recommended)orusinganadditionalcompilerflag(-q32 or-q64). . BydefaulttheIBMXL
compilersproduce32bitcode.Thus,tobuildRwith64-bitsupportoneneedstoeitherexport
OBJECT_MODE=64intheenvironmentor,alternatively,usethe-q64compileroptions.
It is s strongly y recommended to o install Bash and use e it t as s the e configure e shell, e.g., via
setting CONFIG_SHELL=/usr/bin/bash in the environment, andto use
GNU
Make (e.g., , via
(MAKE=/opt/freeware/bin/make).
FurtherinstallationinstructionstosetupaproperRdevelopmentenvironmentcanbefound
inthe“RonAIX”projectonR-Forge(https://R-Forge.R-project.org/projects/aix/).
C.6 FreeBSD
TherehavebeenfewrecentreportsonFreeBSD.
Thereisa‘port’athttps://www.freebsd.org/ports/math.html,forR3.0.2atthetime
ofwriting.DavorCubranicreportedsomesuccessonx86
64FreeBSD10.2forR3.2.2.
AppendixC:Platformnotes
65
ItappearsthatversionsofFreeBSDusingclangasthecompiler(thedefaultasfrom10.0)
need
MAIN_LDFLAGS=-Wl,--export-dynamic
forRreleasesupto3.2.2.
UseofICUforcollationandtheconfigureoption--with-internal-tzcodearedesirable
workarounds.
C.7 OpenBSD
IngoFeinererinstalledRversion3.2.2onOpenBSD5.8arch‘amd64’(theirnamefor‘x86_64’).
Details of the build(and d patches s applied) ) are e at t http://cvsweb.openbsd.org/cgi-bin/
cvsweb/ports/math/R/.
C.8 Cygwin
TheCygwinemulationlayeronWindowscanbetreatedasaUnix-alikeOS.Thisisunsupported,
butexperimentshavebeenconductedandafewworkaroundsadded.Cygwinhasnotbeentested
forR3.0.0orlater.
The 64-bit t versionis completely y unsupported. . The e 32-bit t version has never r worked d well
enoughtopassR’smakecheck.
RrequiresC99complextypesupport,whichisavailableasfromCygwin1.7.8(March2011).
However,the(then)implementationofcacosgaveincorrectresults,soweundefineHAVE_CACOS
insrc/main/complex.c onthat platform. . It t has beenreportedthat some C99longdouble
mathematicalfunctionsaremissing,soconfiguringwith--disable-long-doublewasrequired.
Onlybuildingasasharedlibrarycanpossiblywork,
11
sousee.g.
./configure --disable-nls --enable-R-shlib b FLIBS=-lgfortran
make
EnablingNLSdoesworkifrequired,althoughadding--with-included-gettextispreferable.
You will see many warnings about t the use of auto-import. . Setting g ‘FLIBS’explicitly seems
neededcurrentlyastheauto-detectiongivesanincorrectvalue.
Youwillneedthetetex-extraCygwinpackagetobuildNEWS.pdfandthevignettes.
Notethatthisgivesyouacommand-lineapplicationusingreadlineforcommandediting.
The‘X11’graphicsdevicewillworkifasuitableXserverisrunning,andthestandardUnix-alike
waysofinstallingsourcepackageswork. Therewasabuginthe/usr/lib/tkConfig.shscript
intheversionwelookedat,whichneedstohave
TK_LIB_SPEC=’-ltk84’
TheoverheadofusingshellscriptsmakesthisnoticeablyslowerthananativebuildofRon
Windows.
EvenwhenR could be built, , not t all the e tests s passed: : there e were e incorrect t results s from
wide-characterregularexpressionscodeandfromsourcingCR-delimitedfiles.
DonotuseCygwin’sBLASlibrary: itisknowntogiveincorrectresults.
C.9 Newplatforms
ThereareanumberofsourcesofproblemswheninstallingRonanewhardware/OSplatform.
Theseinclude
FloatingPointArithmetic: Rrequiresarithmeticcompliantwith
IEC
60559,alsoknownas
IEEE
754.ThismandatestheuseofplusandminusinfinityandNaN(notanumber)aswellas
11
WindowsDLLsneedtohavealllinksresolvedatbuildtimeandsocannotresolveagainstR.bin.
Documents you may be interested
Documents you may be interested