Am 20.07.2012 um 12:48 schrieb Edwin Leuven:

> On Jul 20, 2012, at 12:20 , Kornel Benko wrote:
>> Am Freitag, 20. Juli 2012 um 11:05:27, schrieb Edwin Leuven 
>> <e.leu...@gmail.com>
>> > there seems to be some problem with linking iconv though. 
>>  
>> What problems?
> 
> i pasted the error message below. 
> 
> looks like iconv is not 64bit
> 
> ed.
> 
> 
> 
> Ld /Users/edwin/devel/lyx-build/bin/Debug/lyxclient2.1 normal x86_64
>     cd /Users/edwin/devel/lyx
>     setenv MACOSX_DEPLOYMENT_TARGET 10.7
>     
> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++
>  -arch x86_64 -isysroot 
> /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk
>  -L/Users/edwin/devel/lyx-build/bin/Debug 
> -L/Users/edwin/devel/lyx-build/lib/Debug/Debug 
> -L/Users/edwin/devel/lyx-build/lib/Debug -L/opt/local/lib/Debug 
> -L/opt/local/lib -F/Users/edwin/devel/lyx-build/bin/Debug 
> -F/Library/Frameworks -filelist 
> /Users/edwin/devel/lyx-build/src/client/lyx.build/Debug/lyxclient2.1.build/Objects-normal/x86_64/lyxclient2.1.LinkFileList
>  -mmacosx-version-min=10.7 -Wl,-search_paths_first 
> -Wl,-headerpad_max_install_names 
> /Users/edwin/devel/lyx-build/lib/Debug/libsupport.a 
> /Users/edwin/devel/lyx-build/lib/Debug/libboost_signals.a 
> /Users/edwin/devel/lyx-build/lib/Debug/libboost_regex.a 
> /opt/local/lib/libintl.dylib /opt/local/lib/libiconv.dylib -framework QtCore 
> -framework QtGui -framework AppKit /opt/local/lib/libz.dylib -lobjc 
> -framework CoreFoundation -framework AppKit -o 
> /Users/edwin/devel/lyx-build/bin/Debug/lyxclient2.1
> 
> ld: warning: directory not found for option 
> '-L/Users/edwin/devel/lyx-build/lib/Debug/Debug'
> ld: warning: directory not found for option '-L/opt/local/lib/Debug'
> Undefined symbols for architecture x86_64:
>   "_iconv_open", referenced from:
>       lyx::IconvProcessor::init() in libsupport.a(unicode.o)
>   "_iconv", referenced from:
>       lyx::IconvProcessor::convert(char const*, unsigned long, char*, 
> unsigned long) in libsupport.a(unicode.o)
>      (maybe you meant: __ZN3lyx19from_iconv_encodingERKSsS1_, 
> __ZN3lyx17to_iconv_encodingERKSbIwSt11char_traitsIwESaIwEERKSs )
>   "_iconv_close", referenced from:
>       lyx::IconvProcessor::convert(char const*, unsigned long, char*, 
> unsigned long) in libsupport.a(unicode.o)
>       lyx::IconvProcessor::Impl::~Impl() in libsupport.a(unicode.o)
> ld: symbol(s) not found for architecture x86_64
> clang: error: linker command failed with exit code 1 (use -v to see 
> invocation)
> 

It looks like you're using iconv from macports, is this the case?
Perhaps you have to install it for both architectures...

Here I'm on Mac OS X 10.6 (Snow Leopard) and call cmake to build LyX for i386 
(for 10.5) using this script:
==============================
LyxSourceDir="$HOME/git/lyx" # here are the original dirs of the src, lib ...
export CMAKE_OSX_ARCHITECTURES="i386"
export CPPFLAGS="-isysroot /Developer/SDKs/MacOSX10.5.sdk -arch i386"
export SDKROOT="/Developer/SDKs/MacOSX10.5.sdk"
export MACOSX_DEPLOYMENT_TARGET=10.5
export PATH="/Developer/Tools/Qt:${PATH}" # I'm using the original Qt-Package 
from troll tech here
LyXVersion=$(grep AC_INIT "${LyxSourceDir}"/configure.ac | cut -d, -f2 | tr -d 
" ()")
LyxBuildDir=lyx-build/cmake/"${LyXVersion}" # the build is out-of-source 
separate per version
rm -rf "${LyxBuildDir}"
mkdir -p "${LyxBuildDir}"
(
   cd "${LyxBuildDir}" && \
   cmake "${LyxSourceDir}" -G "Xcode" \
      -DLYX_EXTERNAL_LIBINTL=ON \
      -DLYX_DEVEL_VERSION=ON -DLYX_DEBUG=ON -DLYX_RELEASE=OFF \
      -DLYX_DEBUG_GLIBC=ON -DLYX_DEBUG_GLIBC_PEDANTIC=ON \
      -DLYX_PACKAGE_SUFFIX=OFF -DLYX_PROGRAM_SUFFIX=OFF \
      "$@"
)
==============================

resulting in the following
...
-- Building Native Language Support (LYX_NLS is set), used libraries:
-- 
--   * intl
--      - header : /usr/local/include/libintl.h
--      - library: /usr/local/lib/libintl.dylib
--   * iconv
--      - header : /usr/include/iconv.h
--      - library: /usr/lib/libiconv.dylib
--   * zlib
--      - header : /usr/include/zlib.h
--      - library: /usr/lib/libz.dylib
...

The system libiconv is universal:
$ file /usr/lib/libiconv.dylib
/usr/lib/libiconv.dylib: Mach-O universal binary with 3 architectures
/usr/lib/libiconv.dylib (for architecture x86_64):      Mach-O 64-bit 
dynamically linked shared library x86_64
/usr/lib/libiconv.dylib (for architecture i386):        Mach-O dynamically 
linked shared library i386
/usr/lib/libiconv.dylib (for architecture ppc7400):     Mach-O dynamically 
linked shared library ppc
The Qt4.7 libs I'm using too:
$ file /Library/Frameworks/QtGui.framework/Versions/4/QtGui
/Library/Frameworks/QtGui.framework/Versions/4/QtGui: Mach-O universal binary 
with 2 architectures
/Library/Frameworks/QtGui.framework/Versions/4/QtGui (for architecture x86_64): 
Mach-O 64-bit dynamically linked shared library x86_64
/Library/Frameworks/QtGui.framework/Versions/4/QtGui (for architecture i386):   
Mach-O dynamically linked shared library i386

Regards,
Stephan

Reply via email to