Skip to content

Instantly share code, notes, and snippets.

@mcuadros
Created October 30, 2013 15:18
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mcuadros/7234395 to your computer and use it in GitHub Desktop.
Save mcuadros/7234395 to your computer and use it in GitHub Desktop.
HHVM 2.2.0 + OSX 10.9 "ld: symbol(s) not found for architecture x86_64" issue
mcuadros@mcuadros-air /t/h/hhvm-HHVM-2.2> make test
[ 0%] [ 0%] Built target sqlite3
Generating systemlib.php
[ 1%] Built target double-conversion
[ 9%] Built target mbfl
[ 9%] Built target afdt
[ 10%] Built target timelib
[ 10%] Built target lz4
[ 10%] Built target hphp_parser
[ 11%] Built target neo
[ 12%] Built target vixl
[ 12%] Built target hphp_zend
[ 15%] Built target folly
[ 16%] [ 16%] Built target gen-infotabs
Built target gen-class-map
[ 16%] Built target gen-ext-hhvm
[ 17%] Built target hphp_system
[ 17%] Built target systemlib
[ 23%] Built target hphp_util
[ 33%] Built target hphp_analysis
[ 74%] Built target hphp_runtime_static
[ 98%] Built target ext_hhvm_static
Linking CXX executable test
Undefined symbols for architecture x86_64:
"isalnum(int)", referenced from:
HPHP::f_ctype_alnum(HPHP::Variant const&) in libhphp_runtime.a(ext_ctype.cpp.o)
"isalpha(int)", referenced from:
HPHP::f_ctype_alpha(HPHP::Variant const&) in libhphp_runtime.a(ext_ctype.cpp.o)
"iscntrl(int)", referenced from:
HPHP::f_ctype_cntrl(HPHP::Variant const&) in libhphp_runtime.a(ext_ctype.cpp.o)
"isdigit(int)", referenced from:
HPHP::f_ctype_digit(HPHP::Variant const&) in libhphp_runtime.a(ext_ctype.cpp.o)
"isgraph(int)", referenced from:
HPHP::f_ctype_graph(HPHP::Variant const&) in libhphp_runtime.a(ext_ctype.cpp.o)
"islower(int)", referenced from:
HPHP::f_ctype_lower(HPHP::Variant const&) in libhphp_runtime.a(ext_ctype.cpp.o)
"isprint(int)", referenced from:
HPHP::f_ctype_print(HPHP::Variant const&) in libhphp_runtime.a(ext_ctype.cpp.o)
"ispunct(int)", referenced from:
HPHP::f_ctype_punct(HPHP::Variant const&) in libhphp_runtime.a(ext_ctype.cpp.o)
"isspace(int)", referenced from:
HPHP::f_ctype_space(HPHP::Variant const&) in libhphp_runtime.a(ext_ctype.cpp.o)
"isupper(int)", referenced from:
HPHP::f_ctype_upper(HPHP::Variant const&) in libhphp_runtime.a(ext_ctype.cpp.o)
"toupper(int)", referenced from:
HPHP::_xml_startElementHandler(void*, char const*, char const**) in libhphp_runtime.a(ext_xml.cpp.o)
HPHP::_xml_endElementHandler(void*, char const*) in libhphp_runtime.a(ext_xml.cpp.o)
"isxdigit(int)", referenced from:
HPHP::f_ctype_xdigit(HPHP::Variant const&) in libhphp_runtime.a(ext_ctype.cpp.o)
ld: symbol(s) not found for architecture x86_64
collect2: error: ld returned 1 exit status
make[3]: *** [hphp/test/test] Error 1
make[2]: *** [hphp/test/CMakeFiles/test.dir/all] Error 2
make[1]: *** [hphp/test/CMakeFiles/test.dir/rule] Error 2
make: *** [test] Error 2
@reeze
Copy link

reeze commented Nov 24, 2013

Hi, I got the similar error when building hhvm on 10.9, I successfully build it a month ago , but I can't now .

seems related to:
http://stackoverflow.com/questions/19621831/undefined-symbol-toupper-in-macports-gcc-4-7-os-x-mavericks-10-9-c11?lq=1

[ 4%] Building CXX object hphp/tools/bootstrap/CMakeFiles/gen-class-map.dir/idl.cpp.o
Linking CXX executable gen-class-map
Undefined symbols for architecture x86_64:
"isspace(int)", referenced from:

Any idea to fix it?

@reeze
Copy link

reeze commented Nov 24, 2013

Here is the full debug info:

✗ make
[ 2%] Built target folly
[ 3%] Built target double-conversion
Linking CXX executable gen-class-map
Undefined symbols for architecture x86_64:
"isspace(int)", referenced from:
folly::detail::enforceWhitespace(char const_, char const_) in gen-class-map.cpp.o
std::enable_ifstd::is_floating_point<double::value, double>::type folly::to(folly::Range<char const*>) in gen-class-map.cpp.o
std::enable_if<std::is_integral::value&&(!std::is_same<std::remove_cv::type, bool>::value), long long>::type folly::to(folly::Range
) in gen-class-map.cpp.o
folly::detail::enforceWhitespace(char const_, char const_) in idl.cpp.o
std::enable_ifstd::is_integral<int::value&&(!std::is_samestd::remove_cv<int::type, bool>::value), int>::type folly::to(folly::Range) in idl.cpp.o
std::enable_ifstd::is_floating_point<double::value, double>::type folly::to(folly::Range
) in idl.cpp.o
std::enable_if<std::is_integral::value&&(!std::is_same<std::remove_cv::type, bool>::value), long long>::type folly::to(folly::Range) in idl.cpp.o
...
"tolower(int)", referenced from:
HPHP::IDL::strtolower(folly::basic_fbstring<char, std::char_traits, std::allocator, folly::fbstring_core > const&) in gen-class-map.cpp.o
HPHP::IDL::PhpFunc::getCppSig() const in idl.cpp.o
folly::detail::bool_str_cmp(char const__, unsigned long, char const
) in libfolly.a(Conv.cpp.o)
"toupper(int)", referenced from:
std::enable_ifstd::is_floating_point<double::value, double>::type folly::to(folly::Range<char const*>) in gen-class-map.cpp.o
std::enable_ifstd::is_floating_point<double::value, double>::type folly::to(folly::Range
) in idl.cpp.o
std::enable_ifstd::is_floating_point<double::value, double>::type folly::to(folly::Range) in libfolly.a(json.cpp.o)
ld: symbol(s) not found for architecture x86_64
collect2: error: ld returned 1 exit status
make[2]: *
* [hphp/tools/bootstrap/gen-class-map] Error 1
make[1]: *** [hphp/tools/bootstrap/CMakeFiles/gen-class-map.dir/all] Error 2
make: *** [all] Error 2

Thanks for your work again :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment