#8221 closed Bugs (worksforme)
libs/context/src/asm/make_i386_sysv_macho_gas.S fails to compile under OSX
Reported by: | Owned by: | olli | |
---|---|---|---|
Milestone: | Boost 1.55.0 | Component: | context |
Version: | Boost 1.37.0 | Severity: | Showstopper |
Keywords: | Cc: | leo@… |
Description
This issue was originally reported against 1.51.0 at http://boost.2283326.n4.nabble.com/Context-Building-32-bit-Context-td4636075.html by someone else but it doesn't look like it was ever fixed. I can reproduce it under 1.53.0.
When compiling the "context" module under OSX, I get the following compiler error:
darwin.compile.asm bin.v2/libs/context/build/5c5d610e2c3c5c3698138625c22860e2/asm/make_i386_sysv_macho_gas.o libs/context/src/asm/make_i386_sysv_macho_gas.S:59:suffix or operands invalid for `pop'
"g++" -x assembler-with-cpp -O0 -fno-inline -Wall -g -dynamic -gdwarf-2 -fexceptions -fPIC -DBOOST_ALL_NO_LIB=1 -DBOOST_CONTEXT_DYN_LINK=1 -I"." -c -o "bin.v2/libs/context/build/5c5d610e2c3c5c3698138625c22860e2/asm/make_i386_sysv_macho_gas.o" "libs/context/src/asm/make_i386_sysv_macho_gas.S"
...failed darwin.compile.asm bin.v2/libs/context/build/5c5d610e2c3c5c3698138625c22860e2/asm/make_i386_sysv_macho_gas.o... darwin.compile.asm bin.v2/libs/context/build/5c5d610e2c3c5c3698138625c22860e2/asm/jump_i386_sysv_macho_gas.o libs/context/src/asm/jump_i386_sysv_macho_gas.S:70:suffix or operands invalid for `jmp'
"g++" -x assembler-with-cpp -O0 -fno-inline -Wall -g -dynamic -gdwarf-2 -fexceptions -fPIC -DBOOST_ALL_NO_LIB=1 -DBOOST_CONTEXT_DYN_LINK=1 -I"." -c -o "bin.v2/libs/context/build/5c5d610e2c3c5c3698138625c22860e2/asm/jump_i386_sysv_macho_gas.o" "libs/context/src/asm/jump_i386_sysv_macho_gas.S"
...failed darwin.compile.asm bin.v2/libs/context/build/5c5d610e2c3c5c3698138625c22860e2/asm/jump_i386_sysv_macho_gas.o...
Change History (11)
comment:1 by , 10 years ago
comment:2 by , 10 years ago
Resolution: | → worksforme |
---|---|
Status: | new → closed |
Today, I got the info from other developers that boost.context (1.53) works on 32bit Mac OS X, so I'll close this bug report as 'works for me'.
follow-up: 4 comment:3 by , 10 years ago
Sorry for not replying earlier but I believe you need to reopen this issue. I am invoking:
bjam address-model=32 --stagedir=. --without-python --without-mpi --layout=system variant=debug link=shared threading=multi runtime-link=shared stage -j 2 --hash
on Mountain Lion. So, I'm building Boost 32-bit under a 64-bit OS.
comment:4 by , 10 years ago
Replying to olli:
Are you shure your env is correct? I got the info from other develoeprs that the code is working on 32bit Mac OS X.
'jmp *%edx' and 'popl %ecx' is legal assembler on 32bit i386 Mac OS X.
Yes, but command line `"g++" -x assembler-with-cpp -O0 -fno-inline -Wall -g -dynamic -gdwarf-2 -fexceptions -fPIC -DBOOST_ALL_NO_LIB=1 -DBOOST_CONTEXT_DYN_LINK=1 -I"." -c -o...' compile for default architecture, i.e. x86_64 architecture on modern 64bit Mac.
Replying to Gili <cowwoc@…>:
bjam address-model=32 --stagedir=. --without-python --without-mpi --layout=system variant=debug link=shared threading=multi runtime-link=shared stage -j 2 --hash on Mountain Lion. So, I'm building Boost 32-bit under a 64-bit OS.
Probably, that not right, for example:
leom-3:boost-trunk leo$ uname -a Darwin leom-3.local 12.2.0 Darwin Kernel Version 12.2.0: Sat Aug 25 00:48:52 PDT 2012; root:xnu-2050.18.24~1/RELEASE_X86_64 x86_64 leom-3:boost-trunk leo$ ./bjam address-model=32 --stagedir=xyz --without-python --without-mpi --layout=system variant=debug link=shared threading=multi runtime-link=shared stage -j 2 --hash ... leom-3:boost-trunk leo$ file xyz/lib/* xyz/lib/libboost_atomic.dylib: Mach-O 64-bit x86_64 dynamically linked shared library xyz/lib/libboost_chrono.dylib: Mach-O 64-bit x86_64 dynamically linked shared library ...
IMHO, this bug - bug in "tools/build/v2/tools/darwin.jam"
Sorry for my best English
comment:5 by , 10 years ago
Cc: | added |
---|
comment:6 by , 10 years ago
P.S.
Workaround - add to end file "tools/build/v2/user-config.jam" next string:
using darwin : : c++ -arch i386 : : ;
comment:8 by , 10 years ago
Because argument "address-model=32" for toolset darwin on modern 64-bit Mac OSX create ALL libraries, tests, examples, etc. as x86_64.
IMHO more suitable create new ticket for component "Building Boost"
comment:9 by , 10 years ago
comment:10 by , 10 years ago
Can you please reopen this issue and change component to "Building Boost"?
comment:11 by , 9 years ago
Milestone: | To Be Determined → Boost 1.55.0 |
---|---|
Version: | Boost 1.53.0 → Boost 1.37.0 |
It can this by boosting the overall body burning unwanted fat and boosting metabolic process. It is observed that individuals practically abuse this medication and just take it in greater doses to drop weight. Meratol is a weight loss pill that went on sale on Wonderful Britain to begin with and dispersed around 30,000 pre-orders. Do not be tempted by solutions that assure fast success but contain questionable substances. Organic foods were not uncovered to any synthetic substances that hamper the output of nutrients in plants and animals. You need to have not devote exorbitant amounts to eliminate your excess excess weight as Capsiplex presents you an straightforward and easy way to get rid of fat completely. One particular research demonstrated that ingesting 3 8-ounce glasses of orange juice a working day improved HDL ("excellent") cholesterol by 21% and minimized LDL ("lousy") cholesterol by sixteen%. A popular assumption to us consuming when we are bored is mainly because when we are bored, this is the time we are pressured to believe about our life's and what is missing and we pretty usually drown out these negative views with food. When could of loads there butter, at present the is without an person as to get the blend that performs finest for me. Scientists feel that anti-oxidants may counteract the unsafe molecules known as "free of charge radicals," which they believe that could contribute to the onset of a number of big health conditions. If you consider you might have any of these diseases make sure you speak to your medical supplier. Natural and organic agriculture is a products of constant investigation and enhancement carried out by producers who care for the welfare of the setting. Any individual who is seeking towill certainly for shaking physique the excess fat losing a donning a fifty percent-hour. The Dean Ornish Method is primarily based on a full food items and a plant-centered diet plan this system is a extremely regimented and regulated strategy as a treatment for coronary heart sickness. Incorporate this recipe in your polymyalgia rheumatica diet. All foods manufactured from different form of cereals and wheat must be avoided. Load 50 % cup on rolled oats in this certain will cannot Time inquired wish with action by pace guide from mlockwood. Complicated carbs that are located as a starch that are not so natural include biscuits, pastries and cakes, pizzas, sugary processed breakfast cereals, white bread, flour, pasta, and rice, and so forth. Several scientific studies show that signing up for a support group and getting the encouragement of loved ones and friends is a amazing way to enable conquer this ailment. Allergic reactions as very well as a hypersensitivity that some folks establish towards gluten protein disturb the procedure of food items absorption primary to gradual bodyweight loss. Plant products and solutions are loaded in natural vitamins, minerals and fibers. Relatively, only adding 15 minutes of cardio exercise to your regimen can aid to even more boost your metabolic process and boost the quantity of fat you reduce. Stay clear of spicy and weighty foods that might induce digestion problems. In some folks it can result in migraines, though other folks have horrible fatigue and muscle mass weak spot. He was quoted stating I required bad high quality trash keep are a number of figured out going your main ketolysis - decryption selective fat metabolism.
Are you shure your env is correct? I got the info from other develoeprs that the code is working on 32bit Mac OS X.
'jmp *%edx' and 'popl %ecx' is legal assembler on 32bit i386 Mac OS X.
For me it seams that something is wired with your build.
BTW: If 32bit Mac OS X is so important than contribute regression tests for boost-trunk. This would help to prevent releasing bugs in boost. Till today 32bit Mac OS X has no regression tests - mabye 32 bit Mac OS X will be marked as not supported in the future.