Recent

Author Topic: powerpc-aix-ld.exe: this linker was not configured to use sysroots  (Read 6662 times)

Pascal

  • Hero Member
  • *****
  • Posts: 932
I tried to crosscompile a simple hello world from Win32/i386 to AIX/powerpc.
I added -XR/full/path/to/aixroot to the Lazarus project options but i get the following error:

Code: Text  [Select][+][-]
  1. Hint: (11030) Start of reading config file C:\freepascal\fpc\trunk\bin\i386-win32\fpc.cfg
  2. Hint: (11031) End of reading config file C:\freepascal\fpc\trunk\bin\i386-win32\fpc.cfg
  3. Free Pascal Compiler version 3.3.1 [2018/10/17] for powerpc
  4. Copyright (c) 1993-2018 by Florian Klaempfl and others
  5. (1002) Target OS: AIX for PowerPC
  6. (3104) Compiling unixtest.lpr
  7. (9009) Assembling unixtest
  8. (9015) Linking C:\freepascal\projects\unixtest\unixtest
  9. C:\freepascal\fpc\trunk\bin\i386-win32\powerpc-aix-ld.exe: this linker was not configured to use sysroots
  10. C:\freepascal\projects\unixtest\unixtest.lpr(13,25) Error: (9013) Error while linking
  11. C:\freepascal\projects\unixtest\unixtest.lpr(13,25) Fatal: (10026) There were 1 errors compiling module, stopping
  12. Fatal: (1018) Compilation aborted

What is the problem with powerpc-aix-ld.exe?
laz trunk x64 - fpc trunk i386 (cross x64) - Windows 10 Pro x64 (21H2)

Pascal

  • Hero Member
  • *****
  • Posts: 932
Re: powerpc-aix-ld.exe: this linker was not configured to use sysroots
« Reply #1 on: October 19, 2018, 08:10:25 am »
Is someone familiar with cross compiling to AIX?
laz trunk x64 - fpc trunk i386 (cross x64) - Windows 10 Pro x64 (21H2)

DonAlfredo

  • Hero Member
  • *****
  • Posts: 1738
Re: powerpc-aix-ld.exe: this linker was not configured to use sysroots
« Reply #2 on: October 19, 2018, 07:00:22 pm »
You might try fpcupdeluxe (latest, v1.6.2c).
It has the possibility to cross-compile towards ppc[64]-aix.

Or use only the binutils. Perhaps these will work better for you.
https://github.com/newpascal/fpcupdeluxe/releases/download/wincrossbins_v1.0/WinCrossBinsAIXPowerPC.zip

Pascal

  • Hero Member
  • *****
  • Posts: 932
Re: powerpc-aix-ld.exe: this linker was not configured to use sysroots
« Reply #3 on: October 21, 2018, 06:48:45 am »
Thanks, linker seems to work. But something is probably wrong with the libs i have:

Code: Text  [Select][+][-]
  1. Hint: (11030) Start of reading config file C:\freepascal\fpc\trunk\bin\i386-win32\fpc.cfg
  2. Hint: (11031) End of reading config file C:\freepascal\fpc\trunk\bin\i386-win32\fpc.cfg
  3. Free Pascal Compiler version 3.3.1 [2018/10/20] for powerpc
  4. Copyright (c) 1993-2018 by Florian Klaempfl and others
  5. (1002) Target OS: AIX for PowerPC
  6. (3104) Compiling unixtest.lpr
  7. (9009) Assembling unixtest
  8. (9015) Linking C:\freepascal\projects\unixtest\unixtest
  9. C:\freepascal\fpc\trunk\bin\i386-win32\powerpc-aix-ld.exe: C:\freepascal\aixroot\lib\crt0.o: bad string table size 0
  10. C:\freepascal\aixroot\lib\crt0.o: error adding symbols: Bad value
  11. C:\freepascal\projects\unixtest\unixtest.lpr(13,25) Error: (9013) Error while linking
  12. C:\freepascal\projects\unixtest\unixtest.lpr(13,25) Fatal: (10026) There were 1 errors compiling module, stopping
  13. Fatal: (1018) Compilation aborted
laz trunk x64 - fpc trunk i386 (cross x64) - Windows 10 Pro x64 (21H2)

