[vbox-dev] Config.kmk needs changed when build on Snow Leopard

Kentaro KAWAMOTO kentaro.kawamoto at gmail.com
Tue Jun 15 15:34:50 GMT 2010


Hi,

I'm trying to build rev.30187 on Snow Leopard 64bit following
instructions here.
http://www.virtualbox.org/wiki/Mac%20OS%20X%20build%20instructions

To build successfully, however, I need to add "-L/opt/local/lib to
Config.kmk as follows.


Index: Config.kmk
===================================================================
--- Config.kmk  (revision 30187)
+++ Config.kmk  (working copy)
@@ -1643,7 +1643,7 @@
  VBOX_DARWIN_DEF_SDK_OBJCFLAGS   :=
-mmacosx-version-min=$(VBOX_DEF_MACOSX_VERSION_MIN) -isysroot
$(VBOX_PATH_MACOSX_SDK)
  VBOX_DARWIN_DEF_SDK_OBJCXXFLAGS :=
-mmacosx-version-min=$(VBOX_DEF_MACOSX_VERSION_MIN) -isysroot
$(VBOX_PATH_MACOSX_SDK)
  VBOX_DARWIN_DEF_SDK_LDFLAGS      =
-mmacosx-version-min=$(VBOX_DEF_MACOSX_VERSION_MIN)
-Wl,-syslibroot,$(VBOX_PATH_MACOSX_SDK) \
-       -Wl,-headerpad_max_install_names $(VBOX_DARWIN_CLASSIC_LINKER)
$(VBOX_DARWIN_NO_COMPACT_LINKEDIT)
+       -Wl,-headerpad_max_install_names $(VBOX_DARWIN_CLASSIC_LINKER)
$(VBOX_DARWIN_NO_COMPACT_LINKEDIT) -L/opt/local/lib

  # specific versions.
  ## @todo s/VBOX_DARWIN_DEF_SDK_10/VBOX_DARWIN_SDK_10/g



otherwise, I got error on link phase.

kBuild: Linking VBoxRT
Undefined symbols:
  "_libiconv_open", referenced from:
      rtStrConvertUncached(void const*, unsigned long, char const*,
void**, unsigned long, char const*, unsigned int)in utf8-posix.o
      rtstrConvertCached(void const*, unsigned long, char const*,
void**, unsigned long, char const*, unsigned int, void**)in
utf8-posix.o
  "_libiconv", referenced from:
      rtStrConvertUncached(void const*, unsigned long, char const*,
void**, unsigned long, char const*, unsigned int)in utf8-posix.o
      rtstrConvertCached(void const*, unsigned long, char const*,
void**, unsigned long, char const*, unsigned int, void**)in
utf8-posix.o
  "_libiconv_close", referenced from:
      rtStrConvertUncached(void const*, unsigned long, char const*,
void**, unsigned long, char const*, unsigned int)in utf8-posix.o
      rtStrConvertUncached(void const*, unsigned long, char const*,
void**, unsigned long, char const*, unsigned int)in utf8-posix.o
      rtstrConvertCached(void const*, unsigned long, char const*,
void**, unsigned long, char const*, unsigned int, void**)in
utf8-posix.o
      _rtStrIconvCacheDestroy in utf8-posix.old: symbol(s) not
foundcollect2: ld returned 1 exit status


Looks like it tried to link /usr/lib/libiconv.dylab, which is slightly old.

%  /usr/bin/iconv --version iconv (GNU libiconv 1.11)
Copyright (C) 2000-2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Bruno Haible.

% /opt/local/bin/iconv --version
iconv (GNU libiconv 1.13)
Copyright (C) 2000-2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://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 Bruno Haible.


I'd appreciate it if you update Config.kmk in repository.
If my change is not correct, please advise.


Thanks,
Ken

-- 
Kentaro KAWAMOTO
kentaro.kawamoto at gmail.com




More information about the vbox-dev mailing list