ఇతర

ఆర్కిటెక్చర్ x86_64 కోసం Mac ఎర్రర్ గుర్తు(లు) కనుగొనబడలేదు

అక్కడ

ఒరిజినల్ పోస్టర్
జూలై 22, 2016
  • జూలై 22, 2016
అందరికీ హాయ్,

నేను Macలో Windows అప్లికేషన్‌ను కంపైల్ చేసే ప్రాజెక్ట్‌లో పని చేస్తున్నాను. అప్లికేషన్ C++లో Qtతో వ్రాయబడింది. ఇది లైబ్రరీలు మరియు ప్రధాన ప్రాజెక్ట్‌తో కంపోజ్ చేయబడింది:
http://hpics.li/d8bb2ec
ప్రాజెక్ట్ .dwg మరియు .dgn ఫైల్‌లను నిర్వహించడానికి ODA అనే ​​బాహ్య లైబ్రరీని ఉపయోగిస్తుంది.
సమస్య ఏమిటంటే, నేను మొదటి లైబ్రరీని (MdCore) కంపైల్ చేసినప్పుడు, నాకు ఎర్రర్ వస్తుంది: ఆర్కిటెక్చర్ x86_64 కోసం గుర్తు(లు) కనుగొనబడలేదు.
మొదట నేను qmake ఆర్గ్యుమెంట్‌కి -stdlib=libstdc++ జోడించాను కానీ Qt నాకు 0 బైట్ ఫైల్‌లను రూపొందించింది, కనుక ఇది పరిష్కారం కాదు.
నేను ODA లైబరీ యొక్క విభిన్న సంస్కరణను ప్రయత్నించాను: OSX 10.7 మరియు 10.11 కోసం 32bit, 64bit. (నా Mac OSX 10.11లో ఉంది)
నేను నా లైబ్రరీలలో 'ఫైల్' కమాండ్‌ని చేసాను మరియు ఇక్కడ అవుట్‌పుట్:

:
.a: ప్రస్తుత ఆర్కైవ్ యాదృచ్ఛిక లైబ్రరీ

.dylib:
2 ఆర్కిటెక్చర్‌లతో మ్యాక్-0 యూనివర్సల్ బైనరీ
(ఆర్కిటెక్చర్ x68_64 కోసం): Mach-0 64-bit డైనమిక్‌గా లింక్ చేయబడిన షేర్డ్ లైబ్రరీ x86_64
(ఆర్కిటెక్చర్ i386 కోసం): Mach-0 డైనమిక్‌గా లింక్ చేయబడిన షేర్డ్ లైబ్రరీ i386

నేను 32 మరియు 64బిట్‌లలో కంపైల్ చేయడానికి ప్రయత్నించాను కానీ అది దేనినీ మార్చలేదు. నేను రెండు వారాలుగా ఈ సమస్యతో ఉన్నాను, నేను ఏమి చేయగలనో నాకు తెలియదు

నేను Qt ఫోరమ్‌లో ఒక అంశాన్ని రూపొందించాను, మీరు మరింత సమాచారాన్ని కనుగొనవచ్చు:
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
ఎవరైనా క్లూ లేదా పరిష్కారం కలిగి ఉంటే నేను ఆసక్తి కలిగి ఉంటాను

ధన్యవాదాలు ! సి

cqexbesd

జూన్ 4, 2009


జర్మనీ
  • జూలై 22, 2016
qmake గురించి నాకు ఏమీ తెలియదు కానీ కంపైల్ చేయడానికి మీ కంపైలర్ ఆదేశాలను మీరు పోస్ట్ చేయాలి మరియు ఎవరైనా తప్పు ఏమిటో చూడగలరు.

అక్కడ

ఒరిజినల్ పోస్టర్
జూలై 22, 2016
  • జూలై 22, 2016
హాయ్ cqexbesd, మీ సమాధానానికి ధన్యవాదాలు, బిల్డ్ అవుట్‌పుట్ ప్రారంభం ఇక్కడ ఉంది:

ప్రారంభం x86_64 CONFIG+=qml_debug

17:34:10: '/Users/developpement/Qt/5.7/clang_64/bin/qmake' ప్రక్రియ సాధారణంగా పూర్తయింది.

17:34:10: ప్రారంభం : '/usr/bin/make'

... సి

cqexbesd

జూన్ 4, 2009
జర్మనీ
  • జూలై 24, 2016