Thaddy

  • Hero Member
  • *****
  • Posts: 14157
  • Probably until I exterminate Putin.
Re: powerpc-aix-ld.exe: this linker was not configured to use sysroots
« Reply #4 on: October 21, 2018, 07:16:45 am »
crt0 is a C lib. Which C compiler one are you using? Endianness? Bitness?
Specialize a type, not a var.

Pascal

  • Hero Member
  • *****
  • Posts: 932
Re: powerpc-aix-ld.exe: this linker was not configured to use sysroots
« Reply #5 on: October 22, 2018, 08:25:40 am »
The problem was that i donwloaded the libs in ascii mode instead of binary.

But now i get the following errors:

Code: Text  [Select][+][-]
  1. Hint: (11030) Start of reading config file C:\freepascal\fpc\trunk\bin\i386-win32\fpc.cfg
  2. Hint: (11031) End of reading config file C:\freepascal\fpc\trunk\bin\i386-win32\fpc.cfg
  3. Free Pascal Compiler version 3.3.1 [2018/10/22] for powerpc
  4. Copyright (c) 1993-2018 by Florian Klaempfl and others
  5. (1002) Target OS: AIX for PowerPC
  6. (3104) Compiling unixtest.lpr
  7. (9009) Assembling unixtest
  8. (9015) Linking C:\freepascal\projects\unixtest\unixtest
  9. C:\freepascal\aixroot\lib\crt0.o: :(.tc+0x0): undefined reference to `__crt0v'
  10. C:\freepascal\aixroot\lib\crt0.o: :(.tc+0x0): undefined reference to `__mod_init'
  11. C:\freepascal\aixroot\lib\crt0.o: :(.tc+0x0): undefined reference to `__malloc_user_defined_name'
  12. C:\freepascal\aixroot\lib\crt0.o: :(.tc+0x0): undefined reference to `errno'
  13. C:\freepascal\aixroot\lib\crt0.o: :(.pr+0x6): undefined reference to `__crt0v'
  14. C:\freepascal\aixroot\lib\crt0.o: :(.pr+0x1e): undefined reference to `__mod_init'
  15. C:\freepascal\aixroot\lib\crt0.o: :(.pr+0x3a): undefined reference to `__malloc_user_defined_name'
  16. C:\freepascal\aixroot\lib\crt0.o: :(.pr+0x5a): undefined reference to `errno'
  17. C:\freepascal\aixroot\lib\crt0.o: :(.pr+0x80): undefined reference to `.exit'
  18. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x774): undefined reference to `._Errno'
  19. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x7a8): undefined reference to `._Errno'
  20. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0xb88): undefined reference to `.open64'
  21. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x10f0): undefined reference to `.bcopy'
  22. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x1140): undefined reference to `.memset'
  23. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x1198): undefined reference to `.memchr'
  24. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x1224): undefined reference to `.memcmp'
  25. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x12c4): undefined reference to `.strncmp'
  26. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x1308): undefined reference to `.strlen'
  27. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x138c): undefined reference to `.strcpy'
  28. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x13cc): undefined reference to `.strchr'
  29. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x140c): undefined reference to `.strrchr'
  30. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x1448): undefined reference to `.strcmp'
  31. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x1484): undefined reference to `.strcasecmp'
  32. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x14c8): undefined reference to `.strncmp'
  33. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x150c): undefined reference to `.strncasecmp'
  34. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x59b0): undefined reference to `.frexp'
  35. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x5a04): undefined reference to `.ldexp'
  36. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x63d0): undefined reference to `.ldexp'
  37. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x6708): undefined reference to `.ldexp'
  38. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x69c4): undefined reference to `.ldexp'
  39. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x6abc): undefined reference to `.ldexp'
  40. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x27e4c): undefined reference to `.mmap64'
  41. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x27eb0): undefined reference to `.munmap'
  42. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x2d380): undefined reference to `.close'
  43. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x2d400): undefined reference to `.stat64'
  44. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x2d488): undefined reference to `.unlink'
  45. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x2d52c): undefined reference to `.ftruncate64'
  46. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x2d5d0): undefined reference to `.rename'
  47. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x2d674): undefined reference to `.write'
  48. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x2d778): undefined reference to `.read'
  49. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x2d878): undefined reference to `.lseek64'
  50. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x2d944): undefined reference to `.lseek64'
  51. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x2d9f0): undefined reference to `.lseek64'
  52. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x2daac): undefined reference to `.fstat64'
  53. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x38e34): undefined reference to `.mkdir'
  54. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x38f4c): undefined reference to `.rmdir'
  55. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x39000): undefined reference to `.chdir'
  56. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x3911c): undefined reference to `.getcwd'
  57. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x3a77c): undefined reference to `._exit'
  58. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x3a8f4): undefined reference to `.time'
  59. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x3a9c0): undefined reference to `.sigprocmask'
  60. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x3abc8): undefined reference to `.sigaction'
  61. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x3ac5c): undefined reference to `.sigaction'
  62. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x3ac70): undefined reference to `.sigaction'
  63. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x3ac84): undefined reference to `.sigaction'
  64. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x3ac98): undefined reference to `.sigaction'
  65. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x3b148): undefined reference to `.getpid'
  66. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x3b354): undefined reference to `.fp_trap'
  67. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x3b36c): undefined reference to `.fp_trap'
  68. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\system.o:system.pp:(.pr+0x3b3c0): undefined reference to `.fp_enable'
  69. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\lnfogdb.o:lnfogdb.pp:(.pr+0x5c): undefined reference to `.getpid'
  70. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x1f0): undefined reference to `.getenv'
  71. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x898): undefined reference to `.open64'
  72. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0xbdc): undefined reference to `.link'
  73. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0xc9c): undefined reference to `.mkfifo'
  74. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0xd50): undefined reference to `.chmod'
  75. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0xe0c): undefined reference to `.chown'
  76. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0xec0): undefined reference to `.utime'
  77. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0xf28): undefined reference to `.getcwd'
  78. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x1008): undefined reference to `.execve'
  79. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x10c4): undefined reference to `.execve'
  80. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x1170): undefined reference to `.chdir'
  81. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x12e0): undefined reference to `.mkdir'
  82. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x138c): undefined reference to `.unlink'
  83. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x1438): undefined reference to `.rmdir'
  84. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x1514): undefined reference to `.rename'
  85. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x15d4): undefined reference to `.stat64'
  86. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x1688): undefined reference to `.lstat64'
  87. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x16f0): undefined reference to `.lstat64'
  88. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x1790): undefined reference to `.lstat64'
  89. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x1844): undefined reference to `.access'
  90. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x18ac): undefined reference to `.fstat64'
  91. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x18f8): undefined reference to `.fstat64'
  92. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x1968): undefined reference to `.sigaction'
  93. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x19d4): undefined reference to `.read'
  94. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x1a1c): undefined reference to `.write'
  95. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x1c7c): undefined reference to `.opendir64'
  96. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x1d08): undefined reference to `.opendir64'
  97. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x1d74): undefined reference to `.stat64'
  98. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x1df8): undefined reference to `.dup'
  99. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x1e68): undefined reference to `.dup'
  100. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x1f98): undefined reference to `.dup2'
  101. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x2018): undefined reference to `.dup2'
  102. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x2048): undefined reference to `.time'
  103. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x210c): undefined reference to `.select'
  104. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x21bc): undefined reference to `.select'
  105. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x21e8): undefined reference to `.select'
  106. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x22dc): undefined reference to `.waitpid'
  107. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\baseunix.o:baseunix.pp:(.pr+0x2394): undefined reference to `.readlink'
  108. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0x60): undefined reference to `.statfs'
  109. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0xc0): undefined reference to `.close'
  110. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0x144): undefined reference to `.close'
  111. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0x1e0): undefined reference to `.pipe'
  112. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0x48c): undefined reference to `.waitpid'
  113. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0x6f4): undefined reference to `.execve'
  114. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0xc04): undefined reference to `.system'
  115. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0x178c): undefined reference to `.close'
  116. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0x1a40): undefined reference to `.time'
  117. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0x1ccc): undefined reference to `.select'
  118. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0x1cf8): undefined reference to `.select'
  119. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0x1e74): undefined reference to `.lseek64'
  120. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0x1fc0): undefined reference to `.write'
  121. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0x1fe8): undefined reference to `.read'
  122. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0x20c0): undefined reference to `.close'
  123. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0x23d8): undefined reference to `.fork'
  124. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0x24e8): undefined reference to `._exit'
  125. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0x2594): undefined reference to `._exit'
  126. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0x25dc): undefined reference to `._exit'
  127. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0x27ac): undefined reference to `.fork'
  128. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0x2834): undefined reference to `.dup2'
  129. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0x287c): undefined reference to `._exit'
  130. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0x28b4): undefined reference to `.dup2'
  131. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0x28e8): undefined reference to `._exit'
  132. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0x2930): undefined reference to `._exit'
  133. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0x2d7c): undefined reference to `.fork'
  134. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0x3100): undefined reference to `.fork'
  135. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0x3480): undefined reference to `.getdomainname'
  136. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0x34e4): undefined reference to `.uname'
  137. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\unix.o:unix.pp:(.pr+0x3850): undefined reference to `.stat64'
  138. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\sysutils.o:sysutils.pp:(.pr+0x1bc): undefined reference to `.sigaction'
  139. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\sysutils.o:sysutils.pp:(.pr+0x70c): undefined reference to `.sigaction'
  140. C:\freepascal\fpc\trunk\units\powerpc-aix\rtl\sysutils.o:sysutils.pp:(.pr+0x2cd84): undefined reference to `.strcpy'
  141. ...
  142. C:\freepascal\aixroot/lib/libm.a(fenv.o):../../../../../../../src/bos/usr/ccs/lib/libm/fenv.c:(.pr+0x1d0): undefined reference to `.fp_trapstate'
  143. C:\freepascal\aixroot/lib/libm.a(fenv.o):../../../../../../../src/bos/usr/ccs/lib/libm/fenv.c:(.pr+0x26c): undefined reference to `.fp_read_rnd'
  144. C:\freepascal\aixroot/lib/libm.a(fenv.o):../../../../../../../src/bos/usr/ccs/lib/libm/fenv.c:(.pr+0x2d4): undefined reference to `.fp_read_flag'
  145. C:\freepascal\aixroot/lib/libm.a(fenv.o):../../../../../../../src/bos/usr/ccs/lib/libm/fenv.c:(.pr+0x368): undefined reference to `.fp_set_flag'
  146. C:\freepascal\aixroot/lib/libm.a(fenv.o):../../../../../../../src/bos/usr/ccs/lib/libm/fenv.c:(.pr+0x370): undefined reference to `.fp_read_flag'
  147. C:\freepascal\aixroot/lib/libm.a(fenv.o):../../../../../../../src/bos/usr/ccs/lib/libm/fenv.c:(.pr+0x3b4): undefined reference to `.fp_read_flag'
  148. C:\freepascal\aixroot/lib/libm.a(fenv.o):../../../../../../../src/bos/usr/ccs/lib/libm/fenv.c:(.pr+0x3e4): undefined reference to `.fp_clr_flag'
  149. C:\freepascal\aixroot/lib/libm.a(fenv.o):../../../../../../../src/bos/usr/ccs/lib/libm/fenv.c:(.pr+0x434): undefined reference to `.fp_raise_xcp'
  150. C:\freepascal\aixroot/lib/libm.a(fenv.o):../../../../../../../src/bos/usr/ccs/lib/libm/fenv.c:(.pr+0x49c): undefined reference to `.fp_read_flag'
  151. C:\freepascal\aixroot/lib/libm.a(fenv.o):../../../../../../../src/bos/usr/ccs/lib/libm/fenv.c:(.pr+0x528): undefined reference to `.fp_clr_flag'
  152. C:\freepascal\aixroot/lib/libm.a(fenv.o):../../../../../../../src/bos/usr/ccs/lib/libm/fenv.c:(.pr+0x530): undefined reference to `.fp_read_flag'
  153. C:\freepascal\aixroot/lib/libm.a(fenv.o):../../../../../../../src/bos/usr/ccs/lib/libm/fenv.c:(.pr+0x550): undefined reference to `.fp_clr_flag'
  154. C:\freepascal\aixroot/lib/libm.a(fenv.o):../../../../../../../src/bos/usr/ccs/lib/libm/fenv.c:(.pr+0x558): undefined reference to `.fp_read_flag'
  155. C:\freepascal\aixroot/lib/libm.a(fenv.o):../../../../../../../src/bos/usr/ccs/lib/libm/fenv.c:(.pr+0x5c4): undefined reference to `.fp_swap_rnd'
  156. C:\freepascal\aixroot/lib/libm.a(floor.o):../../../../../../../src/bos/usr/ccs/lib/libm/floor.c:(.pr+0xe8): undefined reference to `.fp_is_enabled'
  157. C:\freepascal\aixroot/lib/libm.a(floor.o):../../../../../../../src/bos/usr/ccs/lib/libm/floor.c:(.pr+0x194): undefined reference to `.fp_enable'
  158. C:\freepascal\aixroot/lib/libm.a(floor.o):../../../../../../../src/bos/usr/ccs/lib/libm/floor.c:(.pr+0x1cc): undefined reference to `.fp_enable'
  159. C:\freepascal\aixroot/lib/libm.a(floor.o):../../../../../../../src/bos/usr/ccs/lib/libm/floor.c:(.pr+0x1dc): undefined reference to `.fp_disable'
  160. C:\freepascal\aixroot/lib/libm.a(__set_errno128.o):../../../../../../../src/bos/usr/ccs/lib/libm/__set_errno128.c:(.pr+0x14): undefined reference to `._Errno'
  161. C:\freepascal\aixroot/lib/libm.a(sqrt_raise_xcp.o):../../../../../../../src/bos/usr/ccs/lib/libm/POWER/sqrt_raise_xcp.c:(.pr+0x2c): undefined reference to `.getenv'
  162. C:\freepascal\aixroot/lib/libm.a(sqrt_raise_xcp.o):../../../../../../../src/bos/usr/ccs/lib/libm/POWER/sqrt_raise_xcp.c:(.pr+0x38): undefined reference to `.strcmp'
  163. C:\freepascal\aixroot/lib/libm.a(sqrt_raise_xcp.o):../../../../../../../src/bos/usr/ccs/lib/libm/POWER/sqrt_raise_xcp.c:(.pr+0x7c): undefined reference to `.fp_raise_xcp'
  164. C:\freepascal\aixroot/lib/libm.a(sqrt_raise_xcp.o):../../../../../../../src/bos/usr/ccs/lib/libm/POWER/sqrt_raise_xcp.c:(.pr+0x9c): undefined reference to `.fp_raise_xcp'
  165. C:\freepascal\projects\unixtest\unixtest.lpr(13,25) Error: (9013) Error while linking
  166. C:\freepascal\projects\unixtest\unixtest.lpr(13,25) Fatal: (10026) There were 1 errors compiling module, stopping
  167. Fatal: (1018) Compilation aborted
  168.  

System is AIX 7.1.0.0

Any ideas?
« Last Edit: October 22, 2018, 11:52:26 am by Pascal »
laz trunk x64 - fpc trunk i386 (cross x64) - Windows 10 Pro x64 (21H2)

Thaddy

  • Hero Member
  • *****
  • Posts: 14157
  • Probably until I exterminate Putin.
Re: powerpc-aix-ld.exe: this linker was not configured to use sysroots
« Reply #6 on: October 22, 2018, 10:23:30 am »
You are missing the whole C std library in your linker path. Seems an issue with your C compiler install.
should be something like "export GCCLIBDIR=/the/path/to/the/c/library/binaries"
« Last Edit: October 22, 2018, 10:25:24 am by Thaddy »
Specialize a type, not a var.

DonAlfredo

  • Hero Member
  • *****
  • Posts: 1738
Re: powerpc-aix-ld.exe: this linker was not configured to use sysroots
« Reply #7 on: October 23, 2018, 07:36:20 am »
Quote
Target OS: AIX for PowerPC
You are building for 32bit.
You could try powerpc64 as target. Perhaps the libs are only suitable for 64bit.

Pascal

  • Hero Member
  • *****
  • Posts: 932
Re: powerpc-aix-ld.exe: this linker was not configured to use sysroots
« Reply #8 on: October 23, 2018, 08:23:21 am »
Quote
Target OS: AIX for PowerPC
You are building for 32bit.
You could try powerpc64 as target. Perhaps the libs are only suitable for 64bit.

Okay, but where can i find the cross tools for powerpc64?
laz trunk x64 - fpc trunk i386 (cross x64) - Windows 10 Pro x64 (21H2)


Pascal

  • Hero Member
  • *****
  • Posts: 932
Re: powerpc-aix-ld.exe: this linker was not configured to use sysroots
« Reply #10 on: October 23, 2018, 11:50:51 am »
Tools are universal !
Use -a64.

How do i tell this to make?
Code: Text  [Select][+][-]
  1. make crossinstall OPT="-godwarfsets -gl -O-" OS_TARGET=aix CPU_TARGET=powerpc64 INSTALL_PREFIX=%myFPC% PP=%mybinutils%\ppc386.exe DATA2INC=%myFPC%\utils\data2inc.exe

If i use CPU_TARGET=powerpc64 make tries to use powerpc64-aix-as.exe instead of powerpc-aix-as.exe.

Code: Text  [Select][+][-]
  1. system.pp(300) Error: Assembler powerpc64-aix-as.exe not found, switching to external assembling
laz trunk x64 - fpc trunk i386 (cross x64) - Windows 10 Pro x64 (21H2)


marcov

  • Administrator
  • Hero Member
  • *
  • Posts: 11351
  • FPC developer.
Re: powerpc-aix-ld.exe: this linker was not configured to use sysroots
« Reply #12 on: October 23, 2018, 12:01:44 pm »
And  AS=as  (for the startup code)

Pascal

  • Hero Member
  • *****
  • Posts: 932
Re: powerpc-aix-ld.exe: this linker was not configured to use sysroots
« Reply #13 on: October 23, 2018, 12:44:36 pm »
Creation of cross compiler works! Many thanks for the hints!

But cross compiling still does not work:

Code: Text  [Select][+][-]
  1. Hint: (11030) Start of reading config file C:\freepascal\fpc\trunk\bin\i386-win32\fpc.cfg
  2. Hint: (11031) End of reading config file C:\freepascal\fpc\trunk\bin\i386-win32\fpc.cfg
  3. Free Pascal Compiler version 3.3.1 [2018/10/23] for powerpc64
  4. Copyright (c) 1993-2018 by Florian Klaempfl and others
  5. (1002) Target OS: AIX for PowerPC64
  6. (3104) Compiling unixtest.lpr
  7. (9009) Assembling unixtest
  8. (9015) Linking C:\freepascal\projects\unixtest\unixtest
  9. C:\freepascal\fpc\trunk\bin\i386-win32\powerpc-aix-ld.exe: C:\freepascal\aixroot\lib\crt0_64.o: symbol `_tdata' has unrecognized smclas 20
  10. C:\freepascal\aixroot\lib\crt0_64.o: error adding symbols: Bad value
  11. C:\freepascal\projects\unixtest\unixtest.lpr(13,25) Error: (9013) Error while linking
  12. C:\freepascal\projects\unixtest\unixtest.lpr(13,25) Fatal: (10026) There were 1 errors compiling module, stopping
  13. Fatal: (1018) Compilation aborted

I zipped /usr/lib on the AIX machine and unzipped it in C:\freepascal\aixroot and then created the symlink lib to usr\lib.

Do i have to pass "-a64" to the binutils somehow?

laz trunk x64 - fpc trunk i386 (cross x64) - Windows 10 Pro x64 (21H2)

DonAlfredo

  • Hero Member
  • *****
  • Posts: 1738
Re: powerpc-aix-ld.exe: this linker was not configured to use sysroots
« Reply #14 on: October 23, 2018, 01:42:16 pm »
Passing -a64 is not necessary. It is done for you by FPC itself.

However, your current problem seems to be more severe.
Its a linker-script problem. This linker-script is generated by FPC.
It will be hard to solve this problem (by me).
I have a clue, but perhaps somebody else has a better clue.

Anyhow.

If you want/need my further help, its time to send me the libs somehow.
I need to look at the linker problem in detail. And that is only possible (for me) by testing on my own PC.

Sorry about this.

 

TinyPortal © 2005-2018