Muud

Maci veasümbolit ei leitud arhitektuuri x86_64 jaoks

Seal

Originaalplakat
22. juuli 2016
  • 22. juuli 2016
Tere kõigile,

Töötan projekti kallal, mis seisneb Windowsi rakenduse kompileerimises Macis. Rakendus on kirjutatud C++ keeles Qt-ga. See koosneb raamatukogudest ja põhiprojektist:
http://hpics.li/d8bb2ec
Projekt kasutab .dwg- ja .dgn-failide haldamiseks välist teeki ODA.
Probleem on selles, et kui kompileerin esimest teeki (MdCore), saan veateate: arhitektuuri x86_64 jaoks ei leitud sümbolit (sümboleid).
Alguses lisasin qmake argumendile -stdlib=libstdc++, kuid Qt genereeris mulle 0-baidised failid, nii et see ei olnud lahendus.
Olen proovinud erinevaid ODA teegi versioone: 32-bitine, 64-bitine OSX 10.7 ja 10.11 jaoks. (Minu Macil on OSX 10.11)
Tegin oma teekides käsu 'file' ja siin on väljund:

:
.a: praegune ar arhiivi juhuslik raamatukogu

.dylib:
Mach-0 universaalne binaarfail kahe arhitektuuriga
(arhitektuuri x68_64 jaoks): Mach-0 64-bitine dünaamiliselt lingitud jagatud teek x86_64
(arhitektuuri i386 jaoks): Mach-0 dünaamiliselt lingitud jagatud teek i386

Olen proovinud kompileerida 32 ja 64bit peal, aga see ei muuda midagi. Olen selle probleemiga kaks nädalat ja ma ei tea, mida teha

Tegin Qt foorumisse teema, ehk leiad rohkem infot:
https://forum.qt.io/topic/69171/compile-generate-0-byte-files-on-os-x/11
https://forum.qt.io/topic/69171/compile-generate-0-byte-files-on-os-x/11
Kui kellelgi on aimu või lahendus, siis olen huvitatud

Aitäh! C

cqexbesd

4. juuni 2009


Saksamaa
  • 22. juuli 2016
Ma ei tea qmake-st midagi, aga võib-olla peaksite lihtsalt postitama, millised on teie kompilaatori käsud, mida kompileerida ja äkki keegi näeb, mis viga on.

Seal

Originaalplakat
22. juuli 2016
  • 22. juuli 2016
Tere, cqexbesd, täname vastuse eest, siin on ehitusväljundi algus:

17:34:10: Algus : '/Users/developpement/Qt/5.7/clang_64/bin/qmake' /Users/developpement/Desktop/Mediacad2/MdCore/MdCore.pro -r -spec macx-clang=CONFIG+=debug x86_64 CONFIG+=qml_debug

17:34:10: Protsess „/Users/developpement/Qt/5.7/clang_64/bin/qmake” on normaalselt lõppenud

17:34:10: Algus : '/usr/bin/make'

... C

cqexbesd

4. juuni 2009
Saksamaa
  • 24. juuli 2016
Ma mõtlesin, et qmake on lihtsalt tööriist kompilaatori kutsumiseks. Kas leiate rea, kus qmake kutsub kompilaatorit? Arvatavasti ei kutsu see seda õigesti või asjad toimivad. See on vähemalt kuskilt alustada.

Seal

Originaalplakat
22. juuli 2016
  • 25. juuli 2016
Ma arvan, et see on siin:
Kood: |_+_|
minu kompileerimisväljundis on mul neid ridu mitu korda, kuid muutub ainult viimane rida (faili nimi muutub)

Redigeerimine: siin on samad read, kuid nende vahel on tühikud
Kood: |_+_| Viimati redigeeritud moderaatori poolt: 25. juulil 2016 C

cqexbesd

4. juuni 2009
Saksamaa
  • 25. juuli 2016
Samuti peaks olema linkimisjoon - nt. rida, kus clang++ kutsutakse ilma argumendita -c. Võib olla kasulik, kui saate tegelikult kogu väljundi lingi kleepida.

Seal

Originaalplakat
22. juuli 2016
  • 26. juuli 2016
Arvan, et kompilaatori argumente pole võimalik muuta. Ma võin seda teha viipega.
Siin on täielik väljund (see on väga pikk! 100 000 rida): http://textup.fr/171939hC


Redigeerimine: koostasin käsuga, nii et mul oleks väljundis rohkem ridu ja viimased read on huvitavad:


Arhitektuuri x86_64 määratlemata sümbolid:

Kood: |_+_| Viimati redigeeritud moderaatori poolt: 26. juulil 2016 C

cqexbesd

4. juuni 2009
Saksamaa
  • 26. juuli 2016
Ma arvan, et 100 000 väljund kõigest peale kõige keerulisema süsteemi ehitamiseks on ilmselt märk sellest, et asjad on kuskil valesti läinud – aga see on üldisem kommentaar tööstuse olukorra kohta.

Tagasi oma konkreetse probleemi juurde. Ma ei näe 'täisväljundis' teie postitatud linkimisvigu, kuid see näib olevat tavaline linkija viga. Nagu ka teistel platvormidel, saate kasutada nm-i (või Google'it), et leida, kus need sümbolid on määratletud ja see näib olevat minu jaoks /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (aga mul on väga vana Mac, nii et see ei pruugi teie jaoks tõsi olla).

Te ei linkida otse selle teegi vastu. Proovige lisada kood: |_+_| linkeri lippudele.

Seal

Originaalplakat
22. juuli 2016
  • 27. juuli 2016
Jah sul on õigus !! Suur aitäh, et saan nüüd koostada! Ma seisin selle probleemiga silmitsi 3 nädalat! Tänud ! KOOS

zibby

5. veebruar 2019
  • 5. veebruar 2019
cqexbesd ütles: Ma arvan, et 100K väljund kõigest peale kõige keerulisema süsteemi ehitamise on ilmselt märk sellest, et asjad on kuskil valesti läinud – aga see on üldisem kommentaar tööstuse olukorra kohta.

Tagasi oma konkreetse probleemi juurde. Ma ei näe 'täisväljundis' teie postitatud linkimisvigu, kuid see näib olevat tavaline linkija viga. Nagu ka teistel platvormidel, saate kasutada nm-i (või Google'it), et leida, kus need sümbolid on määratletud ja see näib olevat minu jaoks /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (aga mul on väga vana Mac, nii et see ei pruugi teie jaoks tõsi olla).

Te ei linkida otse selle teegi vastu. Proovige lisada kood: |_+_| linkeri lippudele.
KOOS

zibby

5. veebruar 2019
  • 5. veebruar 2019
tere, mul on väga sarnane probleem...aga ma kasutan kompileerimiseks terminali...kas keegi saaks aidata, kuidas terminali puhul sama lahendust teha?

mul on fail ./configure valmis ja see töötab sujuvalt, kuid saan ffi... seotud 'sümboleid ei leitud...' ja midagi linkeriga, kui käivitan make

okeiam

17. detsember 2016
  • 8. veebruar 2019
zibbi ütles: tere, poisid... mul tekkis väga sarnane probleem...aga ma kasutan kompileerimiseks terminali...kas keegi saaks aidata, kuidas terminali puhul sama lahendust teha?

mul on fail ./configure valmis ja see töötab sujuvalt, kuid saan ffi... seotud 'sümboleid ei leitud...' ja midagi linkeriga, kui käivitan make
env CPPFLAGS='-I/home/foo/sw/include' LDFLAGS='-L/home/foo/sw/lib/' ./configure