qmake అనేది కంపైలర్‌కి కాల్ చేయడానికి ఒక సాధనం అని నేను అర్థం చేసుకున్నాను. qmake కంపైలర్‌కి కాల్ చేసే లైన్‌ను మీరు కనుగొనగలరా?బహుశా అది సరిగ్గా కాల్ చేయడం లేదు లేదా పని చేస్తున్నాయి. ఇది ప్రారంభించడానికి కనీసం ఎక్కడో ఉంది.

అక్కడ

ఒరిజినల్ పోస్టర్
జూలై 22, 2016
  • జూలై 25, 2016
ఇది ఇక్కడ ఉందని నేను భావిస్తున్నాను:
కోడ్: |_+_|
నా కంపైలేషన్ అవుట్‌పుట్‌లో నేను ఆ పంక్తులను చాలాసార్లు కలిగి ఉన్నాను, కానీ చివరి పంక్తి మాత్రమే మారుతుంది (ఫైల్ పేరు మారుతుంది)

సవరించు : ఇక్కడ ఒకే పంక్తులు ఉన్నాయి కానీ వాటి మధ్య ఖాళీలు ఉన్నాయి
కోడ్: |_+_| మోడరేటర్ చివరిగా సవరించారు: జూలై 25, 2016 సి

cqexbesd

జూన్ 4, 2009
జర్మనీ
  • జూలై 25, 2016
లింకింగ్ లైన్ కూడా ఉండాలి - ఉదా. -c ఆర్గ్యుమెంట్ లేకుండా క్లాంగ్++ అని పిలువబడే పంక్తి. వాస్తవానికి మీరు మొత్తం అవుట్‌పుట్‌కి లింక్‌ను అతికించగలిగితే అది ఉపయోగకరంగా ఉండవచ్చు.

అక్కడ

ఒరిజినల్ పోస్టర్
జూలై 22, 2016
  • జూలై 26, 2016
కంపైలర్ యొక్క ఆర్గ్యుమెంట్‌లను మార్చడం సాధ్యం కాదని నేను అనుకుంటున్నాను. నేను ప్రాంప్ట్‌తో దీన్ని చేయవచ్చు.
పూర్తి అవుట్‌పుట్ ఇక్కడ ఉంది (ఇది చాలా పొడవుగా ఉంది! 100.000 లైన్లు) : http://textup.fr/171939hC


సవరించు : నేను ప్రాంప్ట్‌తో కంపైల్ చేసాను కాబట్టి నాకు అవుట్‌పుట్‌లో మరిన్ని లైన్లు ఉన్నాయి మరియు చివరి పంక్తులు ఆసక్తికరంగా ఉన్నాయి:


ఆర్కిటెక్చర్ x86_64 కోసం నిర్వచించని చిహ్నాలు:

కోడ్: |_+_| మోడరేటర్ చివరిగా సవరించారు: జూలై 26, 2016 సి

cqexbesd

జూన్ 4, 2009
జర్మనీ
  • జూలై 26, 2016
ఏదైనా ఒక బిల్డ్‌కి 100K అవుట్‌పుట్ అని నేను అనుకుంటున్నాను కానీ చాలా క్లిష్టమైన సిస్టమ్ బహుశా ఎక్కడో తప్పు జరిగిందనడానికి సంకేతం - కానీ అది పరిశ్రమ స్థితి గురించి మరింత సాధారణ వ్యాఖ్య.

మీ నిర్దిష్ట సమస్యకు తిరిగి వెళ్ళు. 'పూర్తి అవుట్‌పుట్'లో మీరు పోస్ట్ చేసిన లింకింగ్ ఎర్రర్‌లు నాకు కనిపించడం లేదు, అయితే ఇది సాధారణ లింకర్ ఎర్రర్‌లుగా కనిపిస్తోంది. ఇతర ప్లాట్‌ఫారమ్‌లలో వలె, మీరు ఆ చిహ్నాలు ఎక్కడ నిర్వచించబడ్డాయో కనుగొనడానికి nm (లేదా Google)ని ఉపయోగించవచ్చు మరియు అది నాకు /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundationలో ఉన్నట్లు కనిపిస్తుంది (కానీ నాకు చాలా ఉంది పాత Mac కాబట్టి ఇది మీకు నిజం కాకపోవచ్చు).

