(Delphi Linux) ld-linux.exe: error: cannot find -lgcc_s

6.6k Views Asked by At

I have set up the PAserver that was located at: C:\Program Files (x86)\Embarcadero\Studio\19.0\PAServer\LinuxPAServer19.0.tar.gz on my Ubuntu Gnome 16.10 vm.

Please note that I have never used the pa server before and this is my first time using it

After that I proceeded to make a profile on Rad Studio 10.2 and the test connection was a success.

After I compile I get this error:

[DCC Error] E2597 C:\Program Files (x86)\Embarcadero\Studio\19.0\bin\ld-linux.exe: error: cannot find -lgcc_s
  C:\Program Files (x86)\Embarcadero\Studio\19.0\bin\ld-linux.exe: error: cannot find -lc
  C:\Program Files (x86)\Embarcadero\Studio\19.0\bin\ld-linux.exe: error: cannot find -ldl
  C:\Program Files (x86)\Embarcadero\Studio\19.0\bin\ld-linux.exe: error: cannot find -lpthread
  C:\Program Files (x86)\Embarcadero\Studio\19.0\bin\ld-linux.exe: error: cannot find -lm
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\SysInit.o:SysInit:function Sysinit::__malloc(NativeUInt): error: undefined reference to 'malloc'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\SysInit.o:SysInit:function Sysinit::__free(void*): error: undefined reference to 'free'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\SysInit.o:SysInit:function Sysinit::pthread_once(int&, void (*)()): error: undefined reference to 'pthread_once'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\SysInit.o:SysInit:function Sysinit::pthread_key_create(unsigned int&, void (*)(void*)): error: undefined reference to 'pthread_key_create'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\SysInit.o:SysInit:function Sysinit::dladdr(NativeUInt, dl_info&): error: undefined reference to 'dladdr'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\SysInit.o:SysInit:function Sysinit::dlopen(char*, int): error: undefined reference to 'dlopen'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\SysInit.o:SysInit:function Sysinit::dlclose(NativeUInt): error: undefined reference to 'dlclose'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\SysInit.o:SysInit:function Sysinit::dlsym(NativeUInt, char*): error: undefined reference to 'dlsym'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\SysInit.o:SysInit:function Sysinit::TlsGetValue(unsigned int): error: undefined reference to 'pthread_getspecific'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\SysInit.o:SysInit:function Sysinit::TlsSetValue(unsigned int, void*): error: undefined reference to 'pthread_setspecific'
  SysInit.pas:1150: error: undefined reference to '_Unwind_Resume'
  System.pas:684: error: undefined reference to 'memset'
  System.pas:17775: error: undefined reference to '_Unwind_Resume'
  System.pas:16961: error: undefined reference to '_Unwind_Resume'
  System.pas:16998: error: undefined reference to '_Unwind_Resume'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::getenv(char*): error: undefined reference to 'getenv'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::__malloc(NativeUInt): error: undefined reference to 'malloc'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::calloc(NativeUInt, NativeUInt): error: undefined reference to 'calloc'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::realloc(void*, NativeUInt): error: undefined reference to 'realloc'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::__free(void*): error: undefined reference to 'free'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::__exit(int): error: undefined reference to 'exit'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::memmove(void*, void const*, NativeUInt): error: undefined reference to 'memmove'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::memset(void*, int, NativeUInt): error: undefined reference to 'memset'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::__raise(int): error: undefined reference to 'raise'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::pthread_self(): error: undefined reference to 'pthread_self'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::sched_yield(): error: undefined reference to 'sched_yield'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::dlopen(char*, int): error: undefined reference to 'dlopen'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::dlclose(NativeUInt): error: undefined reference to 'dlclose'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::dlsym(NativeUInt, char*): error: undefined reference to 'dlsym'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::dlerror(): error: undefined reference to 'dlerror'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::open(char*, int): error: undefined reference to 'open'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::__chdir(char*): error: undefined reference to 'chdir'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::__close(int): error: undefined reference to 'close'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::fchdir(int): error: undefined reference to 'fchdir'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::ftruncate(int, long): error: undefined reference to 'ftruncate'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::getcwd(char*, NativeUInt): error: undefined reference to 'getcwd'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::lseek(int, long, int): error: undefined reference to 'lseek'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::__read(int, void*, NativeUInt): error: undefined reference to 'read'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::sysconf(int): error: undefined reference to 'sysconf'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::usleep(unsigned int): error: undefined reference to 'usleep'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::__write(int, void*, NativeUInt): error: undefined reference to 'write'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::iconv(void*, char**, NativeUInt*, char**, NativeUInt*): error: undefined reference to 'iconv'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::iconv_open(char*, char*): error: undefined reference to 'iconv_open'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::iconv_close(void*): error: undefined reference to 'iconv_close'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::mmap(void*, NativeUInt, int, int, int, long): error: undefined reference to 'mmap'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::munmap(void*, NativeUInt): error: undefined reference to 'munmap'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::__error(): error: undefined reference to '__errno_location'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::wcscoll_l(int const*, int const*, void*): error: undefined reference to 'wcscoll_l'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::towupper_l(unsigned int, void*): error: undefined reference to 'towupper_l'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::setlocale(int, char const*): error: undefined reference to 'setlocale'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::newlocale(int, char const*, void*): error: undefined reference to 'newlocale'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::times(tms&): error: undefined reference to 'times'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::fegetexceptflag(unsigned short*, unsigned int): error: undefined reference to 'fegetexceptflag'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::fesetexceptflag(unsigned short*, unsigned int): error: undefined reference to 'fesetexceptflag'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::fegetround(): error: undefined reference to 'fegetround'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::fesetround(unsigned int): error: undefined reference to 'fesetround'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::fedisableexcept(unsigned int): error: undefined reference to 'fedisableexcept'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::libm_cosl(long double): error: undefined reference to 'cosl'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::libm_sinl(long double): error: undefined reference to 'sinl'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::libm_atanl(long double): error: undefined reference to 'atanl'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::libm_sqrtl(long double): error: undefined reference to 'sqrtl'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::llrintl(long double): error: undefined reference to 'llrintl'
  System.pas:17159: error: undefined reference to 'memset'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::_Unwind_RaiseException(_Unwind_Exception&): error: undefined reference to '_Unwind_RaiseException'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::_Unwind_GetRegionStart(_Unwind_Context*): error: undefined reference to '_Unwind_GetRegionStart'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::_Unwind_GetLanguageSpecificData(_Unwind_Context*): error: undefined reference to '_Unwind_GetLanguageSpecificData'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::_Unwind_SetGR(_Unwind_Context*, int, NativeUInt): error: undefined reference to '_Unwind_SetGR'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::_Unwind_GetIP(_Unwind_Context*): error: undefined reference to '_Unwind_GetIP'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.o:System:function System::_Unwind_SetIP(_Unwind_Context*, NativeUInt): error: undefined reference to '_Unwind_SetIP'
  System.pas:24170: error: undefined reference to 'memcpy'
  System.pas:23916: error: undefined reference to 'memcpy'
  System.pas:23917: error: undefined reference to 'memcpy'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Dlfcn.o:Posix.Dlfcn:function Posix::Dlfcn::dladdr(NativeUInt, dl_info&): error: undefined reference to 'dladdr'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Dlfcn.o:Posix.Dlfcn:function Posix::Dlfcn::dlopen(char*, int): error: undefined reference to 'dlopen'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Dlfcn.o:Posix.Dlfcn:function Posix::Dlfcn::dlclose(NativeUInt): error: undefined reference to 'dlclose'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Dlfcn.o:Posix.Dlfcn:function Posix::Dlfcn::dlsym(NativeUInt, char*): error: undefined reference to 'dlsym'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Fcntl.o:Posix.Fcntl:function Posix::Fcntl::__open(char*, int): error: undefined reference to 'open'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Fcntl.o:Posix.Fcntl:function Posix::Fcntl::fcntl(int, int): error: undefined reference to 'fcntl'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.SysStat.o:Posix.SysStat:function Posix::Sysstat::fstat(int, _stat&): error: undefined reference to 'fstat'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.SysStat.o:Posix.SysStat:function Posix::Sysstat::lstat(char*, _stat&): error: undefined reference to 'lstat'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.SysStat.o:Posix.SysStat:function Posix::Sysstat::stat(char*, _stat&): error: undefined reference to 'stat'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Signal.o:Posix.Signal:function Posix::Signal::sigaction(int, sigaction_t*, sigaction_t*): error: undefined reference to 'sigaction'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Signal.o:Posix.Signal:function Posix::Signal::sigaddset(sigset_t&, int): error: undefined reference to 'sigaddset'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Signal.o:Posix.Signal:function Posix::Signal::kill(int, int): error: undefined reference to 'kill'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Time.o:Posix.Time:function Posix::Time::clock_gettime(int, timespec*): error: undefined reference to 'clock_gettime'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Time.o:Posix.Time:function Posix::Time::localtime_r(long&, tm&): error: undefined reference to 'localtime_r'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.SysTime.o:Posix.SysTime:function Posix::Systime::gettimeofday(timeval&, void*): error: undefined reference to 'gettimeofday'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Locale.o:Posix.Locale:function Posix::Locale::localeconv(): error: undefined reference to 'localeconv'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Locale.o:Posix.Locale:function Posix::Locale::newlocale(int, char const*, void*): error: undefined reference to 'newlocale'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Locale.o:Posix.Locale:function Posix::Locale::freelocale(void*): error: undefined reference to 'freelocale'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Locale.o:Posix.Locale:function Posix::Locale::duplocale(void*): error: undefined reference to 'duplocale'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Locale.o:Posix.Locale:function Posix::Locale::uselocale(void*): error: undefined reference to 'uselocale'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Iconv.o:Posix.Iconv:function Posix::Iconv::iconv_open(char*, char*): error: undefined reference to 'iconv_open'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Iconv.o:Posix.Iconv:function Posix::Iconv::iconv_close(void*): error: undefined reference to 'iconv_close'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Dirent.o:Posix.Dirent:function Posix::Dirent::closedir(__dirstream*): error: undefined reference to 'closedir'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Dirent.o:Posix.Dirent:function Posix::Dirent::opendir(char*): error: undefined reference to 'opendir'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Dirent.o:Posix.Dirent:function Posix::Dirent::readdir_r(__dirstream*, dirent*, dirent*&): error: undefined reference to 'readdir_r'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Errno.o:Posix.Errno:function Posix::Errno::__error(): error: undefined reference to '__errno_location'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Fnmatch.o:Posix.Fnmatch:function Posix::Fnmatch::fnmatch(char*, char*, int): error: undefined reference to 'fnmatch'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Langinfo.o:Posix.Langinfo:function Posix::Langinfo::nl_langinfo(int): error: undefined reference to 'nl_langinfo'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Langinfo.o:Posix.Langinfo:function Posix::Langinfo::nl_langinfo_l(int, void*): error: undefined reference to 'nl_langinfo_l'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Pthread.o:Posix.Pthread:function Posix::Pthread::GetCurrentThreadID(): error: undefined reference to 'pthread_self'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Stdlib.o:Posix.Stdlib:function Posix::Stdlib::getenv(char*): error: undefined reference to 'getenv'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.String_.o:Posix.String_:function Posix::String_::memcmp(void const*, void const*, NativeUInt): error: undefined reference to 'memcmp'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.String_.o:Posix.String_:function Posix::String_::strcmp(char*, char*): error: undefined reference to 'strcmp'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.String_.o:Posix.String_:function Posix::String_::strerror_r(int, char*, NativeUInt): error: undefined reference to 'strerror_r'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Unistd.o:Posix.Unistd:function Posix::Unistd::euidaccess(char*, int): error: undefined reference to 'access'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Unistd.o:Posix.Unistd:function Posix::Unistd::__close(int): error: undefined reference to 'close'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Unistd.o:Posix.Unistd:function Posix::Unistd::getpid(): error: undefined reference to 'getpid'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Unistd.o:Posix.Unistd:function Posix::Unistd::__read(int, void*, NativeUInt): error: undefined reference to 'read'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Unistd.o:Posix.Unistd:function Posix::Unistd::__write(int, void*, NativeUInt): error: undefined reference to 'write'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Semaphore.o:Posix.Semaphore:function Posix::Semaphore::sem_destroy(sem_t&): error: undefined reference to 'sem_destroy'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Semaphore.o:Posix.Semaphore:function Posix::Semaphore::sem_getvalue(sem_t&, int&): error: undefined reference to 'sem_getvalue'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Semaphore.o:Posix.Semaphore:function Posix::Semaphore::sem_init(sem_t&, int, unsigned int): error: undefined reference to 'sem_init'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Semaphore.o:Posix.Semaphore:function Posix::Semaphore::sem_post(sem_t&): error: undefined reference to 'sem_post'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Semaphore.o:Posix.Semaphore:function Posix::Semaphore::sem_trywait(sem_t&): error: undefined reference to 'sem_trywait'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Semaphore.o:Posix.Semaphore:function Posix::Semaphore::sem_wait(sem_t&): error: undefined reference to 'sem_wait'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Semaphore.o:Posix.Semaphore:function Posix::Semaphore::sem_timedwait(sem_t&, timespec&): error: undefined reference to 'sem_timedwait'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.SysUtsname.o:Posix.SysUtsname:function Posix::Sysutsname::uname(utsname&): error: undefined reference to 'uname'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Wchar.o:Posix.Wchar:function Posix::Wchar::wcscoll_l(int const*, int const*, void*): error: undefined reference to 'wcscoll_l'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Wchar.o:Posix.Wchar:function Posix::Wchar::wcscasecmp_l(int const*, int const*, void*): error: undefined reference to 'wcscasecmp_l'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Wctype.o:Posix.Wctype:function Posix::Wctype::towlower_l(unsigned int, void*): error: undefined reference to 'towlower_l'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\Posix.Wctype.o:Posix.Wctype:function Posix::Wctype::towupper_l(unsigned int, void*): error: undefined reference to 'towupper_l'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.Internal.ExcUtils.o:System.Internal.ExcUtils:function System::Internal::Excutils::TlsGetValue(int): error: undefined reference to 'pthread_getspecific'
  System.SysUtils.pas:978: error: undefined reference to 'memset'
  c:\program files (x86)\embarcadero\studio\19.0\lib\Linux64\debug\System.SysUtils.o:System.SysUtils:function System::Sysutils::gnu_get_libc_version(): error: undefined reference to 'gnu_get_libc_version'
9

There are 9 best solutions below

0
Newb101 On BEST ANSWER

I fixed this by removing the SDK and re-adding it and selecting no to all when asked to overwrite some files.

1
Jhonny Arley Suarez Gutierrez On

Try, this in terminal:

1) Install Package Dev, with:

sudo apt-get install joe wget p7zip-full curl build-essential zlib1g-dev libcurl4-gnutls-dev

If this is still not enough, install the whole SDK, like this:

2)

sudo add-apt-repository ppa:ubuntu-sdk-team/ppa && sudo apt update && sudo apt dist-upgrade && sudo apt install ubuntu-sdk-ide

I hope it helps you.

2
biznow On

This is my answer:

You lack the package gcc so you can install it with:

sudo apt install gcc

1
netcodecz On

I have same problem on CentOS 7 and solved by

[DCC Error] E2597 C:\Program Files (x86)\Embarcadero\Studio\19.0\bin\ld-linux.exe: error: cannot find -lgcc_s

yum install glibc-static

yum install glibc-devel

yum install zlib-devel

or if not enought

yum install compat-libstdc++-33

yum install compat-gcc-44-c++

3
Jhonny Arley Suarez Gutierrez On

You must install the officially supported Ubuntu Server version 16.04.2 LTS

1
Belov V. On

