Archived

This forum has been archived. Please start a new discussion on GitHub.

Linux X64 RPM install return Link error

++ -m64 -o dist/Debug/GNU-Linux-x86/uploadsvr build/Debug/GNU-Linux-x86/UpLoadServerImp.o build/Debug/GNU-Linux-x86/upload.o build/Debug/GNU-Linux-x86/main.o -L/usr/lib64 -lICE -lIceUtil -lc -lm
build/Debug/GNU-Linux-x86/upload.o: In function `upload::__patch__UpLoadServerPtr(void*, IceInternal::Handle<Ice::Object>&)':
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:1267: undefined reference to `IceInternal::Ex::throwUOE(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
build/Debug/GNU-Linux-x86/upload.o: In function `upload::UpLoadServer::__read(IceInternal::Handle<Ice::InputStream> const&, bool)':
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:1254: undefined reference to `Ice::MarshalException::MarshalException(char const*, int)'
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:1256: undefined reference to `Ice::MarshalException::~MarshalException()'
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:1256: undefined reference to `typeinfo for Ice::MarshalException'
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:1256: undefined reference to `Ice::MarshalException::~MarshalException()'
build/Debug/GNU-Linux-x86/upload.o: In function `upload::UpLoadServer::__write(IceInternal::Handle<Ice::OutputStream> const&) const':
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:1246: undefined reference to `Ice::MarshalException::MarshalException(char const*, int)'
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:1248: undefined reference to `Ice::MarshalException::~MarshalException()'
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:1248: undefined reference to `typeinfo for Ice::MarshalException'
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:1248: undefined reference to `Ice::MarshalException::~MarshalException()'
build/Debug/GNU-Linux-x86/upload.o: In function `upload::UpLoadServer::__read(IceInternal::BasicStream*, bool)':
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:1232: undefined reference to `IceInternal::BasicStream::readTypeId(std::basic_string<char, std::char_traits<char>, std::allocator<char> >&)'
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:1234: undefined reference to `IceInternal::BasicStream::startReadSlice()'
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:1235: undefined reference to `IceInternal::BasicStream::endReadSlice()'
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:1239: undefined reference to `Ice::Object::__read(IceInternal::BasicStream*, bool)'
build/Debug/GNU-Linux-x86/upload.o: In function `upload::UpLoadServer::__write(IceInternal::BasicStream*) const':
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:1216: undefined reference to `IceInternal::BasicStream::writeTypeId(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:1217: undefined reference to `IceInternal::BasicStream::startWriteSlice()'
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:1218: undefined reference to `IceInternal::BasicStream::endWriteSlice()'
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:1222: undefined reference to `Ice::Object::__write(IceInternal::BasicStream*) const'
build/Debug/GNU-Linux-x86/upload.o: In function `run':
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:965: undefined reference to `typeinfo for Ice::Object'
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:968: undefined reference to `Ice::OperationNotExistException::OperationNotExistException(char const*, int, Ice::Identity const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:968: undefined reference to `Ice::OperationNotExistException::~OperationNotExistException()'
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:968: undefined reference to `typeinfo for Ice::OperationNotExistException'
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:896: undefined reference to `typeinfo for Ice::Object'
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:899: undefined reference to `Ice::OperationNotExistException::OperationNotExistException(char const*, int, Ice::Identity const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:899: undefined reference to `Ice::OperationNotExistException::~OperationNotExistException()'
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:899: undefined reference to `typeinfo for Ice::OperationNotExistException'
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:826: undefined reference to `typeinfo for Ice::Object'
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:829: undefined reference to `Ice::OperationNotExistException::OperationNotExistException(char const*, int, Ice::Identity const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:829: undefined reference to `Ice::OperationNotExistException::~OperationNotExistException()'
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:829: undefined reference to `typeinfo for Ice::OperationNotExistException'
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:688: undefined reference to `typeinfo for Ice::Object'
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:691: undefined reference to `Ice::OperationNotExistException::OperationNotExistException(char const*, int, Ice::Identity const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:691: undefined reference to `Ice::OperationNotExistException::~OperationNotExistException()'
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:691: undefined reference to `typeinfo for Ice::OperationNotExistException'
build/Debug/GNU-Linux-x86/upload.o: In function `upload::UpLoadServer::___upFile(IceInternal::Incoming&, Ice::Current const&)':
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:1114: undefined reference to `Ice::Object::__checkMode(Ice::OperationMode, Ice::OperationMode)'
build/Debug/GNU-Linux-x86/upload.o: In function `upload::UpLoadServer::___deleteFile(IceInternal::Incoming&, Ice::Current const&)':
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:1097: undefined reference to `Ice::Object::__checkMode(Ice::OperationMode, Ice::OperationMode)'
build/Debug/GNU-Linux-x86/upload.o: In function `upload::UpLoadServer::___Login(IceInternal::Incoming&, Ice::Current const&)':
/root/.netbeans/remote/dpl-Windows-x86_64/I/uploadsvr/upload.cpp:1058: undefined reference to `Ice::Object::__checkMode(Ice::OperationMode, Ice::OperationMode)'
build/Debug/GNU-Linux-x86/upload.o: In function `run':

Comments

  • g++ -m64 -o dist/Debug/GNU-Linux-x86/uploadsvr build/Debug/GNU-Linux-x86/UpLoadServerImp.o build/Debug/GNU-Linux-x86/upload.o build/Debug/GNU-Linux-x86/main.o -L/usr/lib64 -lICE -lIceUtil -lc -lm
  • Looks like it should be -lIce instead of -lICE.

    Cheers,

    Michi.
  • the command parameters
    that I used was "-L/usr/lib64 -lICE -lIceUtil"
    if word case wrong ,the ld promate "can't find file'.
  • michi wrote: »
    Looks like it should be -lIce instead of -lICE.

    Incidentally, if you're trying to compile Ice things on a Mac using CMake, the above can turn into a really annoying problem: you tell CMake to "FIND_LIBRARY Ice", and the first thing it finds is /usr/lib/libICE.dylib. Then it tries to link against that, and weird things happen ...

    Turns out the default file system on a Mac is case-*preserving* but not case-*sensitive* (http://osxbook.com/book/bonus/ancient/whatismacosx/arch_fs.html). Urgh. The workaround I've found is to add NO_DEFAULT_PATH to the FIND_LIBRARY call -- dunno what you would do if you put Ice into the system directory though. I guess you just don't.

    MEF