繁体   English   中英

将 Java/C++ 代码库转换为基于 IDE 的项目

[英]Convert Java/C++ code base to an IDE based project

我想知道是否可以将现有代码库(混合 - Java 和 C++)转换为基于 IDE(Eclipse 或 Android Studio)的项目? 我拥有的混合代码库非常庞大和成熟,截至今天,我没有使用任何 IDE,并计划将该代码库导入 Eclipse 或 Android Studio 等 IDE。

请注意,混合代码库使用 Android.mk 和 Application.mk 文件。 我在想:

  1. 创建基于 Eclipse 的项目并按原样保留 mk 文件
  2. 或者由于 Android Studio 使用 gradle 构建文件而不是 mk 文件。 可能我可以先创建一个基于 Eclipse 的项目,然后将其转换为基于 Android Studio 的项目。

是的,你可以做到。 我使用 Eclipse,所以让我们来谈谈。

  1. 获得 Eclipse Mars。

  2. 获取您的 C/C++ 编译器(我使用 MinGW 和 msys,所以我必须将它们添加到路径中)。

  3. 在 Eclipse 中,转到 Help ==> Install new software ==> 从下拉列表中选择 Mars。
  4. 将 CDT 组件添加到 Eclipse。
  5. 在 Eclipse 中创建一个新的 C 项目。
  6. 保存您的理智并转到构建器和项目构面并选择构面形式。
  7. 您可以创建一个空的 C 项目或选择 Makefile Project with Existing Code。 我通常选择 C ​​项目 Makefile Project Empty Project 和我想要使用的工具链 (MinGW GCC)。
  8. 您可能需要关闭 Project ==> Build 自动并将 C/C++ build 命令更改为 gmake (或其他)。 在行为中,我取消了资源保存上的构建并单击了构建和清理,并将目标名称分别更改为 all 和 clean。
  9. 现在你需要让构建在 eclipse 中工作。 右键单击项目并选择构建配置,然后使用 Build all 和 Clean all。
  10. 现在您可以使用自己的 make 文件了。 就我个人而言,我不喜欢将所有内容都放在一个目录中,因此我更喜欢在根目录和子目录 /src /bin 和 /obj 中的 makefile。 这是一个在 Windows 或 Linux 中工作的简单 makefile,它在 33 行中实现了 'clean' 和 'all 以及上述结构:
 CC = gcc # compiling flags here CFLAGS = -std=c99 -Wall -I. # linking flags here LFLAGS = -Wall -I. -lm LINKER = gcc -o SRCDIR = src OBJDIR = obj BINDIR = bin SOURCES := $(wildcard $(SRCDIR)/*.c) INCLUDES := $(wildcard $(SRCDIR)/*.h) OBJECTS := $(SOURCES:$(SRCDIR)/%.c=$(OBJDIR)/%.o) RM=rm -f TARGET = main ifdef ComSpec EXT=.exe else EXT= endif all: $(BINDIR)/$(TARGET) $(BINDIR)/$(TARGET): $(OBJECTS) @$(LINKER) $@ $(LFLAGS) $(OBJECTS) @echo "Linking complete!" $(OBJECTS): $(OBJDIR)/%.o : $(SRCDIR)/%.c @$(CC) $(CFLAGS) -c $< -o $@ @echo "Compiled "$<" successfully!" clean: @-$(RM) $(OBJECTS) $(BINDIR)/$(TARGET)$(EXT) @echo "Cleanup complete!"

那应该让你滚动。 调试应该可以正常工作,您可以在获得此基本功能级别后添加特定于 Android 的内容。 如果你的 .mk 文件有奇怪的名字,你可能需要使用命令gmake -f makefilename让它开心。

SpringSource STS 团队的 Gradle Eclipse 插件为 Eclipse 提供了 Gradle 支持。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM