hfsinspect: src/crc32c/crc32c.c:29:13: error: instruction requires: Not 64-bit mode
macports at parvis.nl
macports at parvis.nl
Tue May 5 19:02:02 UTC 2020
> On 2020-05-05, at 18:07, Ken Cunningham <ken.cunningham.webuse at gmail.com> wrote:
> ...
> For that answer, you'd have to look closely at the build lines. Perhaps it's building in 32bit mode when you do it manually. Maybe MacPorts is setting the environment up for you with lots of added bits that aren't happening with a manual build. Or some other reason we can't guess.
i think the problem lies elsewhere.
first compiler and options, but then code differences
============================================================
maybe the compiler difference is significant?
manual make:
------------
echo Compiling src/volumes/crc32/crc32.c
mkdir -p `dirname build/Darwin-x86_64/obj/src/volumes/crc32/crc32.o`
clang -o build/Darwin-x86_64/obj/src/volumes/crc32/crc32.o -c src/volumes/crc32/crc32.c -include-pch build/Darwin-x86_64/obj/src/cdefs.h.pch -g -O2 -Wall -std=c1x -msse4.2 -Isrc -Ivendor -fstack-protector-all -fstrict-enums -ftrapv -Wno-four-char-constants -DNDEBUG
macports make: (using build.cmd make SHELL='sh -x’)
--------------
Compiling src/crc32c/crc32c.c
++ dirname build/Darwin-x86_64/obj/crc32c/crc32c.o
+ mkdir -p build/Darwin-x86_64/obj/crc32c
+ cc -std=c1x -Isrc -include src/hfsinspect-Prefix.pch -Wall -msse4.2 -g -O0 -Wpedantic -Wno-four-char-constants -c src/crc32c/crc32c.c -o build/Darwin-x86_64/obj/crc32c/crc32c.o
src/crc32c/crc32c.c:29:13: error: instruction requires: Not 64-bit mode
macports make with build.args-append CC=clang:
----------------------------------------------
Compiling src/crc32c/crc32c.c
++ dirname build/Darwin-x86_64/obj/crc32c/crc32c.o
+ mkdir -p build/Darwin-x86_64/obj/crc32c
+ clang -std=c1x -Isrc -include src/hfsinspect-Prefix.pch -Wall -msse4.2 -g -O0 -Wpedantic -Wno-four-char-constants -c src/crc32c/crc32c.c -o build/Darwin-x86_64/obj/crc32c/crc32c.o
src/crc32c/crc32c.c:29:13: error: instruction requires: Not 64-bit mode
but how to specify the other settings
man -o build/Darwin-x86_64/obj/src/volumes/crc32/crc32.o
mp -o build/Darwin-x86_64/obj/crc32c/crc32c.o
man -c src/volumes/crc32/crc32.c
mp -c src/crc32c/crc32c.c
man -include-pch build/Darwin-x86_64/obj/src/cdefs.h.pch
mp -include src/hfsinspect-Prefix.pch
man -Ivendor
mp
both -g -Wall -std=c1x -msse4.2 -Isrc -Wno-four-char-constants
man -O2
mp -O0
man -fstack-protector-all -fstrict-enums -ftrapv -DNDEBUG
mp
man
mp -Wpedantic
==================================================
difference in Makefiles:
manual: find . -name 'Makefile*'
./Makefile
./vendor/crc32c/Makefile
macports:
find . -name 'Makefile*'
./Makefile
./Makefile.Darwin
./Makefile.Linux
---
but probably more important:
differences in crc32.c
manual: crc32.c // volumes
macports: crc32.c // hfsinspect
==================================================
obviously i have a problem understandig github.
for the manual make i did git clone --recursive
git log:
commit fc00689c77928b229707851931719fac937bf34c (tag: 0.3.2)
Author: Adam Knight <adam at hopelessgeek.com>
Date: Wed Apr 2 12:23:17 2014 -0500
https://github.com/ahknight/hfsinspect/releases
on Apr 3, 2014 0.3.2 fc00689
tar.gz -> https://github.com/ahknight/hfsinspect/archive/0.3.2.tar.gz
for macports i tried both
github.setup ahknight hfsinspect 0.3.2
github.setup ahknight hfsinspect fc00689c77928b229707851931719fac937bf34c
but the code is different.
maybe because git clone --recursive ?
More information about the macports-dev
mailing list