1. 下载 project-lemon

我这里提供一个下载链接(这都得感谢中国强大的防火墙!),版本是 1.2 的:点击下载= ̄ω ̄=

(点击下载出现一堆乱码的请右键下载链接,再点 “链接另存为” 即可)

Google code 上的官方下载地址(已被墙了,你没事做可以翻个墙也没人拦你):https://code.google.com/archive/p/project-lemon/downloads

他(或她)的安装包是.7z 格式的,所以需要安装 linux 下的.7z 压缩包解压软件(如果你还没装的话),打开终端,执行命令:

sudo apt-get install p7zip-full

紧接着我们解压刚刚下载下来的压缩包。
解压出来的都是不能运行的源代码,我们要编译它,看下面吧~

2. 安装编译所需依赖

qt4 是用来编译你刚刚下载下来的源代码的。当然还有 g++,如果你连 g++都没有怎么编译。。。打开终端运行命令:

sudo apt-get install g++ qt4-dev-tools

3. 编译源代码

在终端中用 cd 命令进入刚刚解压出来得到的文件夹(这个文件夹里包含了一个文件名叫 lemon.pro 的文件),然后执行命令:

qmake lemon.pro
make

然后经过一系列编译瞎搞啊啥的(这都是计算姬在瞎搞,你不用管他(或她))。

瞎搞完了你就可以运行了。

4. 运行 lemon

在刚刚编译的目录中找到一个文件名叫做 lemon 的文件,双击即可运行~
是不是看到了那熟悉的界面呢?= ̄ω ̄=
至于 gcc,g++的路径配置啥的都不用改,选 lemon 默认的就行了。fpc 我本人没装过,所以……我也不知道。

如果你在评测的时候出现了一个问题:说程序无法运行啥的,那就装个 32 位兼容库吧。这是因为你的系统是 64 位造成的。装的方法看下面吧。

5. 安装 32 位兼容库

见我的另一篇博客:传送门= ̄ω ̄=

至此——好好膜拜大神、好好评测吧!

附录 1 :linux 下 lemon 扩栈

不开栈可能会莫名 RE。

编辑目录下的 watcher_unix.c,在 setrlimit(RLIMIT_CPU, &(struct rlimit){timeLimit, timeLimit + 1}); 这行的下一行添加 setrlimit(RLIMIT_STACK, &(struct rlimit){memoryLimit, memoryLimit}); 后重新编译一遍即可。

附录 2 : 在 dash 打开 lemon

每次都打开文件夹双击打开 lemon 是很烦的

于是我们可以运行命令:

sudo gedit /usr/share/applications/lemon.desktop

然后在 Gedit 里放进如下内容:

[Desktop Entry]
Name=lemon
Comment=A Judgement For OIer
Exec="/path/to/lemon/lemon"
Terminal=false
Type=Application
Icon=/path/to/lemon/icon.ico
Categories=Development;

(把 ExecIcon 里的/path/to/lemon 换成你的 lemon 所在目录)

保存。

然后你会发现你可以从 dash 的 “编程” 栏里找到 lemon 啦!

分类: 文章

XZYQvQ

炒鸡辣鸡的制杖蒟蒻一枚QvQ

33 条评论

tuliwei · 2018年12月10日 10:18 下午

64 位 Ubuntu,无法 make 报错如下:
g++ -m64 -Wl,-O1 -o lemon main.o lemon.o contest.o task.o testcase.o settings.o compiler.o filelineedit.o summarytree.o taskeditwidget.o testcaseeditwidget.o generalsettings.o compilersettings.o addtestcaseswizard.o contestant.o judgingdialog.o judgingthread.o optionsdialog.o resultviewer.o assignmentthread.o detaildialog.o newcontestwidget.o opencontestwidget.o newcontestdialog.o opencontestdialog.o welcomedialog.o addtaskdialog.o qtsinglecoreapplication.o qtsingleapplication.o qtlocalpeer.o advancedcompilersettingsdialog.o environmentvariablesdialog.o editvariabledialog.o addcompilerwizard.o selftestutil.o exportutil.o moc_lemon.o moc_contest.o moc_task.o moc_testcase.o moc_settings.o moc_compiler.o moc_filelineedit.o moc_summarytree.o moc_taskeditwidget.o moc_testcaseeditwidget.o moc_generalsettings.o moc_compilersettings.o moc_addtestcaseswizard.o moc_contestant.o moc_judgingdialog.o moc_judgingthread.o moc_optionsdialog.o moc_resultviewer.o moc_assignmentthread.o moc_detaildialog.o moc_newcontestwidget.o moc_opencontestwidget.o moc_newcontestdialog.o moc_opencontestdialog.o moc_welcomedialog.o moc_addtaskdialog.o moc_qtsinglecoreapplication.o moc_qtsingleapplication.o moc_qtlocalpeer.o moc_advancedcompilersettingsdialog.o moc_environmentvariablesdialog.o moc_editvariabledialog.o moc_addcompilerwizard.o moc_selftestutil.o moc_exportutil.o qrc_resource.o -L/usr/lib/x86_64-linux-gnu -lQtGui -lQtNetwork -lQtCore -lpthread
/usr/bin/ld: i386 架构于输入文件 main.o 与 i386:x86-64 输出不兼容

make: *** [lemon] Error 1
好像是不兼容。。
怎么办

    tuliwei · 2018年12月10日 10:36 下午

    好像又好了。。
    我好想弄错了 lemon

tuliwei · 2018年11月2日 8:54 下午

TQL_Orz

    XZYQvQ · 2018年11月2日 8:59 下午

    。。。您有没有发现今晚机房网速贼慢。。。

