OSX Undefined symbols for libiconv
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Inkscape |
Triaged
|
Undecided
|
Unassigned |
Bug Description
I found this issue on OSX 10.13.5 compiling inkscape-0.92.3.
[ 88%] Linking CXX shared library ../lib/
Undefined symbols for architecture x86_64:
"_libiconv", referenced from:
_
_
_
_
_
_
_
...
"_libiconv_
_
_
_
_
_
_
_
...
"_libiconv_open", referenced from:
_
_
_
_
_
_
_
...
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [lib/libinkscap
make[1]: *** [src/CMakeFiles
make: *** [all] Error 2
There is no /usr/local/
There is a /usr/include/
It does not have the define iconv_t but has instead
typedef void* iconv_t
There is a MacPorts file /opt/local/
#define iconv_t libiconv_t
MacPorts libconv cannot be removed as it is used by many other packages to compile Inkscape.
port info libiconv returns the latest being->
libiconv @1.15 (textproc)
Variants: cp932fix, universal
Description: A character-set conversion library which implements the iconv() API for dealing
Homepage: https:/
Build Dependencies: gperf
Platforms: darwin, freebsd, linux
License: (LGPL-2+ or GPL-3+)
Maintainers: Email: <email address hidden>
Configuration was done for Inkscape using the documented process of:
mkdir build
cd build
cmake ..
make
cmake displays
-- Performing Test ICONV_SECOND_
-- Performing Test ICONV_SECOND_
-- Found Iconv: /usr/lib/
printenv of my environment returns:
TERM_PROGRAM=
TERM=xterm-256color
SHELL=/bin/bash
TMPDIR=
Apple_PubSub_
TERM_PROGRAM_
OLDPWD=
TERM_SESSION_
USER=me
SSH_AUTH_
PATH=/opt/
PWD=/Users/
LANG=en_CA.UTF-8
XPC_FLAGS=0x0
XPC_SERVICE_NAME=0
HOME=/Users/me
SHLVL=1
LOGNAME=me
_=/usr/bin/printenv
I did a git clone of https:/
cmake reports the same for iconv, but I cannot get past make as the port for gdl fails to compile and is required for the latest Inkscape.
For what I understand so far, those undefined symbols are defined in /opt/local/
but cmake picks up /usr/lib/
I resolved the issue temporarily by from the bash prompt first setting
CMAKE_PREFIX_
This could be the solution for those compiling from OSX with MacPorts installed. The documentation would then just have to be changed to reflect this.
Cheers,
John Talbot
Changed in inkscape: | |
status: | New → Triaged |