1) Install the package gcc-6 and linux-compiler-gcc-6-x86

2) Update the local file cache on RAD for the selected version of Linux SDK (in Option->SDK Manager->"button at the bottom")

0
Marco Carboni On

If you are using parallels desktop to develop from your Mac, make sure you don't have shared folder on documents. This is going to lead to this message as the SDKs folder used to cross compile are located in such folder. Being shared it's int the form \Mac\Home\Documents\Studio\SDKs, which the compiled doesn't like. Make sure at least that those paths point to a local folder.

Hope this helps.

2
Walter Campelo On

This problem is still occurring in Delphi 10.3.3 Rio, when you use a Parallels VM (I don't know if it also occurs with other VMs).

The problem is that the VM shares the host's Documents folder, which is something like "\ Mac \ Home \ Documents \ ...".

The solution is to copy the Linux SDK to a folder inside the VM, for example, inside the folder "C: \ Users \ Public \ Documents \ Embarcadero \ Studio \ 20.0 \ PlatformSDKs" (which is the default local folder).

Then, change the BDSPLATFORMSDKSDIR environment variable in Delphi "Options | IDE | Environment variables" to the local folder where you copied your Linux SDK.

Finally, go to (Options | Deployment | SDK Manager), select the Linux SDK and press the "Update local file cache" button.

Done. Recompile your project and it will work.

0
k0d3g3ar On

If you happen to be running Delphi on Parallels on a Mac, and have done everything else that is suggested here, and it still isn't working, I was able to fix it by changing the environment variable in the Delphi IDE for BDSPLATFORMSDKSDIR. The problem is that when I had set this up, Delphi decided to use a shared folder for my local projects, etc. and I didn't realize this but it also put the SDKs folder in there as well. For some reason, it was unable to execute anything from the shared folder.

I just changed the BDSPLATFORMSDKSDIR value with an override that pointed to my Public Documents folder, and then went back into each Linux SDK I had installed and refreshed the local cache. It then re-installed all the libraries, etc. from Linux but into the Public Documents folder.

Then all problems went away. It seems that this manifests as a Linux error, but in fact was simply a Windows permissions to execute from a shared folder for me.

Hope this helps someone out.