మీరు నేరుగా ఆ లైబ్రరీకి వ్యతిరేకంగా లింక్ చేయలేరు. కోడ్‌ని జోడించి ప్రయత్నించండి: |_+_| మీ లింకర్ ఫ్లాగ్‌లకు.

అక్కడ

ఒరిజినల్ పోస్టర్
జూలై 22, 2016
  • జూలై 27, 2016
అవును మీరు సరిగ్గా చెప్పారు !! చాలా ధన్యవాదాలు నేను ఇప్పుడు కంపైల్ చేయగలను! నేను 3 వారాలుగా ఈ సమస్యను ఎదుర్కొంటున్నాను! చాలా ధన్యవాదాలు ! తో

జిబ్బీ

ఫిబ్రవరి 5, 2019
  • ఫిబ్రవరి 5, 2019
cqexbesd ఇలా అన్నారు: ఏదైనా ఒక బిల్డ్‌కి 100K అవుట్‌పుట్ అని నేను అనుకుంటున్నాను కానీ చాలా క్లిష్టమైన సిస్టమ్ బహుశా ఎక్కడో తప్పు జరిగిందనడానికి సంకేతం - కానీ అది పరిశ్రమ స్థితి గురించి మరింత సాధారణ వ్యాఖ్య.

మీ నిర్దిష్ట సమస్యకు తిరిగి వెళ్ళు. 'పూర్తి అవుట్‌పుట్'లో మీరు పోస్ట్ చేసిన లింకింగ్ ఎర్రర్‌లు నాకు కనిపించడం లేదు, అయితే ఇది సాధారణ లింకర్ ఎర్రర్‌లుగా కనిపిస్తోంది. ఇతర ప్లాట్‌ఫారమ్‌లలో వలె, మీరు ఆ చిహ్నాలు ఎక్కడ నిర్వచించబడ్డాయో కనుగొనడానికి nm (లేదా Google)ని ఉపయోగించవచ్చు మరియు అది నాకు /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundationలో ఉన్నట్లు కనిపిస్తుంది (కానీ నాకు చాలా ఉంది పాత Mac కాబట్టి ఇది మీకు నిజం కాకపోవచ్చు).

మీరు నేరుగా ఆ లైబ్రరీకి వ్యతిరేకంగా లింక్ చేయలేరు. కోడ్‌ని జోడించి ప్రయత్నించండి: |_+_| మీ లింకర్ ఫ్లాగ్‌లకు.
తో

జిబ్బీ

ఫిబ్రవరి 5, 2019
  • ఫిబ్రవరి 5, 2019
హాయ్ అబ్బాయిలు ... నేను చాలా సారూప్య సమస్యను ఎదుర్కొన్నాను... కానీ నేను కంపైల్ చేయడానికి టెర్మినల్‌ని ఉపయోగిస్తున్నాను... టెర్మినల్ విషయంలో నేను అదే పరిష్కారాన్ని ఎలా చేయగలను అనే దానిపై దయచేసి ఎవరైనా సహాయం చేయగలరా?

నా దగ్గర ./కాన్ఫిగర్ ఫైల్ సిద్ధంగా ఉంది మరియు అది సజావుగా నడుస్తుంది కానీ నాకు ffi వచ్చింది... సంబంధిత 'సింబల్స్ దొరకలేదు...' మరియు నేను మేక్‌ని అమలు చేసినప్పుడు లింకర్‌తో చేయాల్సింది

okieiam

డిసెంబర్ 17, 2016
  • ఫిబ్రవరి 8, 2019
zibbi అన్నారు: హాయ్ అబ్బాయిలు ... నేను చాలా సారూప్య సమస్యను ఎదుర్కొన్నాను...కానీ నేను కంపైల్ చేయడానికి టెర్మినల్‌ని ఉపయోగిస్తున్నాను... టెర్మినల్ విషయంలో నేను అదే పరిష్కారాన్ని ఎలా చేయగలను అనేదానికి దయచేసి ఎవరైనా సహాయం చేయగలరా?

నా దగ్గర ./కాన్ఫిగర్ ఫైల్ సిద్ధంగా ఉంది మరియు అది సజావుగా నడుస్తుంది కానీ నాకు ffi వచ్చింది... సంబంధిత 'సింబల్స్ దొరకలేదు...' మరియు నేను మేక్‌ని అమలు చేసినప్పుడు లింకర్‌తో చేయాల్సింది
env CPPFLAGS='-I/home/foo/sw/include' LDFLAGS='-L/home/foo/sw/lib/' ./configure