Hi
I first removed protobuf from brew (no install). then:
CPATH=/usr/local/include
DYLD_LIBRARY_PATH=/usr/local/lib
LD_LIBRARY_PATH=/usr/local/lib
LIBRARY_PATH=/usr/local/lib
PATH=/usr/local/lib:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/TeX/texbin:/Users/Erhard/Library/Developer/android-ndk-r10e
I removed the build
created it with:
$ cmake ..
$ make
again:
Undefined symbols for architecture x86_64:
"google::protobuf::Message::DebugString() const", referenced from:
singa::Channel::Send(google::protobuf::Message const&) in
channel.cc.o
"google::protobuf::Message::SerializeToOstream(std::__1::basic_ostream<char,
std::__1::char_traits<char> >*) const", referenced from:
singa::Channel::Send(google::protobuf::Message const&) in
channel.cc.o
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/libsinga_utils.dylib] Error 1
make[1]: *** [src/CMakeFiles/singa_utils.dir/all] Error 2
I checked every file. in the dylib files, there are evidences, that
those two methods are in.
Anyone other a suggestion?
--
master-studios.net - Intelligent Software / Consulting / Research
+43 (0)699 / 102 69 056, Vienna, Austria
Am 16.07.2016 20:59, schrieb Xiezhongle:
> Hi Erhard,
>
> I believe that the problem is caused by Protobuf, not SINGA.
>
> Could you please try to reinstall it?
>
> I suggest you compile Protobuf from source code instead of using homebrew.
>
> Best,
>
> Zhongle
>
> From: Erhard M. Dinhobl jun. [mailto:[email protected]]
> Sent: Sunday, 17 July, 2016 2:06 AM
> To: [email protected]
> Cc: Xiezhongle
> Subject: RE: Problems on mac
>
> BTW: it would be greate because to get it up running because I invested now
> more than 40 hours in this problem and my mac is currently my main working
> station.
>
> --
>
> master-studios.net - Intelligent Software / Consulting / Research
>
> +43 (0)699 / 102 69 056, Vienna, Austria
>
> Am 16.07.2016 19:40, schrieb Erhard M. Dinhobl jun.:
>
> Hi xiezhongle
>
> I motivated myself trying another run on mac (to work also at home and not in
> my bureau only, at home I have more time). I did:
>
> $ mkdir build
>
> $ cd build
>
> $ cmake -DPROTOBUF_INCLUDE_DIR:PATH=/usr/local/Cellar/protobuf/2.6.1/include \
> --DPROTOBUF_LIBRARY:FILEPATH=/usr/local/Cellar/protobuf/2.6.1/lib/libprotobuf.dylib
> \
> -DPROTOBUF_LIBRARY_DEBUG:FILEPATH=/usr/local/Cellar/protobuf/2.6.1/lib/libprotobuf.dylib
> \
> -DPROTOBUF_LITE_LIBRARY:FILEPATH=/usr/local/Cellar/protobuf/2.6.1/lib/libprotobuf-lite.dylib
> \
> -DPROTOBUF_LITE_LIBRARY_DEBUG:FILEPATH=/usr/local/Cellar/protobuf/2.6.1/lib/libprotobuf-lite.dylib
> \
> -DPROTOBUF_PROTOC_EXECUTABLE:FILEPATH=/usr/local/Cellar/protobuf/2.6.1/bin/protoc
> \
> -DPROTOBUF_PROTOC_LIBRARY:FILEPATH=/usr/local/Cellar/protobuf/2.6.1/lib/libprotoc.dylib
> \
> -DPROTOBUF_PROTOC_LIBRARY_DEBUG:FILEPATH=/usr/local/Cellar/protobuf/2.6.1/lib/libprotoc.dylib
> \
> -DUSE_CUDA=OFF -DUSE_CUDNN=OFF ..
>
> (those are all taken from the CMakeCache-File)
>
> and then:
>
> $ make
>
> result is again:
>
> Undefined symbols for architecture x86_64:
> "google::protobuf::Message::DebugString() const", referenced from:
> singa::Channel::Send(google::protobuf::Message const&) in channel.cc.o
> "google::protobuf::Message::SerializeToOstream(std::__1::basic_ostream<char,
> std::__1::char_traits<char> >*) const", referenced from:
> singa::Channel::Send(google::protobuf::Message const&) in channel.cc.o
> 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/libsinga_utils.dylib] Error 1
> make[1]: *** [src/CMakeFiles/singa_utils.dir/all] Error 2
> make: *** [all] Error 2
>
> I don't know where to define the lib that it finds the x86_64 arch. There
> exists every path and what ever. I really don't know.
>
> --
>
> master-studios.net - Intelligent Software / Consulting / Research
>
> +43 (0)699 / 102 69 056, Vienna, Austria
>
> Am 04.07.2016 08:52, schrieb Xiezhongle:
>
> Hi Erhard,
>
> Please check your export parameters.
> It should be something like:
> export
> LIBRARY_PATH=/usr/local/Cellar/protobuf/2.6.1/lib:$LIBRARY_PATH
> ......
> You missed the "/lib".
>
> And also, if the folder installed by homebrew is not included in the bash
> settings, please use the following command under "incubator-singa/" folder:
> mkdir build && cd build
> cmake -DProtobuf_SRC_ROOT_FOLDER=/usr/local/Cellar/protobuf/2.6.1
> -DUSE_CUDA=OFF -DUSE_CUDNN=OFF ..
> make
>
> Please try and let me know if you have other problems.
>
> Best,
> zhongle
>
> -----Original Message-----
> From: Erhard M. Dinhobl jun. [mailto:[email protected]]
> Sent: Monday, 4 July, 2016 12:51 PM
> To: Apache Singa Dev
> Subject: Problems on mac
>
> Hi
>
> I am on to get singa up running under mac. I will write a developer
> introduction on this. but one problem. I get the following message
>
> Undefined symbols for architecture x86_64:
> "google::protobuf::Message::DebugString() const", referenced from:
> singa::Channel::Send(google::protobuf::Message const&) in channel.cc.o
>
> "google::protobuf::Message::SerializeToOstream(std::__1::basic_ostream<char,
> std::__1::char_traits<char> >*) const", referenced from:
> singa::Channel::Send(google::protobuf::Message const&) in channel.cc.o
> 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/libsinga_utils.dylib] Error 1
> make[1]: *** [src/CMakeFiles/singa_utils.dir/all] Error 2
> make: *** [all] Error 2
>
> I installed protobuf 2.6.0 and set the variables via:
>
> export LD_LIBRARY_PATH=/usr/local/Cellar/protobuf/2.6.1/
>
> export LIBRARY_PATH=/usr/local/Cellar/protobuf/2.6.1/
>
> export DYLD_LIBRARY_PATH=/usr/local/Cellar/protobuf/2.6.1/
>
> maybe someone has a hint....
>
> --
>
> master-studios.net - Intelligent Software / Consulting / Research
>
> +43 (0)699 / 102 69 056, Vienna, Austria