juruo-oier · 2018年7月31日 9:01 下午

g++ -c -pipe -O2 -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtNetwork -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I. -I. -o main.o main.cpp
make: g++: Command not found
Makefile:546: recipe for target 'main.o' failed
make: *** [main.o] Error 127

再次出问题

    XZYQvQ · 2018年7月31日 9:04 下午

    。。。。。
    老爷,您看看报错好不好。。。
    g++ Command not found
    sudo apt install g++不就行了。。。
    要会自己琢磨啊。。。

    XZYQvQ · 2018年7月31日 9:11 下午

    我已经把安装 g++放到教程里了。。。
    确实有的 linux 发行版并不自带 g++。。。
    绝了 QvQ

      juruo-oier · 2018年8月1日 11:52 上午

      神,这是我在另外一台电脑上装 lemon

      我早就装了 g++,还编译了几个程序

        juruo-oier · 2018年8月2日 4:03 下午

        解决了,可能 g++破损,重装 g++就可以了

juruo-oier · 2018年7月26日 3:02 下午

在输 make 时,出现

Command ‘make’ not found, but can be installed with:

sudo apt install make
sudo apt install make-guile

    XZYQvQ · 2018年7月26日 3:05 下午

    那你就跟着它说的做呀
    输入命令:

    • sudo apt install make
    • sudo apt install make-guile

    不就可以了。。。

      juruo-oier · 2018年7月26日 3:33 下午

      太强了 orz

        juruo-oier · 2018年7月26日 3:43 下午

        但是执行完后没有出现 lemon 文件

          XZYQvQ · 2018年7月26日 3:46 下午

          你在源码所在目录找找啊 QwQ
          这是不可能的啊 QwQ
          要不您重新编译一遍。。。

            juruo-oier · 2018年7月26日 3:54 下午

            不行

              juruo-oier · 2018年7月26日 3:56 下午

              压根没有

              XZYQvQ · 2018年7月26日 4:07 下午

              您一定是搞错了什么。。。
              编译的时候有没有报错?Error 什么的?

                juruo-oier · 2018年7月26日 4:17 下午

                没有
                您是否在机房???

                  XZYQvQ · 2018年7月26日 4:20 下午

                  在啊。。。
                  您要干啥 QAQ
                  害怕.avi

                    juruo-oier · 2018年7月26日 4:30 下午

                    可以来 1 机房帮我看一下

                    juruo-oier · 2018年7月26日 4:31 下午

                    ???

                  XZYQvQ · 2018年7月26日 4:32 下午

                  要不加 QQ 说吧。。。你去 “关于” 里找我 QQ 咯
                  我不敢去泥萌机房啊泥萌太强了会吊打我的 QwQ

                    juruo-oier · 2018年7月28日 3:49 下午

                    我知道了,还要./lemon

                  XZYQvQ · 2018年7月29日 1:43 上午

                  既然可以./lemon 不就说明lemon文件存在吗。。。QAQ
                  你如果双击运行不了的话->右键lemon文件->属性->权限->允许作为程序执行文件,应该就能双击打开了。

                    juruo-oier · 2018年7月29日 8:16 上午

                    这个 lemon 没有图标

                    juruo-oier · 2018年8月3日 6:59 下午

                    不是没有权限。。。。
                    我双击,显示没有安装处理共享库文件

                    所以只可以./lemon

powerLEO101 · 2018年5月3日 9:20 下午

github 上也有

    XZYQvQ · 2018年5月3日 9:23 下午

    额。。。是的,也是别人搬过来的,但是好像版本比较老了。。。

    (MMP gravtar 又被墙了正在修复中。。。)

SysCon · 2018年3月7日 1:27 下午

XZYdalao 请问 archlinux 怎么安装 QT4? 我执行完 qmake lemon.pro 后执行 make 命令报错,

g++ -c -pipe -O2 -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -fno-plt -Wall -W -D_REENTRANT -fPIC -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -I. -isystem /usr/include/qt -isystem /usr/include/qt/QtGui -isystem /usr/include/qt/QtNetwork -isystem /usr/include/qt/QtCore -I. -isystem /usr/include/libdrm -I/usr/lib/qt/mkspecs/linux-g++ -o main.o main.cpp
main.cpp:19:10: 致命错误:QtGui/QApplication:没有那个文件或目录
#include <QtGui/QApplication>
^~~~~~~~~~~~~~~~~~~~
编译中断。
make: *** [Makefile:925:main.o] 错误 1

可以讲讲怎么解决吗?
orz

    SysCon · 2018年3月7日 1:43 下午

    刚发现好像 AUR 上有。。。https://aur.archlinux.org/packages/project-lemon/

      konnyakuxzy · 2018年3月7日 6:27 下午

      您这么强啊,装 ArchLinux 啊!
      劲啊您 Orz
      ArchLinux 没用过
      不过它和 Ubuntu 好多软件通用诶
      还是很好的,不过听说装起来全部要命令搞,我就懒得装了。
      顺带一提,Ubuntu 18.04 明天就出 Beta1 啦!可以下载啦!
      不过我还是打算继续用 Ubuntu 16.04,我把 Ubuntu 自带的 unity 卸了装了 Gnome3,好好看啊~哈哈哈

    SysCon · 2018年4月19日 4:20 下午

    问题解决了,刚才又编译了一下,qmake lemon.pro 改成 qmake-qt4 lemon.pro 然后再 make 就 OK 了。这样子可能兼容性要好一点吧。

发表回复

Avatar placeholder

您的电子邮箱地址不会被公开。 必填项已用 * 标注