[R-SIG-Mac] unsupported file format which is not the architecture being linked (i386)

Prof Brian Ripley ripley at stats.ox.ac.uk
Wed Aug 11 08:27:35 CEST 2010


This package has compiled code under inst/ .  That is only going to 
work for one architecture (unless a fat binary, which this is not).

Hardly 'from source', and you need to sort this out so the package is 
source-only.

On Wed, 11 Aug 2010, Richard R. Liu wrote:

> I am trying to install a package from source on R 2.11.1 patched running on Apple OS X 10.6.4 Snow Leopard.  I have downloaded the package source to a local directory.  When I issue R CMD INSTALL from the Terminal only the  64-bit version is built.  When I try to install the source from the R GUI only the 32-bit version is built, but the build produces an error ("unsupported file format which is not the architecture being linked (i386)") and so does not succeed.  I also tried installing the 32-bit version from the command line by issuing the command R --arch i386 CMD INSTALL but that produced the same error as installing from the R GUI
>
> What do I need to do to build both versions?
>
> Thanks,
>
> Richard R. Liu
> Dittingerstr. 33
> CH-4053 Basel
> Switzerland
>
> Tel.:  +41 61 331 10 47
> Mobil: +41 79 708 67 66
> Email:  richard.liu at pueo-owl.ch
>
>
> The output of the two attempts to install the package follow:
>
> -------------------------
> Install from command line
> -------------------------
>
> RRL-MacBookPro:~ sim$ R CMD INSTALL
> /Users/sim/Downloads/Rlibstemmer_0.1-0.tar.gz
> * installing to library ‘/Users/sim/Library/R/2.11/library’
> * installing *source* package ‘Rlibstemmer’ ...
> make: Nothing to be done for `all'.
> ** libs
> *** arch - x86_64
> gcc -arch x86_64 -std=gnu99 -I/Library/Frameworks/R.framework/Resources/include
> -I/Library/Frameworks/R.framework/Resources/include/x86_64
> -I../inst/libstemmer_c/include -I/usr/local/include    -fPIC  -g -O2 -c
> listAlgorithms.c -o listAlgorithms.o
> gcc -arch x86_64 -std=gnu99 -I/Library/Frameworks/R.framework/Resources/include
> -I/Library/Frameworks/R.framework/Resources/include/x86_64
> -I../inst/libstemmer_c/include -I/usr/local/include    -fPIC  -g -O2 -c
> stemWords.c -o stemWords.o
> gcc -arch x86_64 -std=gnu99 -dynamiclib -Wl,-headerpad_max_install_names
> -undefined dynamic_lookup -single_module -multiply_defined suppress
> -L/usr/local/lib -o Rlibstemmer.so listAlgorithms.o stemWords.o
> ../inst/libstemmer_c/libstemmer.o -F/Library/Frameworks/R.framework/..
> -framework R -Wl,-framework -Wl,CoreFoundation
> installing to /Users/sim/Library/R/2.11/library/Rlibstemmer/libs/x86_64
> ** R
> ** inst
> ** preparing package for lazy loading
> ** help
> No man pages found in package  ‘Rlibstemmer’
> *** installing help indices
> ** building package indices ...
> ** testing if installed package can be loaded
>
>
> * DONE (Rlibstemmer)
>
> ------------------
> Install from R GUI
> ------------------
>
> * installing *source* package ‘Rlibstemmer’ ...
> make: Nothing to be done for `all'.
> ** libs
> *** arch - i386
> gcc -arch i386 -std=gnu99 -I/Library/Frameworks/R.framework/Resources/include
> -I/Library/Frameworks/R.framework/Resources/include/i386
> -I../inst/libstemmer_c/include -I/usr/local/include    -fPIC  -g -O2 -c
> listAlgorithms.c -o listAlgorithms.o
> gcc -arch i386 -std=gnu99 -I/Library/Frameworks/R.framework/Resources/include
> -I/Library/Frameworks/R.framework/Resources/include/i386
> -I../inst/libstemmer_c/include -I/usr/local/include    -fPIC  -g -O2 -c
> stemWords.c -o stemWords.o
> gcc -arch i386 -std=gnu99 -dynamiclib -Wl,-headerpad_max_install_names
> -undefined dynamic_lookup -single_module -multiply_defined suppress
> -L/usr/local/lib -o Rlibstemmer.so listAlgorithms.o stemWords.o
> ../inst/libstemmer_c/libstemmer.o -F/Library/Frameworks/R.framework/..
> -framework R -Wl,-framework -Wl,CoreFoundation
> ld: warning: in ../inst/libstemmer_c/libstemmer.o, file was built for
> unsupported file format which is not the architecture being linked (i386)
> installing to /Users/sim/Library/R/2.11/library/Rlibstemmer/libs/i386
> ** R
> ** inst
> ** preparing package for lazy loading
> ** help
> No man pages found in package  ‘Rlibstemmer’
> *** installing help indices
> ** building package indices ...
> ** testing if installed package can be loaded
> Error in dyn.load(file, DLLpath = DLLpath, ...) :
>  unable to load shared library
> '/Users/sim/Library/R/2.11/library/Rlibstemmer/libs/i386/Rlibstemmer.so':
>  dlopen(/Users/sim/Library/R/2.11/library/Rlibstemmer/libs/i386/Rlibstemmer.so,
> 6): Symbol not found: _sb_stemmer_delete
>  Referenced from:
> /Users/sim/Library/R/2.11/library/Rlibstemmer/libs/i386/Rlibstemmer.so
>  Expected in: flat namespace
> in /Users/sim/Library/R/2.11/library/Rlibstemmer/libs/i386/Rlibstemmer.so
> ERROR: loading failed
> * removing ‘/Users/sim/Library/R/2.11/library/Rlibstemmer’
> * restoring previous ‘/Users/sim/Library/R/2.11/library/Rlibstemmer’
>
>

-- 
Brian D. Ripley,                  ripley at stats.ox.ac.uk
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595


More information about the R-SIG-Mac mailing list