我正在按照我克隆到我的机器的某个人的指示.我想要的很简单:能够在make设置代码环境时使用该命令.但是我正在使用Windows,我在线搜索只找到要下载的make.exe文件,要下载的make-4.1.tar.gz文件(我不知道下一步该做什么),以及有关下载MinGW(GNU;但是安装后我没有发现任何提及"制造").
我不想要GNU编译器或相关的东西; 我只想在Windows中使用"make".请告诉我应该怎样做才能实现这一目标.
提前致谢!
变量返回MINGW32_NT-5.1或CYGWIN_NT-5.1.(是,最后点)
需要比较给定的var包含NT-5.1位于任何地方.
使用cygwin并希望与几乎任何*nix兼容.
运行ndk-build命令时,出现以下错误:
Android NDK: Could not find application project directory !
Android NDK: Please define the NDK_PROJECT_PATH variable to point to it.
Run Code Online (Sandbox Code Playgroud)
我的Android.mk文件的内容:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := FRE
LOCAL_SRC_FILES := FlashRuntimeExtensions.so
include $(PREBUILT_SHARED_LIBRARY)
include $(CLEAR_VARS)
LOCAL_MODULE := NativeQCAR
LOCAL_SRC_FILES := main.c
LOCAL_SHARED_LIBRARIES := FRE
include $(BUILD_SHARED_LIBRARY)
Run Code Online (Sandbox Code Playgroud)
添加以下行没有帮助:
NDK_PROJECT_PATH = C:/Users/Wessel/Dropbox/workspace/eclipse/NativeQ
Run Code Online (Sandbox Code Playgroud) 我正在使用GNU make来编译我的C++代码,我想了解如何使我的编译可以自定义.
我在不同的地方阅读CFLAGS,CCFLAGS并CXXFLAGS用于此目的.那我该怎么用呢?如果我有额外的命令行参数编译器,我应该将它们附加CFLAGS或前置它们吗?有共同的做法吗?
为什么三个不同的变量?我想C编译器应该得到CFLAGS和CCFLAGS,而C++编译器应该得到CFLAGS和CXXFLAGS-我有没有得到它吗?
人类用户是否应该设置这些变量?做任何自动化工具(automake,autoconf,等)设置它们?我应该使用的linux系统没有定义任何这些变量 - 这是典型的吗?
目前我的Makefile看起来像这样,我觉得它有点脏:
ifdef code_coverage
GCOV_FLAG := -fprofile-arcs -ftest-coverage
else
GCOV_FLAG :=
endif
WFLAGS := -Wall
INC_FLAGS := -Istuff -Imore_stuff -Ietc
CCFLAGSINT := -O3 $(WFLAGS) $(INC_FLAGS) $(CCFLAGS)
... (somewhere in the makefile, the command-line for compilation looks like this)
$(CC) $(CCFLAGSINT) -c $< -o $@
... (somewhere in the makefile, the command-line for linking looks …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用ndk-build编译库时打印一些额外的信息.
例如:
LOCAL_PATH := $(call my-dir)
all:;echo $(LOCAL_PATH)
echo: $(LOCAL_PATH)
print:echo "i'm not working"
Run Code Online (Sandbox Code Playgroud)
当我做ndk-build时,只需编译所有Android.mk,但我没有得到控制台回声.我已经阅读了GNU make info(ndk-build只是一个很小的GNU make),有些帖子说echo必须使用$(VAR)才能工作,但它不适用于我的情况.
有些想法?
我是Linux OS的新手.我正在尝试.c使用makefile 编译文件.必须链接数学库.我的makefile看起来像这样:
CC=gcc
CFLAGS=-Wall -lm
all:client
.PHONY: clean
clean:
rm *~ *.o client
Run Code Online (Sandbox Code Playgroud)
当我运行时make,我收到以下错误:
"undefined reference to rint"
Run Code Online (Sandbox Code Playgroud)
所以它无法链接数学库.
但是当我使用明确编译时
gcc client.c -lm -o client
Run Code Online (Sandbox Code Playgroud)
它成功编译.
那么我应该如何更改我的makefile以使其正常工作.我已经尝试过添加LDFLAGS=-lm.但我得到了同样的错误.
我还应该补充一点,当我跑步时make,它会扩展到
gcc -Wall -lm client.c -o client
Run Code Online (Sandbox Code Playgroud)
(请注意,当我最后gcc明确地运行-lm时,它的工作原理).
我有一个macbook我正在尝试做一些开发.我有一个我想要构建的程序,当我使用make它来构建它时,我得到了一个"找不到命令"的错误.我做了一些google和SO搜索,看起来这不是一个常见的问题.为什么我没有安装,我怎么得到它?我更加困惑,因为我知道我最近使用它(在过去一个月左右),当我在这台笔记本电脑上.
为什么有必要虽然在makefile中指定了所有内容?
我听说过很多关于makefile的内容以及它们如何简化编译过程.我正在使用VS2008.有人可以建议一些在线参考或书籍,我可以找到更多关于如何处理它们?
经过多年没有使用make,我发现自己需要它,现在是gnu版本.我很确定我应该能够做我想做的事情,但是没有弄清楚如何,或者找到谷歌的答案等.
我正在尝试创建一个测试目标,它将多次执行我的程序,将结果保存在日志文件中.一些测试应该导致我的程序中止.不幸的是,我的makefile在第一次测试时中止,导致错误.我有类似的东西:
# Makefile
#
test:
myProg -h > test.log # Display help
myProg good_input >> test.log # should run fine
myProg bad_input1 >> test.log # Error 1
myProg bad_input2 >> test.log # Error 2
Run Code Online (Sandbox Code Playgroud)
使用上面的命令,在bad_input1运行后退出,永远不会运行bad_input2.