Hi everyone,
I'm hoping someone can help me to compile gnustep-base on PCBSD 9.1.
Notes:
- I'm compiling gnustep-base rather than using ports, in order to use blocks.
- Am using a fresh "jail" made with PCBSD's "warden" and latest ports tree.
- using clang 3.1
- On compiling libobjc2, I get an error which is reproduced below.
A question... I know this isn't a *BSD list, but am wondering, if someone can
advise how to compile with a version of clang installed via ports. PCBSD 9.1
ships with clang 3.1 and I've installed clang 3.2 via ports. How do I access
clang 3.2 to compile code?
I have followed the process below:-
cd /usr/local/src
svn co svn://svn.gna.org/svn/gnustep/modules/ gnustep
export CC=clang
clang -v
cd gnustep/core/make
./configure --enable-debug-by-default --with-layout=gnustep
gmake
gmake install
. /usr/GNUstep/System/Library/Makefiles/GNUstep.sh
# - Build libobjc2
cd ../../dev-libs/libobjc2
mkdir Build
cd Build
cmake .. -DCMAKE C COMPILER=clang -DCMAKE CXX COMPILER=clang++
------------------------
The output I get is.......
[root@bsdports /usr/local/src/gnustep/dev-libs/libobjc2/Build]# cmake
.. -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++
-- The C compiler identification is Clang 3.1.0
-- The CXX compiler identification is Clang 3.1.0
-- Check for working C compiler: /usr/bin/clang
-- Check for working C compiler: /usr/bin/clang -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/clang++
-- Check for working CXX compiler: /usr/bin/clang++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- The ASM compiler identification is Clang
-- Found assembler: /usr/bin/clang
-- Warning: Did not find file Compiler/Clang-ASM
-- Using /usr/lib/libsupc++.so as the C++ runtime library
-- Looking for include file pthread.h
-- Looking for include file pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found.
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- GNUstep install type set to LOCAL
-- Configuring done
-- Generating done
-- Build files have been written to:
/usr/local/src/gnustep/dev-libs/libobjc2/Build
[root@bsdports /usr/local/src/gnustep/dev-libs/libobjc2/Build]# make
Scanning dependencies of target objc
[ 1%] Building C object CMakeFiles/objc.dir/abi_version.c.o
[ 3%] Building C object CMakeFiles/objc.dir/alias_table.c.o
[ 4%] Building C object CMakeFiles/objc.dir/block_to_imp.c.o
[ 6%] Building C object CMakeFiles/objc.dir/caps.c.o
[ 7%] Building C object CMakeFiles/objc.dir/category_loader.c.o
[ 9%] Building C object CMakeFiles/objc.dir/class_table.c.o
[ 10%] Building C object CMakeFiles/objc.dir/dtable.c.o
[ 12%] Building C object CMakeFiles/objc.dir/eh_personality.c.o
[ 13%] Building C object CMakeFiles/objc.dir/encoding2.c.o
[ 15%] Building C object CMakeFiles/objc.dir/gc_none.c.o
[ 16%] Building C object CMakeFiles/objc.dir/hash_table.c.o
[ 18%] Building C object CMakeFiles/objc.dir/hooks.c.o
[ 19%] Building C object CMakeFiles/objc.dir/ivar.c.o
[ 21%] Building C object CMakeFiles/objc.dir/legacy_malloc.c.o
[ 22%] Building C object CMakeFiles/objc.dir/loader.c.o
[ 24%] Building CXX object CMakeFiles/objc.dir/mutation.m.o
[ 25%] Building C object CMakeFiles/objc.dir/protocol.c.o
[ 27%] Building C object CMakeFiles/objc.dir/runtime.c.o
[ 28%] Building C object CMakeFiles/objc.dir/sarray2.c.o
[ 30%] Building C object CMakeFiles/objc.dir/selector_table.c.o
[ 31%] Building C object CMakeFiles/objc.dir/sendmsg2.c.o
[ 33%] Building C object CMakeFiles/objc.dir/statics_loader.c.o
[ 34%] Building C object CMakeFiles/objc.dir/toydispatch.c.o
[ 36%] Building ASM object CMakeFiles/objc.dir/block_trampolines.S.o
[ 37%] Building ASM object CMakeFiles/objc.dir/objc_msgSend.S.o
<instantiation>:88:1: warning: ignoring directive for now
.ifc "%rdi", "%rdi"
^
/usr/local/src/gnustep/dev-libs/libobjc2/objc_msgSend.x86-64.S:147:2:
note: while in macro instantiation
MSGSEND %rdi, %rsi
^
<instantiation>:93:1: error: Encountered a .else that doesn't follow a
.if or an .elseif
.else
^
/usr/local/src/gnustep/dev-libs/libobjc2/objc_msgSend.x86-64.S:147:2:
note: while in macro instantiation
MSGSEND %rdi, %rsi
^
<instantiation>:99:1: error: Encountered a .endif that doesn't follow
a .if or .else
.endif
^
/usr/local/src/gnustep/dev-libs/libobjc2/objc_msgSend.x86-64.S:147:2:
note: while in macro instantiation
MSGSEND %rdi, %rsi
^
<instantiation>:88:1: warning: ignoring directive for now
.ifc "%rsi", "%rdi"
^
/usr/local/src/gnustep/dev-libs/libobjc2/objc_msgSend.x86-64.S:151:2:
note: while in macro instantiation
MSGSEND %rsi, %rdx
^
<instantiation>:93:1: error: Encountered a .else that doesn't follow a
.if or an .elseif
.else
^
/usr/local/src/gnustep/dev-libs/libobjc2/objc_msgSend.x86-64.S:151:2:
note: while in macro instantiation
MSGSEND %rsi, %rdx
^
<instantiation>:99:1: error: Encountered a .endif that doesn't follow
a .if or .else
.endif
^
/usr/local/src/gnustep/dev-libs/libobjc2/objc_msgSend.x86-64.S:151:2:
note: while in macro instantiation
MSGSEND %rsi, %rdx
^
/usr/local/src/gnustep/dev-libs/libobjc2/objc_msgSend.S:13:1: error:
unmatched .ifs or .elses
^
*** [CMakeFiles/objc.dir/objc_msgSend.S.o] Error code 1
Stop in /usr/local/src/gnustep/dev-libs/libobjc2/Build.
*** [CMakeFiles/objc.dir/all] Error code 1
Stop in /usr/local/src/gnustep/dev-libs/libobjc2/Build.
*** [all] Error code 1
Stop in /usr/local/src/gnustep/dev-libs/libobjc2/Build.
[root@bsdports /usr/local/src/gnustep/dev-libs/libobjc2/Build]#
--------
Thanks
Stephen
_______________________________________________
Discuss-gnustep mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/discuss-gnustep