Skip to content
This repository has been archived by the owner on Apr 24, 2020. It is now read-only.

make on OS X Snow Leopard 10.6.4 #1

Closed
nucflash opened this issue Sep 17, 2010 · 1 comment
Closed

make on OS X Snow Leopard 10.6.4 #1

nucflash opened this issue Sep 17, 2010 · 1 comment

Comments

@nucflash
Copy link

When I run make on OS X Snow Leopard 10.6.4 I get the following error:

/usr/bin/c++   -Dpfp_EXPORTS -DNDEBUG -fPIC -Iwavii-pfp-40d9e5a/include -I/usr/include/python2.6   -Wall -O3 -march=native -mtune=native `getconf LFS_CFLAGS` -o CMakeFiles/pfp.dir/src/pfp/config.o -c wavii-pfp-40d9e5a/src/pfp/config.cpp
getconf: no such configuration parameter `LFS_CFLAGS'
wavii-pfp-40d9e5a/src/pfp/config.cpp:1: error: bad value (native) for -march= switch
make[2]: *** [CMakeFiles/pfp.dir/src/pfp/config.o] Error 1
make[1]: *** [CMakeFiles/pfp.dir/all] Error 2
make: *** [all] Error 2

I use the universal binary for cmake version 2.8.2 for Darwin to generate the Makefiles.

@nucflash
Copy link
Author

I solved the error. There are a few changes needed for pfp to compile on OSX.

  • Download and compile [Boost][http://www.boost.org/users/download/]
  • Download and compile [ICU4C][http://icu-project.org/download/4.4.html#ICU4C]

Replace CMakeLists.txt with the following:

PROJECT(pfp)

CMAKE_MINIMUM_REQUIRED(VERSION 2.4)

SET(CMAKE_VERBOSE_MAKEFILE ON)

# binaries get installed here
SET(CMAKE_INSTALL_PREFIX "/usr/")

#add definitions, compiler switches, etc.
ADD_DEFINITIONS(-Wall -O3 -DNDEBUG -march=core2 -mtune=core2)

FIND_PACKAGE(Boost 1.44.0 REQUIRED COMPONENTS python filesystem thread regex system unit_test_framework)
#LINK_DIRECTORIES(${Boost_LIBRARY_DIRS})
INCLUDE_DIRECTORIES(include /usr/include/python2.6 ${Boost_INCLUDE_DIRS})

message(STATUS "Boost_LIBRARIES=${Boost_LIBRARIES}")
ADD_EXECUTABLE(test
               src/test/lexicon.cpp
               src/test/pcfg_parser.cpp
               src/test/tokenizer.cpp
               src/test/main.cpp
               )

ADD_EXECUTABLE(pfpc
               src/pfpc/main.cpp
               )

ADD_LIBRARY(pfp SHARED
            src/pfp/config
            src/pfp/tokenizer.yy
            )

ADD_EXECUTABLE(pfpd
               src/pfpd/main
               )

ADD_LIBRARY(pfp SHARED
            src/pfp/config
            src/pfp/tokenizer.yy
            )

ADD_EXECUTABLE(pfpd
               src/pfpd/main
               src/pfpd/pfpd_handler
               src/moost/http/mime_types
               src/moost/http/reply
               src/moost/http/request_parser
               )

ADD_LIBRARY(pypfp SHARED
            src/pypfp/pypfp
           )

TARGET_LINK_LIBRARIES(pfp ${Boost_LIBRARIES})
TARGET_LINK_LIBRARIES(pypfp pfp ${Boost_LIBRARIES} python2.6 icuio icui18n icuuc    icudata)
TARGET_LINK_LIBRARIES(pfpd pfp ${Boost_LIBRARIES}  icuio icui18n icuuc icudata)
TARGET_LINK_LIBRARIES(pfpc pfp ${Boost_LIBRARIES}  icuio icui18n icuuc icudata)
TARGET_LINK_LIBRARIES(test pfp ${Boost_LIBRARIES}  icuio icui18n icuuc icudata)

INSTALL(TARGETS pfpd DESTINATION bin)
INSTALL(TARGETS pfpc DESTINATION bin)

INSTALL(TARGETS pfp LIBRARY DESTINATION lib)
INSTALL(DIRECTORY share/pfp DESTINATION share)

# use this to make sure libpypfp.so is instead called pfp.so and installed in /usr/lib/python2.6/dist-packages
SET_TARGET_PROPERTIES(pypfp PROPERTIES OUTPUT_NAME "pfp")
SET_TARGET_PROPERTIES(pypfp PROPERTIES PREFIX "")
INSTALL(TARGETS pypfp LIBRARY DESTINATION lib/python2.6/dist-packages)

This issue was closed.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant