我在Mac OS X 10.6上編譯了FreeImage 3.10.0,來自/lib/FreeImage。從源碼編譯FreeImage。 #include FreeImage.h not found
我可以看到,編譯後,這些文件被複制:
/usr/local/lib/libfreeimage-3.10.0.dylib
/usr/local/lib/libfreeimage.a
/usr/local/include/FreeImage.h
CMake的不能找到FreeImage的,但我沒有做
#include <FreeImage.h> // not found
我假設我需要FreeImage.h增加Mac OS X環境路徑,除了我不知道哪個路徑是正確的,因爲有幾個不同的文件存儲環境路徑變量。
我需要做什麼才能讓FreeImage頭被我的C++應用程序或CMake找到?
這裏是我Makefile.osx
的第一部分是這會有所幫助:
# -*- Makefile -*-
# Mac OSX makefile for FreeImage
# This file can be generated by ./gensrclist.sh
include Makefile.srcs
# General configuration variables:
CC_PPC = gcc-4.0
CC_I386 = gcc-4.0
CPP_PPC = g++-4.0
CPP_I386 = g++-4.0
COMPILERFLAGS = -Os -fexceptions -fvisibility=hidden
COMPILERFLAGS_PPC = -arch ppc
COMPILERFLAGS_I386 = -arch i386
COMPILERPPFLAGS = -Wno-ctor-dtor-privacy
INCLUDE +=
INCLUDE_PPC = -isysroot /Developer/SDKs/MacOSX10.6.sdk
INCLUDE_I386 = -isysroot /Developer/SDKs/MacOSX10.6.sdk
CFLAGS_PPC = $(COMPILERFLAGS) $(COMPILERFLAGS_PPC) $(INCLUDE) $(INCLUDE_PPC)
CFLAGS_I386 = $(COMPILERFLAGS) $(COMPILERFLAGS_I386) $(INCLUDE) $(INCLUDE_I386)
CPPFLAGS_PPC = $(COMPILERPPFLAGS) $(CFLAGS_PPC)
CPPFLAGS_I386 = $(COMPILERPPFLAGS) $(CFLAGS_I386)
LIBRARIES_PPC = -Wl,-syslibroot /Developer/SDKs/MacOSX10.6.sdk
LIBRARIES_I386 = -Wl,-syslibroot /Developer/SDKs/MacOSX10.6.sdk
LIBTOOL = libtool
LIPO = lipo
更新:我添加幾行代碼寫進我的Makefile文件按尼古拉斯的說明,然後重建但這並沒有工作:
CFLAGS = -I/usr/local/include
LDFLAGS = -L/usr/local/lib
是否意味着在-I和路徑之間有一個空格:'-I/usr/local/include' – 2009-12-12 01:31:18
試過這個,它沒有工作 – 2009-12-12 01:53:28