笔者在overleaf上编译文章一切正常,但上传文章到arxiv时出现类似于如下报错:

一般情况下观察arxiv的编译log,不通过的原因,很多时候都是由于某一行导入了啥package,引起的报错;但是如果没有任何一个具体的报错,只是告诉你XXX.sty not found,那么很可能是编译器版本的问题。

如上述这个报错,主要是由于arxiv 的latex编译器版本过低,导致tabularray根本无法在内置环境中找到导致的。


截止到目前,arxiv使用的latex编译器版本为2020版,但是像overleaf默认使用的都是最2022新版的tex,这就会导致很多在overleaf上自己能够导入编译成功的package,在arxiv上却not found

具体参考overleaf 官方给出的checklist.

解决方案

这里给出两种解决方案:

1. 改用老版本的package

最直接的解决方案,自然就是把一些太新的package注释掉,重新上传

如果当前的pdf排版依赖于这些package,那么就得考虑用一些老版本的包代替了。

例如,如果你用了tabularray排版的表格,那么可以将其替换为tabular,可以实现接近的排版效果。

按照笔者的经验,一些新的package,肯定能够找到能够用作替代的老版本packages。

只不过这个操作往往非常耗费时间;而且由于向下兼容,那些新package一两行命令能够实现的功能,用一些老packages就会绕很大的圈子,非常麻烦!

优点:

  • 从源头解决问题

缺点:

  • 极度花费时间
  • 不能做到完全地平替很多新pakcages的功能

2. 下载源码

第二种方法更为省力:将那些太新的package的源码(.sty)下载。然后在项目里倒入本地的.sty文件

例如,去从CTAN下载tabularray.sty ,将文件放到项目目录下,然后再\usepackage{tabularray}



但是这种方法也是治标不治本,也并不是所有情况都能奏效。

而且很容易出现,你下载了A包,它依赖于B包;你下载了B包,它又依赖于C、D包。。。然后你可能还得理清楚这些package之间的版本关系。。。

但在某些情况下,比方说依赖的package很少,这还是一个非常有用的方法。

优点:

  • 快速、省力

缺点:

  • 治标不治本
  • 容易出现“连环依赖”,和版本冲突

一些建议

如果你有计划把项目上传arxiv的话,这里给出一些建议:

  1. 先去官网检查一下arxiv最新的tex编译器的版本是啥(可以去arxiv先尝试随便上传一个文件,看看编译的log)。

  2. 将自己的本地环境,或者overleaf编译器设置为和arxiv一致,以防后续发生不兼容的问题。

  3. 在上传arxiv之前,把项目里导入过的一些没用的package全部注释掉,以最大程度降低上传出错的可能性。

  4. 保持自己tex源码整洁。。至少能够分得清哪些packages是自己后面加的,哪些是conference template本来就自带的(不然就得像笔者一样,一个个试)。。。

参考

  • https://github.com/tectonic-typesetting/tectonic/issues/871
  • Adding .sty files into tex

2023/05/26更新

刚看到消息,arxiv的tex编译器版本更新至2023了。。。

这样的话,大家在overleaf等地方,编译文章的时候,注意把tex版本也切换到最新版本,以确保和arxiv的一致

但是很可惜,目前overleaf的编译器最新版本还是2022版本,所以和arxiv也并不是完全一致的。。笔者就曾遇到2022、2023两个版本编译出来的pdf出现差异。

好消息是overleaf的tex版本更新速度很快,不出几个月应该就能等到2023版本了(如下图,参考2022版本的发布速度)。

sb arxiv,学学人家overleaf吧!

【报错】arXiv上传文章出现XXX.sty not found相关推荐

  1. layui上传文件php上传接口异常,layui.upload上传图片报错“请求上传接口出现异常”...

    layui.upload上传图片报错"请求上传接口出现异常"且接口报404问题 在调试layui.upload上传图片时候报错"请求上传接口出现异常": 且接口 ...

  2. 【错误记录】Google Play 上架报错 ( 您上传的 APK 没有经过 Zipalign 处理,请对 APK 运行 Zipalign 工具,然后重新上传。)

    文章目录 一.报错信息 二.解决方案 一.报错信息 使用百度加固后的 APK , 签名后 , 上传 , 报如下错误 ; 您上传的 APK 没有经过 Zipalign 处理,请对 APK 运行 Zipa ...

  3. docker公共仓库:创建docker hub公共仓库 / 登陆docker hub仓库报错解决/ 上传拉取镜像 / 配置阿里云镜像加速器

    ######1.创建docker公共仓库###### Docker仓库是用来包含镜像的位置,Docker提供一个注册服务器(Register)来保存多个仓库, 每个仓库又可以包含多个具备不同tag的镜 ...

  4. oss上传报错_oss上传400报错-问答-阿里云开发者社区-阿里云

    leehor 2018-07-27 16:20:48 Reoss上传400报错 回调部分代码 格式有问题吗 put.setCallbackParam(new HashMap() { { Log.e(& ...

  5. mysql 1033_mysql报错1033 Incorrect information in file: ''''xxx.frm''''问题的解决方法(图)...

    这篇文章主要介绍了关于mysql报错1033 Incorrect information in file: 'xxx.frm'问题的解决方法,文中通过示例代码介绍的很详细,需要的朋友可以参考借鉴,下面 ...

  6. 最新清华大学arXiv上传的深度学习摄像头运动估计论文

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 作者:黄浴 https://zhuanlan.zhihu.com/p/138926038 本文仅做学术 ...

  7. the android emulator process,Android studio报错:The emulator process for AVD (xxx) was killed

    背景:重做系统后重新配置Android studio 安装虚拟机后无法启动 log中显示为启动AVD的进程被杀 控制台显示为:在虚拟机列表里没有找到所要启动的AVD的名称 首先考虑是BIOS问题:发现 ...

  8. vscode git报错 git warning: redirecting to https://xxx.xxx.xxxx/xxx/xxx.git/

    背景:最近从websotrm转到vscode 刚开始两周开发没有问题,后面有两个常用的项目push到远程库或者拉去远程库的更新都会报错: vscode git报错 git warning: redir ...

  9. 导入自己模块包导入报错:ModuleNotFoundError: No module named ‘xxx‘解决方法 晓物智联

    导入自己模块包导入报错:ModuleNotFoundError: No module named 'xxx'解决方法 文章来源于:http://www.52phm.cn/blog/detail/28 ...

最新文章

  1. python读取文件r_python read文件的r和rb的区别
  2. pyinstaller生成exe文件失败
  3. 姜黄的毒副作用调研汇总(调研手稿一)
  4. 在javaweb中通过servlet类和普通类读取资源文件
  5. MySql表结构修改详解
  6. 老年人用什么方式存款最好?
  7. Liunx安装 jemalloc == 内存管理工具
  8. Atitit cache缓存之道 attilax 艾提拉总结 1. 使用缓存的目的(使用缓存) 1 1.1. 1、实现目标减少数据库的负担 1 1.2. 加快查询的速度 2 2. 缓存的常见参数 过
  9. JAVA课程设计-电影院售票系统
  10. JAVA事务@Transactional之propagation
  11. QQ登录和分享(精简版)
  12. 定罪了!“女版乔布斯”有可能入狱20年
  13. spring配置事务
  14. HtmlHelper用法大全(下)
  15. docker attach 和 exec 的区别
  16. SQL注入:SQL注入类型(手动)SQL注入的检测
  17. 《高质量程序设计指南——C++/C》第三版勘误
  18. 微信小程序滚动居中导航选项卡
  19. 数字地球与计算机技术联系,关于数字地球应用前景的正确说法是
  20. css如何透过上层div点击下层的元素解决方法

热门文章

  1. 十五分钟水edusrc证书(小学生日记)
  2. 如何用Java设计一个简单的窗口界面(初级二)
  3. 小说形象特征包括哪些方面_小说的基本特征是塑造人物形象
  4. JavaC++题解与拓展——leetcode1823.找出游戏的获胜者【约瑟夫环】
  5. 项目案例:网上书店数据库设计
  6. Nginx编译安装与配置
  7. java工具:通过文件头的魔数判断文件类型
  8. 静态工厂方法优缺点个人理解
  9. 洲际酒店集团大中华区特许经营酒店已开业150家;百胜中国食物银行项目已覆盖超100家肯德基 | 美通社头条...
  10. 【测试面经】软件测试面试题大全,软件测试必问必背面试题,敢说会70%就可以轻松拿offer......