Остало

Мац симбол(и) грешке нису пронађени за архитектуру к86_64

тамо

Оригинални постер
22. јул 2016
  • 22. јул 2016
Здраво свима,

Радим на пројекту који се састоји од компајлирања Виндовс апликације на Мац-у. Апликација је написана у Ц++ са Кт-ом. Састоји се од библиотека и главног пројекта:
хттп://хпицс.ли/д8бб2ец
Пројекат користи екстерну библиотеку, ОДА, за управљање .двг и .дгн датотекама.
Проблем је у томе што када компајлирам прву библиотеку (МдЦоре), добијам грешку: симбол(и) нису пронађени за архитектуру к86_64.
Прво сам додао -стдлиб=либстдц++ аргументу кмаке, али Кт ми је генерисао датотеке од 0 бајтова, тако да то није било решење.
Пробао сам различите верзије ОДА библиотеке: 32-битна, 64-битна за ОСКС 10.7 и 10.11. (Мој Мац је на ОСКС 10.11)
Направио сам команду 'филе' у својим библиотекама и ево излаза:

:
.а: тренутна ар архива насумична библиотека

.дилиб:
Мацх-0 универзални бинарни програм са 2 архитектуре
(за архитектуру к68_64): Мацх-0 64-битна динамички повезана дељена библиотека к86_64
(за архитектуру и386): Мацх-0 динамички повезана дељена библиотека и386

Покушао сам да компајлирам на 32 и 64бит, али то ништа не мења. Имам овај проблем две недеље и не знам шта да радим

Направио сам тему на Кт форуму, можда можете пронаћи више информација:
хттпс://форум.кт.ио/топиц/69171/цомпиле-генерате-0-бите-филес-он-ос-к/11
хттпс://форум.кт.ио/топиц/69171/цомпиле-генерате-0-бите-филес-он-ос-к/11
Ако неко има неки траг или решење биће заинтересован

Хвала ! Ц

цкекбесд

4. јуна 2009


Немачка
  • 22. јул 2016
Не знам ништа о кмаке-у, али би можда требало само да објавите које су ваше команде компајлера за превођење и можда ће неко моћи да види шта није у реду.

тамо

Оригинални постер
22. јул 2016
  • 22. јул 2016
здраво цкекбесд, хвала на одговору, ево почетка излаза градње:

17:34:10: Почетак: '/Усерс/девелоппемент/Кт/5.7/цланг_64/бин/кмаке' /Усерс/девелоппемент/Десктоп/Медиацад2/МдЦоре/МдЦоре.про -р -спец мацк-цланг ЦОНФИГ+=дебуг ЦОНФИГ+=дебуг ЦОНФИГ к86_64 ЦОНФИГ+=кмл_дебуг

17:34:10: Процес '/Усерс/девелоппемент/Кт/5.7/цланг_64/бин/кмаке' је нормално завршен

17:34:10: Почетак: '/уср/бин/маке'

... Ц

цкекбесд

4. јуна 2009
Немачка
  • 24. јул 2016
Оно што сам мислио је да је кмаке само алатка за позивање компајлера. Можете ли пронаћи линију у којој кмаке позива компајлер? Вероватно га не зове исправно или би ствари функционисале. Барем треба почети.

тамо

Оригинални постер
22. јул 2016
  • 25. јул 2016
Мислим да је овде:
Шифра: |_+_|
у свом излазу компилације имам те редове неколико пута, али се мења само последњи ред (мења се име датотеке)

Уреди: ево истих линија али са размацима између њих
Шифра: |_+_| Последњи пут изменио модератор: 25. јул 2016 Ц

цкекбесд

4. јуна 2009
Немачка
  • 25. јул 2016
Требало би да постоји и линија повезивања – нпр. линија у којој се цланг++ позива без -ц аргумента. Можда би било корисно ако можете да налепите везу до целог излаза.

тамо

Оригинални постер
22. јул 2016
  • 26. јул 2016
Мислим да није могуће променити аргументе компајлера. Могу то урадити уз помоћ.
Ево целог излаза (веома је дугачак! 100.000 редова): хттп://тектуп.фр/171939хЦ


Уреди: компајлирао сам са промптом тако да имам више редова на излазу, а последњи редови су занимљиви:


Недефинисани симболи за архитектуру к86_64:

Шифра: |_+_| Последњи пут изменио модератор: 26. јул 2016 Ц

цкекбесд

4. јуна 2009
Немачка
  • 26. јул 2016
Мислим да је 100К излаза за било шта осим најкомпликованијег система вероватно знак да су ствари негде пошле наопако – али то је општији коментар о стању у индустрији.

Назад на ваш конкретан проблем. Не видим грешке повезивања које сте објавили у 'пуном излазу', али ово изгледа само као обичне грешке повезивача. Као и на другим платформама, можете користити нм (или Гоогле) да пронађете где су ти симболи дефинисани и изгледа да се налази у /Систем/Либрари/Фрамеворкс/ЦореФоундатион.фрамеворк/Версионс/А/ЦореФоундатион за мене (али ја имам веома стари Мац тако да то можда није истина за вас).

Не бисте се директно повезивали са том библиотеком. Покушајте да додате код: |_+_| на ваше заставице линкера.

тамо

Оригинални постер
22. јул 2016
  • 27. јул 2016
Да, ти си у праву !! Хвала вам пуно, сада могу да саставим! Суочавао сам се са овим проблемом 3 недеље! Хвала пуно ! ВИТХ

зибби

5. фебруар 2019
  • 5. фебруар 2019
цкекбесд је рекао: Мислим да је 100К излаза за изградњу из било чега осим најкомпликованијег система вероватно знак да су ствари негде пошле наопако - али то је општији коментар о стању у индустрији.

Назад на ваш конкретан проблем. Не видим грешке повезивања које сте објавили у 'пуном излазу', али ово изгледа само као обичне грешке повезивача. Као и на другим платформама, можете користити нм (или Гоогле) да пронађете где су ти симболи дефинисани и изгледа да се налази у /Систем/Либрари/Фрамеворкс/ЦореФоундатион.фрамеворк/Версионс/А/ЦореФоундатион за мене (али ја имам веома стари Мац тако да то можда није истина за вас).

Не бисте се директно повезивали са том библиотеком. Покушајте да додате код: |_+_| на ваше заставице линкера.
ВИТХ

зибби

5. фебруар 2019
  • 5. фебруар 2019
здраво људи ... наишао сам на врло сличан проблем ... али користим терминал за компајлирање ... може ли неко помоћи како могу да урадим исто решење у случају терминала?

Имам спреман ./цонфигуре фајл и ради глатко, али добијам ффи... повезане 'симболи нису пронађени...' и нешто што има везе са линкером када покренем маке

окиеиам

17. децембра 2016
  • 8. фебруар 2019
зибби је рекао: здраво момци ... наишао сам на врло сличан проблем ... али користим терминал за компајлирање ... може ли неко помоћи како могу да урадим исто решење у случају терминала?

Имам спреман ./цонфигуре фајл и ради глатко, али добијам ффи... повезане 'симболи нису пронађени...' и нешто што има везе са линкером када покренем маке
енв ЦППФЛАГС='-И/хоме/фоо/св/инцлуде' ЛДФЛАГС='-Л/хоме/фоо/св/либ/' ./цонфигуре